#include<stdio.h>
int main()
{
int n,i;
scanf("%d",&n);
char vote[n];
for(i=0;i<n;i++)
{
scanf("%c",&vote[i]);
}
for(i=0;i<n;i++)
{
printf("%c",vote[i]);
}
return 0;
}
它没有获得第二个值,在获得第一个值后,它会输出第一个值
如果我为3
提供n
,则必须获得三个char
值,并且必须打印三个char
值,但代码无法正常运行。
答案 0 :(得分:0)
scanf
中的缓冲区问题。在scanf
中添加空格,因为%c
不会跳过空格并终止。
scanf(" %c",&vote[i]);
代替scanf("%c",&vote[i]);