首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请教对于这个函数,如果输入字母a,调试的时候不断执行if语句,不断的输出printf内容,这个达不到如果输入错了再可以重新输入的效果,求解

2013-07-01 
请问对于这个函数,如果输入字母a,调试的时候不断执行if语句,不断的输出printf内容,这个达不到如果输入错了

请问对于这个函数,如果输入字母a,调试的时候不断执行if语句,不断的输出printf内容,这个达不到如果输入错了再可以重新输入的效果,求解.
本帖最后由 snake406635029 于 2013-06-04 09:11:00 编辑

void A()
{
int temp_c = 0 ;
printf("等待输入...\n");
scanf("%d",&temp_c);
if(temp_c < 1 || temp_c > 4)
{
printf("您输入的有误,请重新输入:\n");
A();
}
}
C scanf
[解决办法]
添加刷新缓存语句即可:

void A()
{
    int temp_c = 0 ;
    printf("等待输入...\n");
    scanf("%d",&temp_c);
    if(temp_c < 1 
[解决办法]
 temp_c > 4)
    {
        printf("您输入的有误,请重新输入:\n");
fflush(stdin);//刷新输入缓存。
        A();
    }
}

热点排行