第十次作业

1.定义一个含有8个存储单元的实型数组,从键盘上接收数据,然后逆序输出

 

#include<stdio.h>
main()
{
    double m[8];
    int i;
    for(i=0;i<=7;i++)
        scanf("%lf",&m[i]);
    for(i=7;i>=0;i--)
        printf("%f",m[i]);
}

 

 

 2.

使用一维数组,从键盘上接收6个数,找出最大的那个元素并记录他的下标

 

#include<stdio.h>
main()
{
    double m[6],max;
    int i,flag;
    printf("输入6个数:\n");
    max=m[0];
    flag=0;
    for(i=1;i<=5;i++)
        if(m[i]>max)
        {
            max=m[i];
            flag=i;
        }
printf("最大数值%f的下标为%d\n",max,flag);
}

 

 

3.求菲波那切数列前十项和

 

#include<stdio.h>
main()
{
    int f[10]={1,1};
    int i,sum;
    sum=f[0]+f[1];
    for(i=2;i<=9;i++)
    {
        f[i]=f[i-1]+f[i-2];
        sum+=f[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;j<=2;i++)
        {
            for(j=0;j<=3;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};
#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]={12,5,78,64,55,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");
}

 

posted @ 2021-11-17 12:54  张云月  阅读(18)  评论(0编辑  收藏  举报