我最近在学习scanf的具体使用。然后遇到了一个问题就是,当我只想给数组的一个元素输入scanf输入的值的时候,无法输入,也无法显示。
程序是这样的:
#include
#include
void main()
{
char a;
char b[10];
char c[10];
char *p;
p=b;
printf("a=");
scanf("%c",&a);
printf("b=");
scanf("%s",b);
printf("a=%c\n",a);
printf("b=%s\n",b);
printf("p=b=");
scanf("%s",p);
printf("c=");
scanf("%c",&c[0]);
printf("p=%s\n",p);
printf("c[0]=%c\n",c[0]);
}
结果是这样的:
a=a
b=apple
a=a
b=apple
p=b=pineapple
c=p=pineapple
c[0]=
程序直接跳过了c=之后的scanf,这是为什么呢?