| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 789 人关注过本帖
标题:求助:实在搞不定了,能帮忙排个错吗?
只看楼主 加入收藏
learningC
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-2-5
收藏
 问题点数:0 回复次数:5 
求助:实在搞不定了,能帮忙排个错吗?
想编写一个程序:输入考试分数,统计不同分数段的人数.
分数段为: 90-100,80-89,70-79,60-69,50-59,小于50
由于每次考试人数不固定,所以要先确定人数.

自己编了段代码,可是程序却总不能够正常运行,各位帮忙排个错吧,谢谢!

编程环境: VC++ 6.0 英文版

程序代码:
#include<stdio.h>
void main()
{
  /*定义变量: i为考试人数,j为循环控制变量,fs为成绩变量,best,better,good,jg,bjg,cha为分数段统计变量*/
  int i=0,j,fs=0,best=0,better=0,good=0,jg=0,bjg=0,cha=0;
  printf("输入考试人数:");
  scanf("%d",&i);
   for(j=1;j<=i;j++)    
   {
        printf("请输入成绩:");
        scanf("&d \n",&fs);
         if (fs>=90) best++;
         if (fs>=80) better++;
         if (fs>=70) good++;
         if (fs>=60) jg++;
         if (fs>=50) bjg++;
         if (fs>=0)  cha++;
   }
    printf("\n90-100: %d 人        80-89: %d 人        70-79 : %d 人\n\n",best,better,good);
    printf("60-69 : %d 人        50-59: %d 人        小于50: %d 人\n",jg,bjg,cha);
}

运行结果:
输入: 4

输出:
输入考试人数:4
输入成绩:输入成绩:输入成绩:输入成绩:
90-100: 0 人            80-89: 0 人             70-79 : 0 人

60-69 : 0 人            50-59: 0 人             小于50: 4 人
搜索更多相关主题的帖子: better include 英文版 统计 
2008-02-05 23:42
闪闪4521
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2007-11-30
收藏
得分:0 
scanf("&d \n",&fs);
这个错了,
2008-02-06 11:30
sxn0508
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2008-1-24
收藏
得分:0 
程序代码:
/*经dev-cpp验证成功*/
#include<stdio.h>
int main()
{
  /*定义变量: i为考试人数,j为循环控制变量,fs为成绩变量,best,better,good,jg,bjg,cha为分数段统计变量*/
  int i=0,j,fs=0,best=0,better=0,good=0,jg=0,bjg=0,cha=0;
  printf("输入考试人数:");
  scanf("%d",&i);
   for(j=1;j<=i;j++)    
   {
        printf("请输入成绩:");
        scanf("%d",&fs);/*这里要用%d*/
         if (fs>=90) best++;
         else if (fs>=80) better++;/*这里只用if的话,逻辑就有点问题*/
         else if (fs>=70) good++;
         else if (fs>=60) jg++;
         else if (fs>=50) bjg++;
         else if (fs>=0)  cha++;
   }
    printf("\n90-100: %d 人        80-89: %d 人        70-79 : %d 人\n\n",best,better,good);
    printf("60-69 : %d 人        50-59: %d 人        小于50: %d 人\n",jg,bjg,cha);
    getch();
}
2008-02-06 12:01
蓝色神话
Rank: 2
等 级:论坛游民
威 望:1
帖 子:404
专家分:24
注 册:2006-5-11
收藏
得分:0 
楼上改的是对的,楼主在分枝判断上逻辑有点问题!
2008-02-06 17:01
『点点滴滴』
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:168
专家分:1035
注 册:2007-7-9
收藏
得分:0 
#include<stdio.h>
void main()
{
  /*定义变量: i为考试人数,j为循环控制变量,fs为成绩变量,best,better,good,jg,bjg,cha为分数段统计变量*/
  int i=0,j,fs=0,best=0,better=0,good=0,jg=0,bjg=0,cha=0;
  printf("输入考试人数:");
  scanf("%d",&i);
   for(j=1;j<=i;j++)   
   {
        printf("请输入成绩:");
        scanf("%d",&fs);
         if (fs>=90) best++;
         if (fs>=80&&fs<90) better++;
         if (fs>=70&&fs<80) good++;
         if (fs>=60&&fs<70) jg++;
         if (fs>=50&&fs<60) bjg++;
         if (fs>=0&&fs<50) cha++;
   }
    printf("\n90-100: %d 人        80-89: %d 人        70-79 : %d 人\n\n",best,better,good);
    printf("60-69 : %d 人        50-59: %d 人        小于50: %d 人\n",jg,bjg,cha);

}
2008-02-06 17:35
learningC
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-2-5
收藏
得分:0 
非常感谢,没有想到是那里错了.
我一直以为是for语句的里第二个循环条件有问题:)
原来不是.

非常感谢3楼,祝春节快乐!
2008-02-07 00:53
快速回复:求助:实在搞不定了,能帮忙排个错吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019912 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved