首页 > 代码库 > 第十次作业
第十次作业
1.有5名学生,每名学生有语文、数学和外语3门课的考试成绩。编程统计各学生的总分和平均分以及所有学生各科的平均分。要求成绩在程序中初始化,结果以表格的形式输出。
#include <stdio.h> #define M 5//五个同学 #define N 3//三门成绩 void sumscore(int score[M][N],int sum[]);//每个学生的总分 void average(int score[M][N],double ave[]);//每个学生的平均分 void average1(int score[M][N],double ave[]); //各科成绩的平均 int main() { int score[M][N]={{80,81,82},{83,84,85},{90,91,92},{93,94,95},{96,97,98}},i,j,sum[M]={0}; double ave[M]={0},ave1[N]={0}; sumscore(score,sum); average(score,ave); average1(score,ave1); printf("\t语文 \t数学 \t英语 \t总分 \t平均分\n"); for(i=0;i<M;i++) { for(j=0;j<N;j++) { printf("\t%2d",score[i][j]); } printf("\t%2d",sum[i]); printf("\t%.2f",ave[i]); printf("\n"); } printf("\n平均分");//各科成绩平均分 for(j=0;j<N;j++) { printf("\t%.2f",ave1[j]); } printf("\n"); return 0; } void sumscore(int score[M][N],int sum[])//每个学生的总分 { int i,j,sum1; for(i=0;i<M;i++) { sum1=0; for(j=0;j<N;j++) { sum1+=score[i][j]; } sum[i]=sum1; } } void average(int score[M][N],double ave[])//每个学生的平均分 { int i,j,sum; for(i=0;i<M;i++) { sum=0; for(j=0;j<N;j++) { sum+=score[i][j]; } ave[i]=(double)sum/N; } } void average1(int score[M][N],double ave[M]) //各科成绩求平均 { int j,i,sum2; for(i=0;i<N;i++) { sum2=0; for(j=0;j<M;j++) { sum2+=score[i][j]; } ave[i]=(double)sum2/M; } }
2.求任意方阵每行、每列、两对角线上元素之和。
#include<stdio.h> #define M 3 #define N 3 int main() { int num[M][N],i,j,x,y,sum1,sum2,sum3,sum4; printf("请输入任意九个数字\n"); for(i=0;i<M;i++) { for(j=0;j<N;j++) { scanf("%d",&num[i][j]); } } printf("方阵为:\n"); for(i=0;i<M;i++) { for(j=0;j<N;j++) { if(j%3==0) { printf("\n"); } printf("%3d",num[i][j]); } } printf("\n"); for(x=0;x<M;x++) { sum1=0; sum2=0; for(y=0;y<N;y++) { sum1=sum1+num[x][y]; sum2=sum2+num[y][x]; } printf("第%d行的元素之和为%d\n",x+1,sum1); printf("第%d列的元素之和为%d\n",y+1,sum2); } sum3=num[0][0]+num[1][1]+num[2][2]; sum4=num[0][2]+num[1][1]+num[2][0]; printf("从左上到右下的对角线元素之和为%d\n从左下到右上的对角线元素之和为%d",sum3,sum4); return 0; }
1.二维数组声明函数形参,可以省略第一维数组的长度,不能省略第二维数组的长度
2.二维数组元素的应用
数组名[下标][下标]
下标值应该在已定义的数组大小范围内,区分定义数组时的a[1][2]和引用元素时的a[1][2]
刚开始先定义一个二维数组 它表示的是一个矩阵,在引用的时候,它是作为一个位置一个数字数字
3.\b为退格 1字符长度
\t 4个字符长度
\n 回车
2.二维数组元素的应用
数组名[下标][下标]
下标值应该在已定义的数组大小范围内,区分定义数组时的a[1][2]和引用元素时的a[1][2]
刚开始先定义一个二维数组 它表示的是一个矩阵,在引用的时候,它是作为一个位置一个数字数字
3.\b为退格 1字符长度
\t 4个字符长度
\n 回车
第十次作业
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。