第八次作业
1定义一个含有八个储存单元的实验数组,从键盘上接收数,然后输出。
#include <stdio.h>
main()
{
int i;
double a[8];
for(i=0;i<=7;i++)
{
scanf("%lf",&a[8]);
for(i=7;i>=0;i--)
printf("%f",a[i]);
}
}

2.使用一维数组,从键盘上接收6个数,找出最大的那个元素并记录下他的下标。
#include <stdio.h>
main()
{
double a[6],max;
int i,flag;
printf("输入6个数:\n");
for(i=0;i<=5;i++)
{
scanf("%lf",&a[i]);
max=a[0];
flag=0;
for(i=1;i<=5;i++)
if(a[i]>max){
max=a[i];
flag=i;
}
}
printf("最大数值%f的下标为%d\n",max,flag);
}

3.求fibonacci数列的前10项
#include <stdio.h>
main()
{
int a[10]={1,1};
int i,sum;
sum=a[0]+a[1];
for(i=2;i<=9;i++)
{
a[i]=a[i-1]+a[i-2];
sum+=a[i];
}
printf("sum=%d\n",sum);
}

4.编写程序,定义一个二维数组,从键盘上接收变量,并以矩阵的形式输出。
#include <stdio.h>
main()
{
int a[3][4];
int i,j;
printf("输入12个整数:\n");
for(i=0;i<=2;i++)
{
for(j=0;j<=3;j++)
scanf("%d",&a[i][j]);
}
for(i=0;i<=2;i++)
{
for(j=0;j<=3;j++)
printf("%4d",a[i][j]);
printf("\n");
}
}

5.已知有以下语句,编写程序,求二维数组m对角线元素之和。
#include <stdio.h>
main()
{
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<=4;i++)
{
for(j=0;j<=4;j++)
if(i==j||i+j==4)
{
sum+=m[i][j];
}
}
printf("sum=%d\n",sum);
}

6.编写程序,通过一维数组接收5门课程的成绩,并输出平均分数。
#include<stdio.h>
main()
{
float score[5],ave=0;
int i;
printf("输入5门课程的成绩:\n");
for(i=0;i<=4;i++)
{
scanf("%f",&score[i]);
ave+=score[i];
}
ave/=5;
printf("Average:%.2f\n",ave);
}

7.编写程序,实现一维数组中前、后元素的对调。
#include<stdio.h>
main()
{
int m[7]={55,74,78,53,85,34,56};
int i,j,t;
printf("原有数据:\n");
for(i=0;i<=6;i++)
printf("%3d",m[i]);
printf("\n");
for(i=0,j=6;i<=j;i++,j--)
{
t=m[i];m[i]=m[j];m[j]=t;
}
printf("调换后顺序:\n");
for(i=0;i<=6;i++)
printf("%3d",m[i]);
printf("\n");
}

浙公网安备 33010602011771号