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

    一、实验内容

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

    #include<stdio.h>
    #define N 5
    #define M 3
    int main()
    {
        int fen[N][M]={{100,99,98},{97,96,95},{94,93,92},{91,90,89},{88,87,86}},sum1,sum2,i,j,x=0;
        double ave1,ave2,a=0,b=0,c=0;
        printf("        语文    数学    英语    总分    平均分
    	");
        sum1=0;
        sum2=0;
        ave1=0;
        ave2=0;
        for(i=0;i<N;i++)
        {
            for(j=0;j<M;j++)
            {
                printf("%d	",fen[i][j]);
                x++;
                sum1=sum1+fen[i][j];
                ave1=sum1/3;
                if(x%3==0)
                {
                    printf("%d	%.2lf
    	",sum1,ave1);
                    sum1=0;    
                }
                if(j==0)
                {
                    a=a+fen[i][j];
                }
                if(j==1)
                {
                    b=b+fen[i][j];
                }
                if(j==2)
                {
                    c=c+fen[i][j];
                }
            }
        }
        printf("%.2f	%.2f	%.2f",a/5,b/5,c/5);
        return 0;
     } 

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

    #include <stdio.h>
    #define N 100
    int main()
    {
        int a[N][N],i,k,x,n=0,sum=0;
        printf("请输入方阵的行数
    ");
        scanf("%d",&x);
        for(i=0;i<x;i++)
        {
            printf("
    ");
            for(k=0;k<x;k++)
            {
             n++;
             a[i][k]=n;
             printf("%4d",n);
            }
        }
        printf("
    ");
        for(i=0;i<x;i++)
        {
            sum=0;
            for(k=0;k<x;k++)
            {
                sum+=a[i][k];
            }
            printf("  第%d行的数的和为%d。
    ",i+1,sum);
        }
        for(k=0;k<x;k++)
        {
            sum=0;
            for(i=0;i<x;i++)
            {
                sum+=a[i][k];
            }
            printf("  第%d列的数的和为%d。
    ",k+1,sum);
        }
        sum=0;
            for(i=0;i<x;i++)
        {
            for(k=0;k<x;k++)
            {
                if(i==k)
                {
                  sum+=a[i][k];
                }  
            }
        }
        printf("  左上至右下的对角线上的数的和为%d
    ",sum);
        sum=0;
        for(i=0;i<x;i++)
        {
            for(k=x;k>=0;k--)
            {
                if(i==k)
                {
                  sum+=a[i][k];
                }  
            }
        }
        printf("  右上至左下的对角线上的数的和为%d
    ",sum);
        return 0;
    }

    二、知识点总结

    1.数字的初始值一定要定义。

    2.二维数组的行和列要分清。

    三、实验总结

    1.使用变量要赋初始值。

    2.数组要注意越界的问题。

                                

  • 相关阅读:
    bzoj 3992: [SDOI2015]序列统计【原根+生成函数+NTT+快速幂】
    bzoj 3771: Triple【生成函数+FFT+容斥原理】
    poj 2891 Strange Way to Express Integers【扩展中国剩余定理】
    hdu 1573 X问题【扩展中国剩余定理】
    bzoj 2023: [Usaco2005 Nov]Ant Counting 数蚂蚁【生成函数||dp】
    hdu 1521 排列组合【指数型生成函数】
    JavaScript数据类型的检测
    JavaScript数据类型
    原生JS模拟jQuery $
    String基础
  • 原文地址:https://www.cnblogs.com/li1252204077/p/6160358.html
Copyright © 2011-2022 走看看