第九次作业
1.定义一个含有8个储存单位的实型数组,从键盘上接收数据,然后逆序输出。 #includemain(){ int a[8]; int i; for(i=0;i<=7;i++) scanf("%d",&a[i]); for(i=7;i>=0;i--) printf("%d",a[i]); }
2.使用一维数组,从键盘上接收6个数,找出最大的呢个元素并记录下标。
#includemain(){ int a[6],i,j,max; printf("输入6个数值\n"); for(i=0;i<=5;i++) scanf("%d",&a[i]); max=a[0]; j=0; for(i=1;i<=5;i++) if(a[i]>max){ max=a[i]; j=i; } printf("最大数值为%d下标为%d\n",max,j); }
3.求Fibonacci数列的 前十项和。
#includemain(){ int a[10],i,j; a[0]=1; a[1]=1; j=a[0]+a[1]; for(i=2;i<10;i++){ a[i]=a[i-2]+a[i-1]; j+=a[i]; } printf("前十项的和为:%d\n",j); }
4.编写程序,定义一个二维数组,从接盘上接收变量,并以矩阵的形式输出。
#includemain(){ int a[3][4]; int i,j; for(i=0;i<3;i++){ for(j=0;j<4;j++) scanf("%d",&a[i][j]); } for(i=0;i<3;i++){ for(j=0;j<4;j++) printf("%4d",a[i][j]); printf("\n"); } }
5.已知有以下语句,编写程序,求二维数组m对角线元素之和。
Int m[5][5]={{1,2,3,4,5}, {6,7,8,9,10}, {11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25}}; #includemain(){ int i,j,sum=0; int m[5][5]={{1,2,3,4,5}, {6,7,8,9,10}, {11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25}}; for(i=0;i<5;i++) for(j=0;j<5;j++) if(i==j||i+j==4) sum+=m[i][j]; printf("sum=%d\n",sum); }
6.编写程序,通过一维数组接收5门课程的成绩,并输出平均分。
#includemain(){ float a[5],sum=0.0; int i; printf("输入五门课的成绩:\n"); for(i=0;i<=4;i++){ scanf("%f",&a[i]); sum+=a[i]; } sum/=5.0; printf("平均分%.2f\n",sum); }
7.编写程序,实现一维数组中前、后元素的对调。
#includemain(){ int a[5]; int i; printf("输入原有数据:\n"); for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=4;i>=0;i--) printf("%3d",a[i]); }