美文网首页
《明解C语言》第五章笔记和练习题

《明解C语言》第五章笔记和练习题

作者: brilliant_595f | 来源:发表于2019-07-12 10:19 被阅读0次

    笔记:

    1 、int[4][3]的含义为,“元素类型为int,元素个数为3的数组”为元素,元素个数为4的数组
    2、数组初始化0, int a[10]={0};相当于将a数组的所有元素的初始值设为0

    练习题

    5-1

    #include<stdio.h>
    void main()
    {
        int a[5];
        for(int b=0;b<5;b++)
        {
            a[b]=b;
        }
        for(int b=0;b<5;b++)
        {
            printf("a[%d]=%d\n",b,a[b]);
        }
    }
    

    5-2

    #include<stdio.h>
    void main()
    {
        int a[5];
        for(int b=4;b>=0;b--)
        {
            a[b]=4-b;
        }
        for(int b=0;b<=4;b++)
        {
            printf("a[%d]=%d\n",b,a[b]);
        }
    }
    

    5-3

    #include<stdio.h>
    void main()
    {
        int v[5]={5,4,3,2,1};
        for(int i=0;i<5;i++)
            printf("v[%d]=%d\n",i,v[i]);
    }
    

    5-4

    #include<stdio.h>
    void main()
    {
        int a[5]={17,23,36};
        int b[5];
        puts("   a   b");
        puts("--------");
        for(int c=0;c<5;c++)展开阅读全文
        {
            b[c]=a[4-c];
        }
        for(int c=0;c<5;c++)
        {
            printf("%4d%4d\n",a[c],b[c]);
        }
    
    }
    

    5-5

    #include<stdio.h>
    #define NUMBER 7
    void main()
    {
        int num[7],temp;
        for(int i=0;i<NUMBER;i++)
        {
            printf("请输入第%d个数字:\n",i+1);
            scanf("%d",&num[i]);
        }
        for(int i=0;i<3;i++)
        {
            temp = num[i];
            num[i] = num[6-i];
            num[6-i] = temp; 
        }
        puts("倒序后的:");
        for(int i=0;i<NUMBER;i++)
        {
            printf("num[%d]=%d\n",i,num[i]);
        }
    }
    

    5-6

    5-7

    
    

    5-10

    #include<stdio.h>
    
    void main()
    {
        int tensu1[4][3];
        int tensu2[3][4];
        int count[4][4];
        for(int j=0;j<4;j++)
        {
            for(int k=0;k<3;k++)
            {
                    printf("请输入tensu1[%d][%d]的值是:",j,k);
                    scanf("%d",&tensu1[j][k]);
            }
        }
        for(int j=0;j<3;j++)
        {
            for(int k=0;k<4;k++)
            {
                    printf("请输入tensu2[%d][%d]的值是:",j,k);
                    scanf("%d",&tensu2[j][k]);
            }
        }
        for(int j=0;j<4;j++)
        {
            for(int k=0;k<4;k++)
            {
                    count[j][k]=tensu1[j][k]*tensu2[j][k];
            }
        }
        puts("第一次考试分数:");
        for(int j=0;j<4;j++)
        {
            for(int k=0;k<4;k++)       
                printf("%4d",tensu1[j][k]);
                putchar('\n');
            
        }
        puts("第二次考试的分数:");
        for(int j=0;j<4;j++)
        {
            for(int k=0;k<4;k++)       
                printf("%4d",tensu2[j][k]);
                putchar('\n');
            
        }
        puts("乘积为:");
        for(int j=0;j<4;j++)
        {
            for(int k=0;k<4;k++)       
                printf("%4d",count[j][k]);
                putchar('\n');
            
        }
    }
    

    5-11

    #include<stdio.h>
    void main()
    {
        int tensu[6][2];
        int yuwen=0,shuxue=0;
        int sum[6]={};
        //int sum2[6][2];
        //int sum[2][1];
        int count[2][1];
        for(int j=0;j<6;j++)
        {
            for(int k=0;k<2;k++)
            {
                if(k)
                    printf("请输入第%d名同学数学的分数是:",j+1);
                else
                    printf("请输入第%d名同学语文的分数是:",j+1);    
                scanf("%d",&tensu[j][k]);
            }
        }
        for(int j=0;j<6;j++)
        {
            for(int k=0;k<2;k++)
            {
                printf("%4d",tensu[j][k]);
            }
            putchar('\n');
        }
    
        for(int j=0;j<6;j++)
        {
            for(int k=0;k<2;k++)
                sum[j]+=tensu[j][k];
            yuwen += tensu[j][0];
            shuxue += tensu[j][1];
        }
        printf("语文的总分为:%d,平均分为:%.1f\n",yuwen,(double)yuwen/6);
        printf("数学的总分为:%d,平均分为:%.1f\n",shuxue,(double)shuxue/6);
        for(int i=0;i<6;i++)
            printf("第%d个同学的总分是%d,平均分是:%.1f\n",i+1,sum[i],(double)sum[i]/2);
    }
    
    

    5-12

    #include<stdio.h>
    void main()
    {
        int tensu[2][4][3];
        int sum[4][3]={};
        for(int i = 0;i < 2;i++)
        {
            for(int j = 0;j < 4;j++)
            {
                for(int k = 0;k < 3;k++)
                {   
                    printf("请输入第%d次考试%d名同学第%d们的成绩:",i+1,j+1,k+1);
                    scanf("%d",&tensu[i][j][k]);
                }
    
            }
        }
        for(int i = 0;i < 2;i++)
        {
            printf("第%d次考试的分数是:\n",i);
            for(int j = 0;j < 4;j++)
            {
                for(int k = 0;k < 3;k++)
                {   
                    printf("%4d",tensu[i][j][k]);
                }
                putchar('\n');
            }
        }
        puts("总分:");
        for(int i = 0;i < 2;i++)
        {
            for(int j = 0;j < 4;j++)
            {
                for(int k = 0;k < 3;k++)
                {   
                    sum[j][k]+=tensu[i][j][k];
                }
            }
        }
        for(int j = 0;j < 4;j++)
        {
            for(int k = 0;k < 3;k++)
            {   
                printf("%4d",sum[j][k]);
            }
            putchar('\n');
        }     
    }
    
    

    相关文章

      网友评论

          本文标题:《明解C语言》第五章笔记和练习题

          本文链接:https://www.haomeiwen.com/subject/cqxckctx.html