标题:不知是不是缓存问题。
只看楼主
l987748110
Rank: 1
等 级:新手上路
帖 子:15
专家分:8
注 册:2011-10-31
结帖率:0
已结贴  问题点数:20 回复次数:3 
不知是不是缓存问题。
#include<iostream>
using namespace std;
void main()
{
    char k=1;
    while(k)
    {
        int r=0,time;
        cout<<"请输入表演时间:\n";//在这里没有停?
        cin>>time;
        if(time<=0)
        {
            cout<<"您输入的时间错误(数字>0)\n错误星数为:";
            while( (getchar())!='\n' )//清除缓存
            {
                cout<<"* ";
            }
            cout<<endl;
            continue;
        }
    }
}
   
我想要的功能是:输入不是数字,或者<0的数字,重新输入。
搜索更多相关主题的帖子: include 表演 continue 
2011-11-05 10:40
l987748110
Rank: 1
等 级:新手上路
帖 子:15
专家分:8
注 册:2011-10-31
得分:0 
大侠  解决    大侠  解决!!!
2011-11-05 12:35
kuangdang178
Rank: 2
等 级:论坛游民
帖 子:12
专家分:32
注 册:2011-11-4
得分:20 
刚做了下!代码是这样的!只满足了是不是数字!剩下的《0你自己看着改吧!
程序代码:
#include<iostream>
using namespace std;
void main()
{
    char i;
    cout<<"请输入:"<<endl;
    cin>>i;
    while(i<48||i>57)
    {
        cout<<"请重新输入:"<<endl;
    cin>>i;
    }
    cout<<"结果为i:"<<i<<endl;
}
没看懂你给出来的是什么程序!好像不是这个程序的吧!
2011-11-05 13:19
l987748110
Rank: 1
等 级:新手上路
帖 子:15
专家分:8
注 册:2011-10-31
得分:0 
这个是我写的程序的一部分啊    就是这里输错的怎么弄的   我定义的time是整形的    如果是字符那么就会是0  所以判断输入错误    然后就是清除缓存里的东西   然后结束本次循环 继续下一次  这里的k是程序下面需要的  没有写出来    不过运行起来就错了
2011-11-05 13:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-354341-1-1.html




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

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