第十次作业

1.定义一个8个储存单元的实型数组,从键盘上接收数,然后逆序输出。
#include<stdio.h>
main(){
  int i;
  double a[8];
  printf("请输入8个数\n");
  for(i=0;i<8;i++)
  scanf("%lf",&a[i]);
  for(i=7;i>=0;i--)
  printf("%.2f",a[i]);
}

2.使用一组数组,从键盘上接收6个数,找出最大的,并记录它的下标。
#include<stdio.h>
main(){
  int a[6],i,max,maxidx;
  printf("请输入6个数\n");
  for(i=0;i<6;i++){
           scanf("%d",&a[i]);
           if(a[i]>max){
                    max=a[i];
               maxidx=i;
           }
  }printf("最大的为%d,下标为%d",max,maxidx);

 

3.求fibonacci数列的前10项和。
#include<stdio.h>
main(){
  int a[10],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+=a[i];
  }
  printf("和为%d",sum);
}

 

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

 

5、编写程序,求二维数组m对角线之和
#include <stdio.h>
main()
{
    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}};
    int i,j,sum=0;
    for ( i=0;i<5;i++ )
    {
        for ( j=0;j<5;j++ )
        {
            if ( i==j||i+j==4 )
            {
                sum+=m[i][j];
            }
        }
    }
    printf ( "对角线的和:%d\n",sum );

 

6、编写程序,通过一维数组接收5门课程的成绩,并输出平均分数
#include <stdio.h>
main()
{
    int a[5];
    int i,sum=0;
    double avg;
    for ( i=0;i<5;i++ )
    {
        printf ( "please enter the %d number for score:",i+1 );
        scanf ( "%d",&a[i] );
        sum+=a[i];    
    }
    avg=sum/5.0;
    printf ( "the average of score is %f\n",avg );
}

 

7、编写程序,实现一位数组中前、后元素的对调
#include <stdio.h>
main()
{
    int a[5];
    int i,j,b;
    for ( i=0;i<5;i++ )
    {
        printf ( "please enter the %d number:",i+1 );
        scanf ( "%d",&a[i] );
    }
    for ( i=0;i<4;i++ )
    {
        for ( j=0;j<4-i;j++ )
        {
            if ( a[j]>a[j+1] )
            {
                b=a[j];
                a[j]=a[j+1];
                a[j+1]=b;
            }
        }
    }
    printf( "the last\n" );
    for ( i=0;i<5;i++ )
    {
        printf("%d\n",a[i]);
    }
}

 

 

posted @ 2021-11-30 10:42  梁冉  阅读(21)  评论(0编辑  收藏  举报