- 博客(39)
- 收藏
- 关注
原创 计算100000以内的自幂数
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <math.h>int main(){ int i = 0; for (i = 0; i <= 100000; i++) { //判断i是否为自幂数 //计算i的位数 int n = 1; int tmp = i; int sum = 0; while (tmp /= 10) { n++; } //计算i.
2022-04-08 19:45:14
312
原创 输出n+nn+···+nnnnn的结果
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a = 0; int n = 0; scanf("%d%d", &a, &n); int sum = 0; int i = 0; int ret = 0; for (i = 0; i < n; i++) { ret = ret * 10 + a; sum += ret; } printf("%d\n", su.
2022-04-07 20:38:06
556
原创 指针笔试题(8)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ const char* c[] = { "ENTER","NEW","POINT","FIRST" }; const char** cp[] = { c + 3,c + 2,c + 1 }; const char*** cpp = cp; printf("%s\n", **++cpp); printf("%s\n", *-- * ++cpp + 3); .
2022-04-06 12:19:19
334
原创 指针笔试题(7)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ const char* a[] = { "work","at","alibaba" }; const char** pa = a; pa++; printf("%s", *pa); return 0;}
2022-04-05 18:35:26
298
原创 指针笔试题(6)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int aa[2][5] = { 1,2,3,4,5,6,7,8,9,10 }; int* ptr1 = (int*)(&aa + 1); int* ptr2 = (int*)(*(aa + 1)); printf("%d,%d", *(ptr1 - 1), *(ptr2 - 1)); return 0;}
2022-04-04 17:16:13
394
原创 指针笔试题(5)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a[5][5]; int(*p)[4]; p = (int(*)[4])a; printf("%p,%d\n", &p[4][2] - &a[4][2], &p[4][2] - &a[4][2]); return 0;}
2022-04-01 21:26:28
90
原创 反转字符串
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string>void reverse(char* str){ int len = strlen(str); char* left = str; char* rigth = str + len - 1; while (left < rigth) { char tmp = *left; *left = *rigth; *rigth.
2022-03-31 18:48:04
259
原创 指针笔试题(4)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a[3][2] = { (0,1),(2,3),(4,5) }; int* p; p = a[0]; printf("%d", p[0]); return 0;}
2022-03-30 19:02:15
285
原创 指针笔试题(3)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a[4] = { 1,2,3,4 }; int* ptr1 = (int*)(&a + 1); int* ptr2 = (int*)((int)a + 1); printf("%x,%x", ptr1[-1], *ptr2); return 0;}
2022-03-29 18:10:47
278
原创 指针笔试题(2)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>struct Test{ int Num; char* PcName; short SData; char Cha[2]; short SBa[4];}*p;int main(){ p = (struct Test*)0x100000; printf("%p\n", p + 0x1); printf("%p\n", (unsigned long)p + 0x1);.
2022-03-27 19:28:23
292
原创 指针笔试题(1)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a[5] = { 1,2,3,4,5 }; int* ptr = (int*)(&a + 1); printf("%d,%d", *(a + 1), *(ptr - 1)); return 0;}
2022-03-25 19:07:57
285
原创 sizeof计算二维数组的大小
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string>int main(){ int a[3][4] = { 0 }; printf("%d\n", sizeof(a)); //48 printf("%d\n", sizeof(a[0][0])); //4 printf("%d\n", sizeof(a[0])); /*a[0]相当于第一行作为一维数组的数组名, sizeof(arr[.
2022-03-24 19:48:32
2415
原创 sizeof计算一维字符数组的大小
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ //字符数组 char arr[] = { 'a','b','c','d','e','f' }; printf("%d\n", sizeof(arr)); //sizeof计算的是数组的大小,6字节 printf("%d\n", sizeof(arr + 0)); //arr是首元素的地址,arr+0还是首元素的地址,4/8 printf("%d\n", .
2022-03-21 10:02:49
771
原创 sizeof计算一维数组的大小
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ //数组名是首元素的地址 //1.sizeof(数组名)-数组名表示整个数组 //2.&数组名-数组名表示整个数组 int a[] = { 1,2,3,4 }; printf("%d\n", sizeof(a)); //sizeof(数组名)-计算的数组的总大小,16 printf("%d\n", sizeof(a + 0)); //数组名表示.
2022-03-20 12:59:53
919
原创 连接两个字符串
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void _strcat(char str1[], char str2[],char str3[]){ int i, j; for (i = 0; str1[i] != '\0'; i++) { str3[i] = str1[i]; } for (j = 0; str2[j] != '\0'; j++) { str3[i + j] = str2[j]; } str3.
2022-03-19 13:05:00
888
原创 实现qosrt函数
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void Swap(char* buf1, char* buf2, int width){ int i = 0; for (i = 0; i < width; i++) { char tmp = *buf1; *buf1 = *buf2; *buf2 = tmp; buf1++; buf2++; }}void bubble_sort(void* ba.
2022-03-18 10:27:40
121
原创 使用qosrt函数对结构体-名字进行排序
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <string.h>struct Stu{ char name[20]; int age;};int cmp_stu_by_name(const void* e1, const void* e2){ return strcmp(((struct Stu*)e1)->name, ((str.
2022-03-17 12:08:24
376
原创 使用qosrt函数对结构体-年龄进行排序
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>struct Stu{ char name[20]; int age;};int cmp_stu_by_age(const void* e1, const void* e2){ return ((struct Stu*)e1)->age - ((struct Stu*)e2)->age;}void test.
2022-03-16 19:18:34
593
原创 使用qsort函数对浮点型数据进行排序
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int cmp_float(const void* e1, const void* e2){ if (*(float*)e1 == *(float*)e2) { return 0; } else if (*(float*)e1 > *(float*)e2) { return 1; } else { ret.
2022-03-15 17:47:47
1951
1
原创 使用qosrt函数对整形数据进行排序
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int cmp_int(const void* e1, const void* e2){ //比较两个整形的值 return *(int*)e1 - *(int*)e2;}void test(){ int arr[10] = { 9,8,7,6,5,4,3,2,1,0 }; int sz = sizeof(arr) / s.
2022-03-14 20:12:03
345
原创 输出反转字符串
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i; char arr[12] = { "hello world" }; char arr2[12] = { 0 }; int size; size = sizeof(arr); for (i = 0; i < 11; i++) { arr2[size - i - 2] = arr[i]; } printf("输出源字符串:%.
2022-02-21 16:47:27
481
原创 输出电脑的时间和日期
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <time.h>int main(){ int num; struct tm* sysTime; printf("########################\n"); printf("### 1. 显示系统日期 ####\n"); printf("### 2. 显示系统时间 ####\n"); printf("### 3. 退出系统 .
2022-02-21 16:46:27
1044
原创 排序(使用折半法对数组元素从大到小排序)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>void CelerityRun(int left, int right, int array[]){ int i, j; int middle, iTemp; i = left; j = right; middle = array[(left + right) / 2]; do { while ((array[i] < middle) && (i.
2022-02-11 18:16:03
413
1
原创 排序(使用选择法对数组元素从小到大排序)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i, j; int a[10]; int iTemp; int iPos; printf("为数组元素赋值:\n"); for (i = 0; i < 10; i++) { printf("a[%d]=", i); scanf("%d", &a[i]); } //使用选择法对数组元素从小到大排序 for (i .
2022-02-11 18:15:09
2560
原创 排序(使用冒泡法对数组元素从大到小排序)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i, j; int a[10]; int iTemp; printf("为数组元素赋值:\n"); for (i = 0; i < 10; i++) { printf("a[%d]=", i); scanf("%d", &a[i]); } //采用冒泡排序法为数组元素从大到小排序 for (i = 1; i &l.
2022-02-11 18:14:20
3584
原创 排序(使用交换法对数组元素从大到小排序)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i, j; int a[10]; int iTemp; printf("为数组元素赋值:\n"); for (i = 0; i < 10; i++) { printf("a[%d]=", i); scanf("%d", &a[i]); } //采用交换法为数组元素从大到小排序 for (i = 0; i <.
2022-02-11 18:13:30
570
原创 排序(使用插入法对数组元素从小到大排序)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i, j; int a[10]; int iTemp; int iPos; printf("为数组元素赋值:\n"); for (i = 0; i < 10; i++) { printf("a[%d]=", i); scanf("%d", &a[i]); } //采用插入法为数组元素从大到小排序 for (i .
2022-02-11 18:12:45
1815
原创 使用折半查找算法/二分查找算法找出某个数的下标
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int arr[] = { 1,2,3,4,5,6,7,8,9,10 }; int k = 6;//k是数组元素 int sz = sizeof(arr) / sizeof(arr[0]);//数组元素个数 int left = 0;//左下标 int right = sz - 1;//右下标 while (left <= right) { .
2022-01-19 17:57:23
475
原创 使用辗转相除法求两个数的最大公约数
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int m, n, r; scanf("%d%d", &m, &n); while (m % n) { r = m % n; m = n; n = r; } printf("%d\n", n); return 0;}
2022-01-19 17:54:26
4655
原创 打印任意数的乘法表
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>void table(n){ int i, j; for (i = 1; i <= n; i++) { for (j = 1; j <= i; j++) { printf("%d*%d=%-3d", i, j, i * j); } printf("\n"); }}int main(){ int n = 0; scanf("%d", .
2022-01-19 17:52:23
305
原创 使用递归求一个数的乘阶
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int fac(int n){ if (n <= 1) return 1; else return n * fac(n - 1);}int main(){ int n = 0; int ret = 0; scanf("%d", &n); ret = fac(n); printf("%d\n", ret); return 0;}
2022-01-19 17:50:01
331
原创 求斐波那契数
①利用函数递归求斐波那契数#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int fib(int n){ if (n <= 2) return 1; else return fib(n - 1) + fib(n - 2);}int main(){ int n = 0; int ret = 0; scanf("%d", &n); ret = fib(n); printf("%d\n", re
2022-01-19 17:44:41
277
原创 模拟实现strcpy函数
①方法一#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void my_strcpy(char* a, char* b){ while (*b!='\0') { *a = *b; b++; a++; } *a = *b;}int main(){ char arr1[] = "*********"; char arr2[] = "bit"; my_strcpy(arr1, arr2); printf
2022-01-18 18:29:13
81
原创 关机代码①②
关机代码while循环#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string.h>int main(){ char input[20] = { 0 }; system("shutdown -s -t 60"); while(1) { printf("你的电脑将在一分钟内关机,输入“取消”取消关机\n请输入:"); scanf("%s", input); if (strcmp(
2021-11-19 12:53:48
792
原创 打印9*9乘法表
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){ int i = 0; for (i = 1; i<= 9; i++) { int j = 1; for(j=1;j<=i;j++) { printf(" %d*%d=%-2d", i, j, i * j); } printf("\n"); } return 0;}
2021-11-19 12:48:11
329
原创 冒泡排序法
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void sort(int arr[], int sz){ int i = 0; for (i = 0; i < sz - 1; i++) { int flag = 1;//假设此趟排序的数据已经有序 //确定冒泡排序的趟数 int j = 0; for (j = 0; j < sz - 1 - i; j++) { //每一趟冒泡排序 if.
2021-11-19 12:44:21
591
原创 扫雷小游戏
game.h#define ROW 9#define COL 9#define ROWS ROW+2#define COLS COL+2#include <stdio.h>#include <stdlib.h>#include <time.h>#define EASY_COUNT 10void InitBoard(char board[ROWS][COLS], int rows, int cols, char set);void Displ
2021-11-17 12:38:02
68
原创 三子棋游戏
text.c#define _CRT_SECURE_NO_WARNINGS#include "game.h"void menu(){ printf("=============================\n"); printf(" 1.play 0.exit \n"); printf("=============================\n");}void game(){ char ret = 0; //数组-存放走出的数组信息 c
2021-11-12 19:13:07
65
原创 猜数字游戏
猜数字游戏#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <time.h>//菜单函数void menu(){ printf("=============================\n"); printf(" 1.play 0.exit \n"); printf("======================
2021-11-10 17:50:42
3126
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅