第八次作业
Posted 燕超
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第八次作业相关的知识,希望对你有一定的参考价值。
1.输入若干名学生的成绩(输入人数或用负数结束均可),求其平均分,最高分和最低分,并指出最高分和最低分的学生(给出下标即可),输入一个成绩,说明是第几个学生的成绩。
#include <stdio.h> int main() { int i,score[i],n,max,min,sum=0,insearch,grade; double average; printf("请输入要统计的学生人数:\\n"); scanf("%d",&n); //平均值 for(i=0;i<n;i++) { printf("请输入学生成绩:\\n"); scanf("%d",&score[i]); sum+=score[i]; } average=(double)sum/n; printf("平均值为%.2lf\\n",average); //最大值 insearch=0; max=score[0]; for(i=1;i<n;i++) { if(score[i]>max) { max=score[i]; insearch=i; } } printf("最高分为%d,该学生为第%d号\\n",max,++insearch); //最小值 insearch=0; min=score[0]; for(i=1;i<n;i++) { if(score[i]<min) { min=score[i]; insearch=i; } } printf("最低分为%d,该学生为第%d号\\n",min,++insearch); //寻找 printf("输入你要找的分数:\\n"); scanf("%d",&grade); for(i=0;i<n;i++) { if(grade==score[i]) { insearch=i+1; } } printf("该学生的学号为%d",insearch); return 0; }
2.现有一个有序正整数数组(从小到大排序),输入一个数,插入到数组中,要求插入后的数组仍然有序。对插入到最前、最后、中间位置三种情况进行验证。
#include <stdio.h> #define N 11 int main() { int num[N]={1,12,23,34,45,56,67,78,89,90},x,i,m; printf("请输入一个数:\\n"); scanf("%d",&x); for(i=0;i<=9;i++) { if(num[i]>x) { for(m=10;m>i;m--) { num[m]=num[m-1]; } break; } } num[i]=x; for(i=0;i<N;i++) { printf("%d ",num[i]); } return 0; }
3.用数组实现火柴棍等式
#include <stdio.h> int main() { int i1,i2,i3,n=0; int match[10]={6,2,5,5,4,5,6,3,7,6}; for(i1=0;i1<=9;i1++) { for(i2=0;i2<=9;i2++) { for(i3=0;i3<=9;i3++) { if(i1+i2==i3&&match[i1]+match[i2]+match[i3]==12) { printf("%d+%d=%d\\n",i1,i2,i3); n++; } } } } printf("一共有%d个",n); return 0; }
附加题: 输入一行任意长的数字,用数组元素作为计数器统计每个数字出现的次数。用下标为0的元素统计0出现的次数,用下标为1的元素统计1出现的次数…
#include <stdio.h> int main() { int num[10]={0,0,0,0,0,0,0,0,0,0},i=0; char x; printf("输入一串数字:\\n"); scanf("%c",&x); while(x!=\'\\n\') { i=x-48; num[i]++; scanf("%c",&x); } for(i=0;i<10;i++) { printf("数字 %d 出现了%d次\\n",i,num[i]); } return 0; }
知识点总结:
1:数组下标从0开始,到下标减一结束。
2.数组离不开循环,让数组里的元素全部输出必须借助循环。
3:数组引用一次,只能引用数组中的一个数据。
4:一个数组中的数据类型一致。
5:数组必须先定义。若未声明则初始值为随机数或者零(视编译器而定)。
实验总结:
1:自定义变量的拼写。。。
2:只给部分数组的数据赋值时,格式为 sum【n】={1,2,3,4,5,6,7.......},特别是等号,不能丢。
3:循环限制条件的不同,可能会影响整个程序的结构,进而影响程序的简洁性。有可能会让它简单,也可能会麻烦。
4、#define语句后面不能加 ;
以上是关于第八次作业的主要内容,如果未能解决你的问题,请参考以下文章