本文共 1518 字,大约阅读时间需要 5 分钟。
几道作业,给学生看一下,要考试了,要读懂代码,不要硬抄袭!
作业:
1. 编写完整的程序打印输出所有”水仙花数”,”水仙花数”即一个三位数, 其各位立方和等于其本身的数。 2.编写完整的程序:从键盘上输入全班同学的30个成绩,要求存放在数组的a[1]-a[30]中,请编程实现对此30个成绩实现由大到小的排序。 3.编写完整的程序:计算并显示全班同学某门课程考试成绩的平均分、最高分和最低分(设全班30个同学的成绩存放在数组s[0]-s[29]中)。请对计算平均分、最高分和最低分各自定义一个函数,用数组名作为函数的参数,用函数调用的方式进行编程。第一题,代码如下:
/* 编写完整的程序打印输出所有"水仙花数","水仙花数"即一个三位数,其各位立方和等于其本身的数。*/#includevoid main(){ int i,j,k,n; for(n=100; n<=999; n++) { i=n/100; // 百位 j=n%100/10; // 十位 k=n%10; // 个位 if(n == i*i*i + j*j*j + k*k*k) { printf("%d ",n); } } printf("\n");}
结果如下:
第二题,代码如下:
以五个人的成绩为例。/* 编写完整的程序:从键盘上输入全班同学的30个成绩,要求存放在数组的a[1]-a[30]中,请编程实现对此30个成绩实现由大到小的排序。 */#include#define N 5void main(){ int i,j; int t; // 中间变量 int score[N]={ 0}; // 加入成绩都是整数 printf("请输入%d位成绩:",N); for(i=0; i score[j+1]) { t=score[j]; score[j]=score[j+1]; score[j+1]=t; } } } for(i=0; i
结果如下:
第三题,代码如下:
/*编写完整的程序:计算并显示全班同学某门课程考试成绩的平均分、最高分和最低分(设全班30个同学的成绩存放在数组s[0]-s[29]中)。请对计算平均分、最高分和最低分各自定义一个函数,用数组名作为函数的参数,用函数调用的方式进行编程。*/#include#define N 5void main(){ float avg(int a[]); int max(int a[]); int min(int a[]); int Max,Min,i; float Avg; int score[N]={ 0}; // 假使分数都为整数 printf("请输入%d个成绩值:",N); for(i=0; i a[i]) { Min=a[i]; } } return Min;}
结果,如下:
同学们,可以参考,完全可以自己完成这样简单的代码。