在c中填充字符数组

时间:2018-05-27 12:34:53

标签: c arrays

我正在尝试一次填充数组一个字符,然后一次打印出一个字符,但是当我输入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]);
    }

}

2 个答案:

答案 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。