【问题标题】:I have a problem in my code i can't print the output result我的代码有问题,我无法打印输出结果
【发布时间】:2021-05-04 02:17:19
【问题描述】:

两行,每行包含一个字符。

输入样本

C
U

输出格式

多行,每行包含一个字符。

输出样本

C
U

我的代码:

#include <stdio.h>
#define SIZE 10

int main(void) {
    char string[3][SIZE];
    int i, j;
    int c;

    for(i = 0; i < 3; i++)
      for(j = 0; j < SIZE; j++){
        string[i][j] = 0;
      }
    printf("Enter three lines of text:\n");

    for (i = 0; i < 3; i++) {
        j = 0;
        while ((j < SIZE) && ((c = getchar()) != '\n')) {
            string[i][j] = c;
            j++;
        }
    }

    for (i = 0; i < 3; i++) {
        for (j = 0; j < SIZE; j++) {
            printf("%c", string[i][j]);
        }
        printf("\n");
    }

    return 0;
} 

【问题讨论】:

  • 好的,不要在评论中发布代码。谁能读懂?编辑您的问题,将代码粘贴到问题中并格式化为code block。也采取tour 并阅读How to Ask
  • 完成了,对不起,对不起

标签: c


【解决方案1】:

打印时,应在 string[i][j] 为零(该位置无字符)时中断 for 循环。

for (i = 0; i < 3; i++) {
    for (j = 0; j < SIZE; j++) {
        if (string[i][j] == 0)
            break;
        printf("%c", string[i][j]);
    }
    printf("\n");
}

【讨论】:

    猜你喜欢
    • 2019-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-20
    相关资源
    最近更新 更多