LNH_Sniper 发表于 2011-4-20 20:19:30

关于SCANF PRINTF 问题

本帖最后由 soldier 于 2011-4-23 09:23 编辑

void insert_list(Sqlist *L)   //Recover Questions!!
{
        int local, length;
                char elem;
        length = L->length;
        printf("Set The Posization You Want!!\n");
        scanf("%d",&local);
        printf("The Elem: ");
        scanf("%c",&elem);                        //size limit
}

看上面的输入函数,我遇到这样一个问题 在第一个SCANF 输入结束后,第二个SCANF被程序跳过了,我觉得是因为最后一个回车 被第二个SCANF 认为成输入了一个回车的字符 ,所以 跳过了,但我本意不是这样的,我应该如何操作?

小甲鱼 发表于 2011-4-21 02:03:38

可以用getchar()将‘\n’过滤掉,也可以用专门的清楚缓冲区函数fflush()

LNH_Sniper 发表于 2011-4-21 12:00:34

了解了 小甲鱼

鱼C工作室.YCGZS 发表于 2015-12-13 12:03:30

我也了解了
页: [1]
查看完整版本: 关于SCANF PRINTF 问题