第九次作业

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

#include <stdio.h>

main()

{

    int a[8],i,j;

    for( i=0;i<8;i++ )

    {

        printf( "请输入第 %d数字",i+1 );

        scanf( "%d",&a[i] );

    }

    for( j=7;j>=0;j-- )

    {

        printf( "第%d个数字是 %d\n",j,a[j] );

 

    }

}

 

 

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

#include <stdio.h>

main()

{

    int a[6],i,j,max,min,maxidx=0,minidx=0;

    for( i=0;i<6;i++ )

    {

        printf( "请输入第%d的数:",i+1 );

        scanf( "%d",&a[i] );

    }

    max=a[0];

    min=a[0];

    for( j=0;j<6;j++ )

    {

        if ( max<a[j] )

        {

            max=a[j];

            maxidx=j;

        }

        if (min>a[j])

        {

            min=a[j];

            minidx=j;

        }

    }

    printf( "最大的数为%d,下标为%d,最小的数为%d,下标为%d \n",max,maxidx,min,minidx );

}

 

 

3、求Fibonacci数列的前10项的和

#include <stdio.h>

main()

{

    int i,a[10]={1,1},sum=0;

    for ( i=2;i<10;i++ )

    {

        a[i]=a[i-1]+a[i-2];

        sum+=a[i];

    }

    sum=sum+a[0]+a[1];

    printf ( "前十项的和为%d\n",sum );

}

 

 

4、定义一个二维数组,从键盘上接收变量,并以矩阵的形式输出

#include <stdio.h>

main()

{

    int i,j,a[3][4];

    printf ( "请输入你的 12个数:\n" );

    for ( i=0;i<3;i++ )

    {

        for ( j=0;j<4;j++ )

        {

            

            scanf ( "%d",&a[i][j] );

        }

    }

    printf ( "矩阵是:\n" );

    for ( i=0;i<3;i++ )

    {

        for ( j=0;j<4;j++ )

        {

            printf ( "%d\t",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-12-05 17:31  KONE〈  阅读(8)  评论(0编辑  收藏  举报