part1~pat4的实验结论:
首先通过这次实验我了解了数组的用法,也发现运用数组的便捷之处,会使表达更加简洁明了,后面使在这过程中我觉得需要注意的点:
1) 当对所有数组元素初始化的时候,可以省略数组大小不写;
2)当数组只初始化了一部分元素的时候,剩余没有被初始化的元素会被系统自动设为0;
3) 数组的下标从0开始,而不是1;
4)特别注意在数组名作为参数时,实参与形参的区别:
作为形参时(即在函数定义与函数声明中):数组名后面要加【】,e.g. int(int a[] ,int n)
作为实参时(即在函数调用中):直接写数组名就行,e.g. int(b, N, -1)
5)当要对一组数排序时,运用冒泡法;
对于冒泡法:是对n个数进行排序,第一次对n个数进行扫描,比较n-1次并交换,然后最大的数排在第n个数,第二次对n-1个数进行扫描,比较n-2次并交换,其中最大的数排在第n-1个数那里,以此类推,成为冒泡法。边界条件则是按需得到的,初始值也是按需定义的,如这次编程练习中则要把最大的数放在第一位,所以比较时要从右往左推,把最大的数放在前面,这个东西需要练习与思考吧。
part 5 编程练习:
(1)
#includeint findMax(int a[], int n); const int N=5;int main() { int a[N]; int max, i; printf("输入%d个整数: \n", N); for(i=0;i<5;i++) scanf("%d",&a[i]); max=findMax(a,4) ; printf("数组a中最大元素值为: %d\n\n", max); return 0; } int findMax(int a[],int n){ int i,t; for(i=1;i
(2)
#includeconst int N=4;void output(char x[], int n);void bubblesort(char x[],int n); int main() { char string[N] = { '2','0','1','9'}; int i; printf("排序前: \n"); output(string, N); bubblesort(string,N); printf("\n排序后: \n"); output(string, N); printf("\n"); return 0; } void bubblesort(char x[], int n) { int i,j,t; for(i=0;i =0;j--){ if(x[j+1]>x[j]){ t=x[j]; x[j]=x[j+1]; x[j+1]=t; } } } } void output(char x[],int n){ int i; for(i=0;i
https://www.cnblogs.com/sfyq/p/10771283.html
https://www.cnblogs.com/rainbowhorse/p/10771596.html
https://www.cnblogs.com/QYAS/p/10770909.html