将三个学生四门课程的成绩分别存放
❶ 三个学生、五门课程的成绩分别存放在4×6矩阵的前3×5列
#include<stdio.h>
void main()
{
int i,j;
double a[4][6],sum=0;
printf("please enter students' grade.\n");
for(i=0;i<3;i++)
{
sum=0;
for(j=0;j<5;j++)
{
scanf("%lf",a[i]+j);
sum+=a[i][j];
}
a[i][j]=sum/5;
}
for(i=0;i<6;i++)
{
for(j=0,sum=0;j<3;j++)sum+=a[j][i];
a[j][i]=sum;
}
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
printf("%6.0lf",a[i][j]);
printf("%6.1lf",a[i][j]);
putchar('\n');
}
for(i=0;i<6;i++)
printf("%6.2lf",a[3][i]);
return;
}
❷ 用一个二维数组score[4][3]来存放4个学生3门课的成绩,编程实现:(1)输入学生成绩;(2) 求出每个学生的平均
int score[4][3] = {{0}};
int a[4] = {0};
int b[3] = {0};
int i = 0;j = 0;
void inputScore(void)
{
printf("请输入学生成绩,每个学生3门课程成绩,共4名学生\n");
for (j = 0; j<4; j++)
{
for(i = 0; i<3; i++)
{
printf("请输入学生%d的第%d门课的成绩\n",j+1,i+1);
scanf("%d",&score[j][i]);
}
}
}
void getOutput(void)
{
for (j = 0; j<4; j++)
{
for(i = 0; i<3; i++)
{
a[j]+= score[j][i];
b[i]+=score[j][i]
}
}
a[4] /= 4;
b[3] /= 3;
}
❸ C语言问题。通过键盘输入3名学生4门课程的成绩,分别求每个学生的平均成绩和每门课程的平均成绩。
void printScore(int score[4][3]){
int i,j;
for(i=0;i<4;i++){
printf("学生%d的三门成绩分别为: ",i+1);
for(j=0;j<3;j++){
printf("%d ",score<i>[j]);
if(j==2)
printf(" ");
}
}
printf(" ");
}
(3)将三个学生四门课程的成绩分别存放扩展阅读:
printf()用法:
1、printf()函数是格式化输出函数,一般用于向回标准答输出设备按规定格式输出信息。
格式输出,它是c语言中产生格式化输出的函数(在stdio.h中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。
要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
简单点理解就是,在一段程序中你正确使用该函数,可以在该程序运行的时候输出你所需要的内容。
2、printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用printf函数之前必须包含stdio.h文件。
❹ c语言编程问题:有3个学生4门课程的成绩,用函数计算每个学生的平均成绩,然后输出。
#include"stdio.h"
floataver(int(*p)[4],intn)
{
inti;
floatsum=0;
for(i=0;i<4;i++)
{
sum+=p[n][i];
}
returnsum/4.;
}
voidmain()
{
intA[][4]={{65,67,70,60},
{80,87,90,81},
{90,99,100,98}};
inti;
for(i=0;i<3;i++)
{
printf("第%d个学生平均成绩为回%.2f ",i+1,aver(A,i));
}
}
运行结果如下:
请采答纳
❺ 定义一个二维数组,存储3个同学4门课程的成绩,编写程序实现将输入的成绩统计每个学生的平均成绩和每门
#include<stdio.h>
int main()
{
int score[3][4],i,j,sum1,sum2;
int ave1[3],ave[4];
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
sum1=0;
scanf("%d",&score[i][j]);
sum1+=score[i][j];
}
ave1[i]=sum1/j;
}
for(i=0;i<4;i++)
{
for(j=0;j<3;j++)
{
sum2=0;
sum2+=score[j][i];
}
ave[i]=sum2/j;
}
for(i=0;i<3;i++)
printf("%d ",ave1[i]);
printf("\n");
for(i=0;i<4;i++)
printf("%d ",ave[i]);
printf("\n");
return 0;
}
输出的是整数,如果题目要求小数的话再改改
❻ C++将三个学生,四门课程的成绩分别放在4*5数组的前3*4行列,计算出每个学生的总成绩存放在该
#include<iostream>
usingnamespacestd;
voidmain()
{
inti,j;
floatstu[4][5];
for(i=0;i<3;i++)
{
cout<<"请输入第"<<i+1<<"个学生成绩:"<<endl;
for(j=0;j<4;j++)
cin>>stu[i][j];
}
cout<<"输入的学生成绩为:"<<endl;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
cout<<stu[i][j]<<" ";
cout<<endl;
}
for(i=0;i<4;i++)
stu[i][4]=(stu[i][0]+stu[i][1]+stu[i][2]+stu[i][3])/4.0;
for(j=0;j<4;j++)
for(i=0;i<3;i++)
stu[3][j]=(stu[j][i]+stu[j][i]+stu[j][i])/3.0;
cout<<"计算后的成绩为:"<<endl;
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
cout<<stu[i][j]<<" ";
cout<<endl;
}
}
❼ 将3位学生4门课成绩读入并存储在二维数组score中
#include <iostream>
#define N 3
#define M 4
using namespace std;
int main()
{
int score[N][M];
int i,j;
cout<<"请输入您的数组:"<<endl;
//首先输入你的数组
for (i=0;i<N;i++)
{
版for (j=0;j<M;j++)
{
cin>>score[i][j];
}
}
int (*p)[M]=score;
cout<<"请输入您要查询的学生权的序号(0,1,2):"<<endl;
int n;
cin>>n;
p=&score[n];
cout<<"第"<<n+1<<"个学生的成绩是:"<<endl;
//下面是输出你的数组,完全指针
for (int *q=*p;q!=*p+4;q++)
{
cout<<*q<<" ";
}
cout<<endl;
return 0;
}
❽ C语言数组题:有3个学生,上4门课,要求输入全部学生各门课的成绩并分别求出每门课的平均成绩
#include<stdio.h>
//C语言数组题:有3个学生,上4门课,要求输入全部学生各门课的成绩并分别专求出每门课的平属均成绩
intmain()
{
doublescore[3][4]={0.0};
inti,j;
doublesum=0;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
{
printf("请输入学生%d科目%d的成绩:",i+1,j+1);
scanf("%lf",&score[i][j]);
}
for(j=0;j<4;j++)
{
sum=0;
for(i=0;i<3;i++)
{
sum+=score[i][j];
}
printf("科目%d的平均分为%lf :",j+1,sum/4);
}
return0;
}
❾ 输入3个学生4门课的成绩,分别用函数实现以下功能:(1)计算每个学生的平均分
#include<stdio.h>
void xsaver(float (*p1)[4],int n) //每个学生的平均分
{
float stud[n];int i,j;
stud[0]=0;stud[1]=0;stud[2]=0;
for(i=0;i<n;i++)
{
for(j=0;j<4;j++)
stud[i]+=*(*(p1+i)+j);
printf("stud[%d]=%5.2f\t",i,stud[i]/4);
}
printf("\n");
}
void kcaver(float (*p)[4],int n)//每门课程的平均分
{
int i,j;float course[n];
course[0]=0;course[1]=0;course[2]=0;course[3]=0;
for(j=0;j<n;j++)
{
for(i=0;i<3;i++)
course[j]+=*(*(p+i)+j);
printf("course[%d]=%5.2f\t",j,course[j]/3);
}
}
void max(float *p,int n)//p=*score=score[0],score[0]是个列指针,p也是列指针
{
float max=*p;int maxi,maxj,k=0;
for(int j=0;j<=n-1;j++)
if(*(p+j)>max){max=*(p+j);k=j;}
maxi=k/4;maxj=k%4;
printf("\nk=%d maxi=%d maxj=%d max=%5.2f\n",k,maxi,maxj,max);
}
int main()
{
float score[3][4]={{65,67,70,60},{80,87,90,81},{90,99,100,98}};
xsaver(score,3);//每个学生的平均分
kcaver(score,4);//每门课程的平均分
max(*score,12);//求最高分
return 0;
}
❿ 定义一个三行四列的二维数组,存放三个学生四门课的成绩,并定义一个指向一维数组的指针变
代码及运行实况如图