part1
字符型
运行结果如下
double型
截图如下
part2
当对所有数组元素初始化的时候,才可以省略不写数组大小。
part5
补全
1
#include<stdio.h> int 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<N;i++){ scanf("%d",&a[i]);} max=findMax(a,N); printf("数组中最大元素值为:%d",max); return 0; } int findMax(int a[],int n){ int i,j,t,max; for(i=0;i<n-1;i++){ for(j=0;j<n-i-1;j++){ if(a[j]>a[j+1]){ t=a[j+1]; a[j+1]=a[j]; a[j]=t; } } }max=a[n-1]; return max;
}
2
#include<stdio.h> const int N=4; void output(char x[],int n); char ranking(char x[],int n); int main(){ char string[N]={‘2‘,‘0‘,‘1‘,‘9‘}; int i; printf("排序前:\n"); output(string,N); ranking(string,N); printf("\n"); printf("排序后:\n"); output(string,N); printf("\n"); return 0; } void output(char x[],int n){ int i; for(i=0;i<N;i++) printf("%c",x[i]);} char ranking(char x[],int n){ int i,j,t; for(i=0;i<n-1;i++){ for(j=0;j<n-i-1;j++){ if(x[j+1]>x[j]){ t=x[j+1]; x[j+1]=x[j]; x[j]=t; } } } }
截图如下
总结
对于实验5补全的第一题,因为max对于findmax自定义的函数为内部变量,和主函数中的max不是同一个变量,所以不能直接把findmax中的max带入到主函数的printf输入最大值的max。我之前一直没注意这点所以我的最大值是错误的。
评论链接
http://www.cnblogs.com/sj0904/
http://www.cnblogs.com/431-w-34-m-q
https://www.cnblogs.com/03-summer-30/
原文:https://www.cnblogs.com/couldi/p/10771086.html