第九次作业
1.定义一个含有8个存储单元的实型数组,从键盘上接收,然后逆序输出. #include<stdio.h> main(){ double a[8]; int i,j; for(i=0;i<=7;i++){ scanf("%lf",&a[i]); } for(j=7;j>=0;j--){ printf("%lf\n",a[j]); } }
2.使用一维数组,从键盘上接收6个数,找出最大的那个元素并记录下来它们的下标. #include<stdio.h> main(){ int a[6],i,max,min,xbiao=0,nbiao=0; for(i=0;i<=5;i++){ scanf("%d",&a[i]); } i=0; max=a[0]; min=a[0]; for(i=0;i<=5;i++){ if(max<a[i]){ max=a[i]; xbiao=i+1; } if(min>a[i]){ min=a[i]; nbiao=i+1; } } printf("最大值%d,下标%d,最小值%d,下标%d",max,xbiao,min,nbiao); }
3.求Fibonacci数列的前10项的和 #include<stdio.h> main(){ int a[10]; int i,sum; a[0]=1; a[1]=1; sum=a[0]+a[1]; for(i=2;i<10;i++){ a[i]=a[i-1]+a[i-2]; sum=sum+a[i]; } printf("%d",sum); }
4.编写程序,定义一个二维数组,从键盘上接受变量,并以矩阵的形式输出 #include<stdio.h> main(){ int a[2][2]; int i,j; for(i=0;i<2;i++){ for(j=0;j<2;j++){ scanf("%d",&a[i][j]); } } for(i=0;i<2;i++){ for(j=0;j<2;j++){ printf("%3d",a[i][j]); } printf("\n"); } }
5.编写程序,求二维数组m对角线元素之和 #include<stdio.h> main(){ int a[5][5]; int i,j,sum=0; for(i=0;i<5;i++){ for(j=0;j<5;j++){ scanf("%d",&a[i][j]); } } for(i=0;i<5;i++){ for(j=0;j<5;j++){ if(i==j||i+j==4){ sum+=a[i][j]; } } } printf("%d",sum); }
6. 编写程序,通过一维数组接收5门课程的成绩,并输出平均分数 #include<stdio.h> main(){ int a[5]; int i,sum; sum=0; for(i=0;i<5;i++){ scanf("%d",&a[i]); } for(i=0;i<5;i++){ sum+=a[i]; } printf("平均数是%d",sum/5); }
7.编写程序,实现一维数组前,后元素的对调 #include<stdio.h> main(){ int a[5]; int i,j,x; for(i=0;i<5;i++){ scanf("%d",&a[i]); } for(i=0;i<5;i++){ printf("%d",a[i]); } printf("\n"); for(i=0,j=4;i<2,j>2;i++,j--){ x=a[i]; a[i]=a[j]; a[j]=x; } for(i=0;i<5;i++){ printf("%d",a[i]); } printf("\n"); }