有6个学生,每个学生的数据包括学号、姓名、3门课的成绩、平均成绩,输入每个学生的信息,平均成绩需通过计算得出,输出学生的信息。要求:输入、输出不使用函数。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int n;
struct person
{
char id [20];
char name [20];
int s1,s2,s3;
int sum;
float ave;
} p[100];
int main()
{
int i,j,t,m;
scanf("%d",&n);
for(int i=0; i<n; i++)
{
p[i].sum=0;
scanf("%s %s %d %d %d",p[i].id,p[i].name,&p[i].s1,&p[i].s2,&p[i].s3);
p[i].sum+=p[i].s1+p[i].s2+p[i].s3;
p[i].ave=p[i].sum/3.0;
}
for(i=0;i<n;i++) {
}
for(i=0; i<n; i++)
{
printf("%s %s %d %d %d %.2f\n",p[i].id,p[i].name,p[i].s1,p[i].s2,p[i].s3,p[i].ave);
}
}
/* 6
101 张三 80 76 98
102 李四 96 56 78
103 王五 64 89 63
104 小二 62 54 86
105 小四 78 86 91
106 小七 78 66 81*/
#include <stdio.h>
int xpj(int a[10][5])
{
int i,j;
double s[10];
int b=0;
double max;
for(i=0;i<10;i++)
{
b=0;
for(j=0;j<5;j++)
{
b+=a[i][j];
}
s[i]=b/5.00;
printf("第%d个同学的成绩平均分%0.2f\n",i+1,s[i]);
}
max = s[0];
b=0;
for(i=0;i<10-1;i++)
{
if(s[i]>max){
max=s[i];
b=i;
}
}
printf("第%d个同学的平均分最高且为%d分\n",b,max);
return 0;
}
int kpj(int a[10][5])
{
int i,j;
double c;
int b=0;
for(j=0;j<5;j++)
{
for(i=0;i<10;i++)
{
b+=a[i][j];
}
c=b/10.00;
printf("第%d门课的平均分分别为%0.2f\n",j+1,c);
}
return 0;
}
int main( )
{
int a[10][5];
int i,j;
for(i=0;i<10;i++)
{
printf("第%d个同学的成绩为:",i+1);
for(j=0;j<5;j++)
{
scanf("%d",&a[i][j]);
}
}
printf("\n");
xpj(a);
printf("\n");
kpj(a);
printf("\n");
return 0;
}
这个例子写过,如需代码可以私信获取下载链接
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m