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

    一、实验内容      

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

    #include<stdio.h>
    #define H 5
    #define L 5
    int main()
    {
        int i,j,sum=0;
        float ave,score[H][L]={67,89,78,0,0,68,98,88,0,0,90,70,56,0,0,78,80,78,0,0,78,89,70,0,0};;
        for(i=0;i<H;i++)
        {
            sum=0;
            for(j=0;j<L;j++)
            {
                sum+=score[i][j]; 
                score[i][3]=sum;
                
            }
            ave=0;
            ave=(double)sum/3;
            score[i][4]=ave;
        }   
        printf("          语文    数学     英语     总分    平均分");
        printf("
    ");
    
        for(i=0;i<H;i++)
        {
                printf("学生%d	",i+1);
            for(j=0;j<L;j++)
            {
                printf("  %.2f ",score[i][j]);
            }
            if(j==5)
            {
                printf("
    ");
            }
        }
        for(i=0;i<H;i++)
        {    
            sum=0;
            for(j=0;j<L;j++)
            {
                sum=sum+score[j][i];
                ave=0;
                ave=(double)sum/5;
                score[i][5]=ave;
            }
        }
        printf("平均分");
        for(i=0;i<L;i++)
        {
            printf("    %.2f",score[i][5]);
        }
        printf("
    ");
        return 0;
    
    } 

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

    #include<stdio.h>
    #define N 5
    int main()
    {
        int n,i,j,h,l,duisum1=0,duisum2=0,a[N][N]={0};
        for(i=0;i<N;i++)
        for(j=0;j<N;j++)
        {
            a[i][j]=n;
            n++;
            printf("%5d",a[i][j]);
        }
        printf("
    ");
        for(i=0;i<N;i++)
        {
            h=0;
            for(j=0;j<N;j++)
            {
                h+=a[i][j];
            }
            printf("第%d行的元素之和为%d
    ",i+1,h);
        }
        for(j=0;j<N;j++)
        {
            l=0;
            for(i=0;i<N;i++)
            {
                l+=a[i][j];
            }
            printf("第%d列的元素之和为%d
    ",j+1,l);
        }
        duisum1=a[0][0]+a[1][1]+a[2][2]+a[3][3]+a[4][4];
        duisum2=a[0][4]+a[1][3]+a[3][1]+a[4][0];
        printf("左上到右下对角线的和为%d
    ",duisum1);
        printf("左下到右上对角线的和为%d
    ",duisum2);
        return 0;
    }

     二、实验总结

    1.注意不要越界。

    2.在声明函数的二维数组形参时,可以省略第一维的长度,但不能省略数组第二维的长度。

    3.输出时不加取地址符

  • 相关阅读:
    Tomcat开启Debug模式
    Tomcat多实例
    django 总结
    Django2.* + Mysql5.7开发环境整合
    网络通讯协议
    Python-警告处理
    爬虫框架-selenium
    Python-标准库(常用模块)
    ORM概念
    面向对象-高级
  • 原文地址:https://www.cnblogs.com/faner10110/p/6143302.html
Copyright © 2011-2022 走看看