• 第十次实验


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

    #include <stdio.h>
    int main()
    {
        int score[5][3]={{60,60,60},{50,50,50},{70,70,70},{80,80,80},{90,90,90}};
        int j,i,suma,sumb,SUMA[5];
        double avea[5],aveb[3];
        printf("          语文   数学   英语   总分   平均分
    ");
        for(i=0;i<5;i++)//个人平均分最大值
        {
            suma=0;
                for(j=0;j<3;j++)
                {
                    suma+=score[i][j];
                    SUMA[i]=suma;
                }
                SUMA[i]=suma;
                avea[i]=(double)suma/3;
    
        }
        for(j=0;j<3;j++)//学科平均分
        {
            sumb=0;
            for(i=0;i<5;i++)
            {
                sumb+=score[i][j];
            }
            aveb[j]=(double)sumb/5;
        }
        for(i=0;i<5;i++)
        {
            printf("第%d名学生:",i+1);
            for(j=0;j<3;j++)
            {
                printf("%d     ",score[i][j]);
            }
            printf("%d     %.1f
    ",SUMA[i],avea[i]);
        }
        printf("  平均分:");
        for(i=0;i<3;i++)
        {
            printf("%.1f   ",aveb[i]);
        }
        printf("
    ");
        return 0;
    }

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

    #include <stdio.h>
    int main()
    {
        int a[3][3]={{1,2,3},{4,5,6},{7,8,9}},suma[3],sumb[3],num[2];
        int i,j,sum,numa=0,numb=0;
        printf("array a:
    ");
        for(i=0;i<3;i++)
        {   for(j=0;j<3;j++)
            {     
                printf("%5d",a[i][j]);
            }
              printf("
    ");
        }  
        for(i=0;i<3;i++)    
        {          sum=0;
            for(j=0;j<3;j++)  
            {
               sum+=a[i][j];
            }
            suma[i]=sum;
        }
    for(j=0;j<3;j++)    
        {           sum=0;
            for(i=0;i<3;i++)    
            {   
                 sum+=a[i][j];
            }
            sumb[j]=sum;
        }
    for(i=0;i<3;i++) 
        { 
            for(j=0;j<3;j++) 
            {
            
                if(i==j) 
                {
                    numa+=a[i][j]; 
                }
            }
        } 
        num[0]=numa;
    
    
        
    for(i=0;i<3;i++)
    {
      for(j=0;j<3;j++)
      {
          if(i+j==2)
          {
          numb+=a[i][j];
         }
      }
    }
    num[1]=numb;
    
    printf("每行的和为:");
    for(i=0;i<3;i++)
    {
        printf("%d  ",suma[i]);
    } 
     printf("
    ");
     printf("每列的和为:");
    for(i=0;i<3;i++)
    {
        printf("%d ",sumb[i]);
    } 
    printf("
    ");
    printf("主次对角线的和:");
    for (i=0;i<2;i++)
    {
        printf("%d ",num[i]);
    }
        return 0;
     } 

    实验总结:

    1表格的形式输出运用循环输出数组的值与空格的添加来的得到一个类表格的输出。

    2二维数组的行列求和就是确定某一行求一行中每一列的和 采用循环套循环的方式求出。

    3求矩阵的对角线和为11  22  33的主对角线与13 22 31的次对角线  主对角线等同为i=j时的数组之和,次对角线为i+j=2时的数组和。

  • 相关阅读:
    APS.NET MVC + EF (14)---项目框架搭建
    APS.NET MVC + EF (11)---过滤器
    APS.NET MVC + EF (10)---使用AJAX
    APS.NET MVC + EF (06)---模型
    APS.NET MVC + EF (08)---数据注解和验证
    APS.NET MVC + EF (07)---表单和HTML辅助方法
    APS.NET MVC + EF (05)---控制器
    错误 1 error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
    VS2010中项目配置引入GDAL
    Win7(32/64)VS2010配置编译GDAL环境(图文教程+亲测可用!)
  • 原文地址:https://www.cnblogs.com/xiongx/p/6139307.html
Copyright © 2020-2023  润新知