同问题再次求高手C语言编程!在线等!急~~!!

编写程序,输入50个学生的数学成绩和英语成绩 int grade[50][3] ,统计并输出每门课程的平均分以及至少一门课不及格学生数,两门不及格的人数。
急,在线等 谢谢!!
是所有人每门课的平均分

#include <stdio.h>
#include <stdlib.h>

int main()
{
int grade[50][3];
int i;
int sum1 = 0,sum2 = 0;
int n1 = 0,n2 = 0;
printf("请依次输入数学成绩和英语成绩,中间隔开\n");
for(i = 0; i < 50; i++)
{
scanf("%d%d",&grade[i][0],&grade[i][1]);
sum1 = sum1 + grade[i][0];
sum2 = sum2 + grade[i][1];
grade[i][2] = (grade[i][0] + grade[i][1]) / 2;
}
printf("数学平均成绩:%d 英语平均成绩 :%d\n",sum1/50,sum2/50);
for(i = 0; i < 50; i++)
{
if(grade[i][0] < 60 && grade[i][1] <60)
{
n1++;
n2++;
}
else if (grade[i][0] < 60 || grade[i][1] <60)
n1++;
}
printf("至少一门不及格人数: %d 两门均不及格人数: %d",n1,n2);

return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-06-26
#define N 50
#define M 2
#include "stdio.h"
void main()
{int grad[N][M],i,j,s1=0,s2=0,count1=0,count2=0;
printf("xianshuru yinyu!!!\n");
for(i=0;i<=49;i++)
{for(j=0;j<=1;j++)
scanf("%d",&grad[i][j]);}
for(i=0;i<=49;i++)
s1=s1+grad[i][0];
for(i=0;i<=49;i++)
s2=s2+grad[i][1];
for(i=0;i<=49;i++)
{for(j=0;j<=1;j++)
if(grad[i][j]<60)
count1++;}
for(i=0;i<=49;i++)
{for(j=0;j<=1;j++)
if(grad[i][0]<60&&grad[i][1]<60)
count2++;}
for(i=0;i<=49;i++)
{for(j=0;j<=1;j++)
printf("%d ",grad[i][j]);
printf("\n");}
printf("yinyupingjunshu=%d\n",s1/50);
printf("shuxuepingjunshu=%d\n",s2/50);
printf("zhishaoyimenbujige=%d\n",--count1);
printf("liangmenbujige=%d\n",--count2);
}

纯数组编的 ,应该对你有用 可以用的
第2个回答  2009-06-26
WHILE循环,并不是很难的程序,理好思路自己写写
相似回答
大家正在搜