| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1048 人关注过本帖
标题:各位有关于循环执行的问题
只看楼主 加入收藏
后卿
Rank: 4
来 自:网络
等 级:业余侠客
威 望:1
帖 子:302
专家分:295
注 册:2016-10-22
结帖率:81.71%
收藏
已结贴  问题点数:10 回复次数:8 
各位有关于循环执行的问题
#include<stdio.h>
int main()
{
    int grade;
    printf("enter grade");
    scanf("%d",&grade);
     switch(grade/10)
     {  case 9:printf("优秀");break;
        case 8:printf("良好");break;
        case 7:printf("一般");break;
        case 6:printf("及格");break;
        default:printf("不及格");break;
     }
     return 0;     
 }



这个要怎么修改才能不断输入数字然后输出呢,现在我的程序只能判断一次,就结束了。
搜索更多相关主题的帖子: default return 
2016-10-25 16:21
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:7 
在scnaf之前加循环体,如果想退出循环,那就设置循环结束条件

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-10-25 16:30
后卿
Rank: 4
来 自:网络
等 级:业余侠客
威 望:1
帖 子:302
专家分:295
注 册:2016-10-22
收藏
得分:0 
回复 2楼 九转星河
改成while(scanf("%d",&grade))
{
......
}
这样可以吗
2016-10-25 16:33
后卿
Rank: 4
来 自:网络
等 级:业余侠客
威 望:1
帖 子:302
专家分:295
注 册:2016-10-22
收藏
得分:0 
回复 2楼 九转星河
哦哦我知道了,用while 就行
2016-10-25 16:35
鸿蒙之灵
Rank: 4
来 自:异次元裂缝
等 级:贵宾
威 望:11
帖 子:126
专家分:244
注 册:2016-8-22
收藏
得分:0 
回复 楼主 后卿
程序代码:
#include "stdafx.h"
#include <stdlib.h>
#include<stdio.h>
int main()
{
    int grade;
    printf("请输入成绩(当输入为 -1 时,结束运行):");
    for(int i=0;;i++)
    {    
        if(i>=1)
        {
            printf("请再次输入成绩(当输入为 -1 时,结束运行):");
        }
        scanf("%d",&grade);
        if(grade==-1)
        {
            break;
        }
        switch(grade/10)
        {  
            case 9:printf("优秀\n");break;
            case 8:printf("良好\n");break;
            case 7:printf("一般\n");break;
            case 6:printf("及格\n");break;
            default:printf("不及格\n");break; 
        }
    }
    system("pause");
    return 0;     

 }




附上运行图一张
另外,建议楼主加上对输入数字范围的限制,如果输入一个不可能的分数,需要程序给出报错提示,并且,grade可以是double型数据,不一定就是int,楼主可以自己动手改

图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2016-10-25 16:44编辑过]

收到的鲜花
  • 后卿2016-10-29 11:47 送鲜花  3朵   附言:原创内容

对待编程,要像对待情人一样
2016-10-25 16:42
qw1395988137
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-10-18
收藏
得分:0 
要加个循环语句 for while do while 语句才可以
2016-10-25 16:42
后卿
Rank: 4
来 自:网络
等 级:业余侠客
威 望:1
帖 子:302
专家分:295
注 册:2016-10-22
收藏
得分:0 
回复 5楼 鸿蒙之灵
版主你这个i有什么作用啊,还有那个If里面的-1可不可以改成其他负数,比如-2行吗
2016-10-29 11:47
鸿蒙之灵
Rank: 4
来 自:异次元裂缝
等 级:贵宾
威 望:11
帖 子:126
专家分:244
注 册:2016-8-22
收藏
得分:0 
i 的作用:控制循环,第一次程序提醒用户输入是在循环体外,所以在循环体内需要判断 当i>1的时候,界面显示提醒用户再次输入,循环体外和循环体内的提示不同,你注意看一下



至于if里面的-1,只是判断用户是否想要结束程序的一个标记,如果输入-1,就结束,可以由你设置,但是前后逻辑要一致,绝对不允许出现提示用户输入-2结束,结果实际运行输入-1才能结束这种前后不一致的情况

对待编程,要像对待情人一样
2016-11-01 10:28
hykj9495
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:4
帖 子:796
专家分:1441
注 册:2016-6-6
收藏
得分:0 
-1是结束标志可以任意定义,有且只有一个,你要是设置的话

慢慢调试
2016-11-01 11:31
快速回复:各位有关于循环执行的问题
数据加载中...
 
   



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

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