【问题标题】:Printing this array in C用 C 打印这个数组
【发布时间】:2015-09-26 19:50:54
【问题描述】:

我将文本文件中的字符串存储到两个不同的数组中。文本文件的一行示例如下所示

(单词);(单词2)

Word 被存储到 eng[] 中,而 word2 将被存储到 pir[]。

i = 0;
int currentChar;
while( currentChar != EOF ) {   
    fscanf(inFile, "%[^;]; %[^\n]", eng[i], pir[i]);

    printf("%s ", pir[i]);
    currentChar = fgetc( inFile );

    i++;

}

如果我循环打印出 eng[] 中的所有元素,我会将里面的所有内容都打印出来。

 printf("%s ", eng[i]);

但是当试图打印出 pir 数组时,我没有得到同样的结果。为了打印出每个元素,我需要这样做

 printf("%s\n", pir[i]);

但是当我希望它全部在一行上时,它会将每个元素打印在单独的行上。

我不确定它为什么会这样做(我是 C 新手)。为什么会发生这种情况,我该怎么做才能让它打印在一行上?

【问题讨论】:

  • 试试printf("%s ", pir[i]);fflush(stdout);

标签: c arrays printing scanf


【解决方案1】:

printf("%s\n", pir[i]); 必须是 printf("%s", pir[i]);

【讨论】:

    猜你喜欢
    • 2021-04-03
    • 1970-01-01
    • 2014-05-20
    • 1970-01-01
    • 2010-11-25
    • 2011-02-09
    • 1970-01-01
    • 2018-03-03
    • 1970-01-01
    相关资源
    最近更新 更多