求一道c语言编程题目,急!!!先谢谢啦!!! 20
设一个班有10个学生,每个学生有学号,以及数学、物理、英语、语文、体育5门课的成绩信息,分别编写3个函数以实现以下3个要求:1)求数学平均成绩。2)对于有两门以上课程不及...
设一个班有10个学生,每个学生有学号,以及数学、物理、英语、语文、体育5门课的成绩信息,分别编写3个函数以实现以下3个要求:
1)求数学平均成绩。
2)对于有两门以上课程不及格的学生,输出他们的学号、各门课成绩及平均成绩。
3)输出成绩优良的学生(平均成绩在85分以上或全部在80分以上)的学生、个门课成绩和平均成绩。
(可以发598537867@qq.com) 展开
1)求数学平均成绩。
2)对于有两门以上课程不及格的学生,输出他们的学号、各门课成绩及平均成绩。
3)输出成绩优良的学生(平均成绩在85分以上或全部在80分以上)的学生、个门课成绩和平均成绩。
(可以发598537867@qq.com) 展开
3个回答
展开全部
你的数据保存在哪里?数组吗?怎样的数组?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很简单的,用c++更简单
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
void input(float *);
void manage(float (*p)[5]);
float score[3][5];
input(*score);
manage(score);
}
void input(float *p)
{
printf("input their scores:\n");
float *p_end;
p_end=p+15;
for(;p<p_end;p++)
{
scanf("%f",p);
while(*p<0||*p>100)
{
printf("error!!\tinput the score again: ");
scanf("%f",p);
}
}
}
void manage(float (*p)[5])
{
int i,j,n;
float sum=0,aver=0;
printf("\ntheir scores:\n");
for(i=0;i<3;i++)
{
printf("No.%d\t",i+1);
for(j=0;j<5;j++)
printf("%6.1f",*(*(p+i)+j));
printf("\n");
}
printf("\nthe average of the third course of scores is: ");
for(i=0;i<3;i++)
{
sum+=*(*(p+i)+2);
aver=sum/3;
}
printf("%6.2f\n",aver);
printf("\n");
for(i=0;i<3;i++)
{
sum=0;
n=0;
aver=0;
for(j=0;j<5;j++)
{
sum+=*(*(p+i)+j);
aver=sum/5;
if(*(*(p+i)+j)<60)
n+=1;
}
if(n>=2)
{
printf("No.%d fails,his scores are: ",i+1);
for(j=0;j<5;j++)
printf("%6.1f",*(*(p+i)+j));
printf("\nhis average score is: %6.2f\n\n",aver);
}
}
printf("\nthe student of the average score >=90.00 or all the scores>=85.0 is: ");
n=0;
for(i=0;i<3;i++)
{
sum=0;
aver=0;
for(j=0;j<5;j++)
sum+=*(*(p+i)+j);
aver=sum/5;
for(j=0;j<5;j++)
{
if(*(*(p+i)+j)<85.0)
break;
}
if(aver>=90.00||j==5)
printf("No.%d ",i+1);
else n+=1;
}
if(n==3)
printf("none");
printf("\n");
}
void main()
{
void input(float *);
void manage(float (*p)[5]);
float score[3][5];
input(*score);
manage(score);
}
void input(float *p)
{
printf("input their scores:\n");
float *p_end;
p_end=p+15;
for(;p<p_end;p++)
{
scanf("%f",p);
while(*p<0||*p>100)
{
printf("error!!\tinput the score again: ");
scanf("%f",p);
}
}
}
void manage(float (*p)[5])
{
int i,j,n;
float sum=0,aver=0;
printf("\ntheir scores:\n");
for(i=0;i<3;i++)
{
printf("No.%d\t",i+1);
for(j=0;j<5;j++)
printf("%6.1f",*(*(p+i)+j));
printf("\n");
}
printf("\nthe average of the third course of scores is: ");
for(i=0;i<3;i++)
{
sum+=*(*(p+i)+2);
aver=sum/3;
}
printf("%6.2f\n",aver);
printf("\n");
for(i=0;i<3;i++)
{
sum=0;
n=0;
aver=0;
for(j=0;j<5;j++)
{
sum+=*(*(p+i)+j);
aver=sum/5;
if(*(*(p+i)+j)<60)
n+=1;
}
if(n>=2)
{
printf("No.%d fails,his scores are: ",i+1);
for(j=0;j<5;j++)
printf("%6.1f",*(*(p+i)+j));
printf("\nhis average score is: %6.2f\n\n",aver);
}
}
printf("\nthe student of the average score >=90.00 or all the scores>=85.0 is: ");
n=0;
for(i=0;i<3;i++)
{
sum=0;
aver=0;
for(j=0;j<5;j++)
sum+=*(*(p+i)+j);
aver=sum/5;
for(j=0;j<5;j++)
{
if(*(*(p+i)+j)<85.0)
break;
}
if(aver>=90.00||j==5)
printf("No.%d ",i+1);
else n+=1;
}
if(n==3)
printf("none");
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询