首页 > 代码库 > scanf()中的%c 不能正常输入的问题

scanf()中的%c 不能正常输入的问题

#include <stdio.h>int main(){    char a;    int b;    scanf("%d",&b);    scanf("%c",&a);/******************************/    printf("%d",b);    printf("%c",a);    return 0;    /*    应该输入一个整型一个字符型变    量,然后把它们输出,但是现在    只能输入一个整型变量,很蛋疼    的问题吧!!    */}

解决办法:

#include <stdio.h>int main(){    char a;    int b;    scanf("%d",&b);    getchar();//   getchar作用和%c一样,这样就能去除干扰了    scanf("%c",&a);/******************************/    printf("%d",b);    printf("%c",a);    return 0;}

或者:

#include <stdio.h>int main(){    char a;    int b;    scanf("%d\n",&b);    //在输入流中强制加一个换行符    scanf("%c",&a);/******************************/    printf("%d",b);    printf("%c",a);    return 0;}

感谢原作者:http://lib.csdn.net/article/c/25608

scanf()中的%c 不能正常输入的问题