美文网首页
《明解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