c练习-c基础
#include int main(){ //打印数组中的最大值 int arr[10]; int max,i; for (i = 0; i < 10; i++) { scanf_s(\"%d\", &arr[i]); } max = arr[0]; for (i = 0; i < 10; i++) { if(max < arr[i + 1]) { max = arr[i + 1]; } } printf(\"数组中最大值:%d\\n\", max); return 0;}
#include int main(){ //交换数组中的数据逆数组 int arr[10]; int i, t; int n = sizeof(arr) / sizeof(int); printf(\"请输入10个数据\\n\"); for (i = 0; i < n; i++) { scanf_s(\"%d\", &arr[i]); } for (i = 0; i < n / 2; i++) { t = arr[i]; arr[i] = arr[n - 1 - i]; arr[n - 1 - i] = t; } for (i = 0; i < n; i++) { printf(\"%d\", arr[i]); } return 0;}
#include int main(){ //数组中的数据排大小 int arr[10]; int i, t, j ; t = 0; int n = sizeof(arr) / sizeof(int); printf(\"请输入10个数据\\n\"); for (i = 0; i < n; i++) { scanf_s(\"%d\", &arr[i]); } for (i = 0; i < n-1; i++) { for (j = 0; j arr[j+1]) { t = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = t; } } } for (i = 0; i < n; i++) { printf(\"%d\", arr[i]); } return 0;}
#include #includeint main(){ //打印数组中的最大值 int arr[3][3] = { {3,6,29},{2,6,1},{3,22,44} }; int i, j; int max = arr[0][0]; int line, column; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { if (max<arr[i][j]) { max = arr[i][j]; line = i; column = j; } printf(\"%2d \", arr[i][j]); } } printf(\"max= %d %d %d\\n\", max, line, column); return 0;}
#include #includeint main(){ //指针的数组逆运算 int a[] = {1,5,8,10,20,30}; int i, n; int* p, * q; int t; n = sizeof(a) / sizeof(int); p = a; q = &a[n - 1]; for (i = 0; i < n / 2; i++) { t = *p; *p = *q; *q = t; p++; q--; } for (i = 0; i < n; i++) { printf(\"%d \", a[i]); } printf(\"\\n\"); return 0;}
#include #includeint main(){ //利用指针访问地址和元素 int a[3][4] = { {1,2,3,4},{4,5,6,7},{6,7,8,9} }; int i, j; int n = sizeof(a) / sizeof(a[0]);//计算行数 int m = sizeof(a[0]) / sizeof(int);//每行的元素个数 int* p; for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { printf(\"%p\", &a[i][j]);//地址 } printf(\"\\n\"); } p = a; for (i = 0; i < n * m; i++) { printf(\"%d\\n\", *(p + i)); } return 0;}
#include #includeint main(){ //利用指针访问地址和元素 int a[3][4] = { {1,2,3,4},{4,5,6,7},{6,7,8,9} }; int (*p)[4] = a; int i, j; printf(\"%p %p\\n\", a, a + 1); printf(\"%p %p\\n\", a[0], a[0 + 1]); int n = sizeof(a) / sizeof(a[0]);//计算行数 int m = sizeof(a[0]) / sizeof(int);//每行的元素个数 for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { printf(\"%d %d %d\",p[i][j],*(p[i]+j),*(*(p+i)+j)); } printf(\"\\n\");} return 0;}