| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 849 人关注过本帖
标题:有关循环结构while的用法,求破
只看楼主 加入收藏
初学者向隅
Rank: 1
等 级:新手上路
帖 子:27
专家分:5
注 册:2014-3-6
结帖率:75%
收藏
 问题点数:0 回复次数:12 
有关循环结构while的用法,求破
10个人,求在60~85分的总人数
我的程序是这样的,可是输不出人数,想问到底少了什么,如何才能让程序成功运行结果????
#include<stdio.h>
#define count 10
void main()
{
    int score;
    int n,sum;
    printf("请输入10个学生的成绩:");
    scanf("%d",&score);
    if((score>=0&&score<60)||(score>85&&score<=100))
        n==0;
    else
        n==1;
    while(score>=60&&score<=85)
    {
         sum+=n;
    }
    printf("成绩在60~85分之间的学生总人数:%d\n",sum);
}
搜索更多相关主题的帖子: include count 如何 
2014-03-19 22:27
RJPH
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-3-19
收藏
得分:0 
回复 楼主 初学者向隅
scanf应该包含在循环体里吧?不然照你这样只能输入一个成绩吧
2014-03-19 23:19
四维俊
Rank: 2
等 级:论坛游民
帖 子:21
专家分:46
注 册:2013-11-21
收藏
得分:0 
首先就是你的scanf输入的问题,你这样写只能输入一个分数,建议分数使用数组来存储,看看我下面写的:
#include<stdio.h>
int main(void)
{   
   int score[10],a,b=0;   
   printf("请输入10个学生的成绩\n");   
   for(a=0;a<10;a++)       //循环输入分数      
      scanf("%d",&score[a]);   
   for(a=0;a<10;a++)       //循环判断分数,符合条件的人数+1.     
   {    if(score[a]>60&&score[a]<85)        
        b=b+1;   
   }    printf("成绩在60-85的人数有%d人\n",b);   
   return 0;
}
2014-03-20 17:58
初学者向隅
Rank: 1
等 级:新手上路
帖 子:27
专家分:5
注 册:2014-3-6
收藏
得分:0 
回复 2楼 RJPH
scanf包含在里面就可以了吗???就这一个问题????????
2014-03-20 18:59
初学者向隅
Rank: 1
等 级:新手上路
帖 子:27
专家分:5
注 册:2014-3-6
收藏
得分:0 
回复 3楼 四维俊
可以不可以用while的循环结构,因为我还没学到for的循环结构
2014-03-20 19:01
esc345
Rank: 2
等 级:论坛游民
帖 子:25
专家分:45
注 册:2014-1-27
收藏
得分:0 
while(scanf("%d",&score)==1)
2014-03-22 23:51
初学者向隅
Rank: 1
等 级:新手上路
帖 子:27
专家分:5
注 册:2014-3-6
收藏
得分:0 
回复 6楼 esc345
很高兴你能回答我的问题,但是把while里面的东西换了也运行不了啊,亲!!!!
2014-03-24 21:16
icanbestrong
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:138
注 册:2013-3-13
收藏
得分:0 
还有是n=1或n=0,要赋值语句,而不是判断语句,还有还应规定score是大于0的吧
2014-03-24 21:47
一叶飘飘
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-2-23
收藏
得分:0 
看看这个吧

#include <stdio.h>

int main()
{
    int score[10]={0},a=0,b=0;   
    printf("请输入10个学生的成绩\n");   
   while(a<10)
   {   
       scanf("%d",&score[a]);
       if(score[a]>=60&&score[a]<=85)
            b=b+1;
       a=a+1;

  
    }    printf("成绩在60-85的人数有%d人\n",b);   
   
   return 0;

}

[ 本帖最后由 一叶飘飘 于 2014-3-27 07:42 编辑 ]
2014-03-24 22:08
初学者向隅
Rank: 1
等 级:新手上路
帖 子:27
专家分:5
注 册:2014-3-6
收藏
得分:0 
回复 9楼 一叶飘飘
谢谢,你这个可以了
不过应该这样if(score[a]>=60&&score[a]<=85)才符合我的题目
那个return 0;是用来干什么的啊???我试着把return 0;删掉也可以运行的
2014-03-24 22:26
快速回复:有关循环结构while的用法,求破
数据加载中...
 
   



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

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