永发信息网

c语言问题高手请帮忙

答案:5  悬赏:10  手机版
解决时间 2021-04-13 18:13
  • 提问者网友:遁入空寂
  • 2021-04-13 04:35

编写程序,输入一批学生的成绩,遇0或负数则输入结束,
要求统计并输出优秀(大于等于85)、通过(60-84)和不及格(小于60)
的学生人数。运行示例:
Enter scores:88 71 68 70 59 81 91 42 66 77 83 0
>=85:2
60-84:7
<60:2

怎么写啊 大家帮帮忙啊

最佳答案
  • 五星知识达人网友:詩光轨車
  • 2021-04-13 05:23
#include <stdio.h>
main()
{
int n,a,b,c;
a=b=c=0;
printf("Enter scores:");
scanf("%d",&n);
while(n>0)
{
if(n>=85) a++;
else if(n>=60&&n<=84) b++;
else if(n<60) c++;
scanf("%d",&n);
}
printf(">=85:%d\n",a);
printf("60-85:%d\n",b);
printf("<60:%d\n",c);
}
全部回答
  • 1楼网友:青尢
  • 2021-04-13 08:56

#include <stdio.h> void main( ) { int score; int A=0, B=0, C=0; printf("Enter scores:"); scanf ("%d", &score); while (score >= 0) { if(score >= 85) A++; else if (score >= 60) B++; else C++; scanf ("%d", &score); }

printf(">=85:%d\n", A); printf("60-84:%d\n", B); printf("<60:%d\n", C); }

  • 2楼网友:归鹤鸣
  • 2021-04-13 07:38

下面代码在6.0上通过:

#include <stdio.h> #define maxsize 100 void main() { float score[maxsize]; int i=0,j,num1=0,num2=0,num3=0; printf("Enter scores:"); scanf("%f",&score[0]); while (score[i]) { i++; scanf("%f",&score[i]); } for (j=0;j<i;j++) { if (score[j]>=85) { num1++; } else if(score[j]>=60) { num2++; } else num3++; } printf(">=85:%d\n",num1); printf("60-84:%d\n",num2); printf("<60:%d\n",num3); }

  • 3楼网友:撞了怀
  • 2021-04-13 07:11
多么简单啊!你可以找一下书上的例题,在这里不详细解答
  • 4楼网友:执傲
  • 2021-04-13 06:31

你定义三个变量进行累加运算,分别保存三个段之间的人数

三个段你可以用if也可以用switch来判断

输入成绩的结束判断都是基础内容了。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯