zoukankan      html  css  js  c++  java
  • 第十次作业

    1.有5名学生,每名学生有语文、数学和外语3门课的考试成绩。编程统计各学生的总分和平均分以及所有学生各科的平均分。要求成绩在程序中初始化,结果以表格的形式输出。       

    #include<stdio.h>
    int main()
    {
        int score[5][3]={{70,70,80},{70,70,60},{70,70,90},{80,80,70},{70,70,70}},i,j,sum,sum1[5],h,sum2;
        float ave[5],average,ave1[3];
        for(i=0;i<5;i++)
        {
            sum=0;
            for(j=0;j<3;j++)
            {
                sum+=score[i][j];
            }
            average=sum/3;
            sum1[i]=sum;
            ave[i]=average;    
        }
        for(i=0;i<3;i++)
        {
            sum2=0;
            for(j=0;j<5;j++)
            {
                sum2+=score[i][j];
            }
            ave1[i]=sum2/3;
    
        }
        printf("    语文    数学   英语    总分    平均分
    ");
        h=0;
        for(i=0;i<5;i++)
        {
            for(j=0;j<3;j++)
            { 
            printf("     %d",score[i][j]);
            h++;
            }
            printf("      %d",sum1[i]);
            h++;
            printf("     %.3f",ave[i]);
            h++;
            if(h%5==0)
            printf("
    ");
        }
         printf("平均分");    
            for(i=0;i<3;i++)
        {
            printf("%.3f  ",ave1[i]);
        }
        return 0;
     } 

    2.求任意方阵每行、每列、两对角线上元素之和。

    #include<stdio.h>
    int main()
    {
        int a,i,j,shu[20][20],sum1[20],sum2[20],sum3,sum4,sum;
        printf("请输入矩阵边长:");
        scanf("%d",&a);
        for(i=0;i<a;i++)
        {
            for(j=0;j<a;j++)
            {
                printf("请输入第%d行第%d列的数据",i+1,j+1);
                scanf("%d",&shu[i][j]);
            }        
        }
        for(i=0;i<a;i++)
        {
            sum=0;
            for(j=0;j<a;j++)
            {
                sum+=shu[i][j];
            }
            sum1[i]=sum;    
        }
        for(i=0;i<a;i++)
        {
            sum=0;
            for(j=0;j<a;j++)
            
                sum+=shu[j][i];
                sum2[i]=sum;
            
                
        }
        sum=0;
        for(i=0;i<a;i++)
        {
            
            for(j=0;j<a;j++)
            {
                if(i==j)
                sum+=shu[i][j];            
            } 
        }
         sum3=sum;
        sum=0;
        j=a-1;
        for(i=0;i<a;i++)
        {
            sum=sum+shu[i][j];
            j--;
        }
        sum4=sum;
        
        for(i=0;i<a;i++)
        {
            printf("第%d行之和为%d
    ",i+1,sum1[i]);
        }
        for(i=0;i<a;i++)
        {
            printf("第%d列之和为%d
    ",i+1,sum2[i]);
        }
        printf("对角线之和为:%d %d",sum3,sum4);
        return 0;    
    }

    实验总结:

    1二维数组也是线性存储的。

    2.在输出表格形式的数据时灵活使用二维数组。

    3.多次求和,注意每次重新求和时给sum赋初值。

  • 相关阅读:
    Encrypted Handshake Message
    RSAParameters Struct
    What if JWT is stolen?
    What's the difference between JWTs and Bearer Token?
    RSA Algorithm Example
    第18届Jolt大奖结果公布
    Ruby on rails开发从头来(windows)(三十六) 调试技巧
    Ruby on rails开发从头来(四十二) ActiveRecord基础(主键和ID)
    YouTube开放基础技术架构 让用户建自家YouTube
    Ruby on rails开发从头来(四十) ActiveRecord基础(Boolean属性)
  • 原文地址:https://www.cnblogs.com/weizhenchuan/p/6159728.html
Copyright © 2011-2022 走看看