我正在尝试一次填充数组一个字符,然后一次打印出一个字符,但是当我输入5个字母时,它会切换到print语句,并打印出一堆垃圾值
#include <stdio.h>
#include <stdlib.h>
int main()
{
char work[10];
int i = 0;
for(i = 0;i<10;i++){
work[i] = getchar();
}
for(i = 0;i<10;i++){
printf("%c\n",work[i]);
}
}
答案 0 :(得分:-1)
试试这个并告诉我
#include <stdio.h>
#include <stdlib.h>
int main()
{
char work[10];
int i = 0;
for(i = 0;i<10;i++){
work[i] = getchar();
}
for(i = 0;i<10;i++){
putchar(work[i]);
}
}
答案 1 :(得分:-1)
调用getchar()时,可能会自动添加“\ n”。使用“./exec | cat -e”查看它们。
所以设置char work [20]和i&lt; 20。