#44346: <C>第一行WA,找不出問題


lihaoc97@gmail.com (river1002)

學校 : 不指定學校
編號 : 159312
來源 : [140.125.206.143]
最後登入時間 :
2024-12-05 17:43:46
c045. 00490 - Rotating Sentences -- UVa490 | From: [140.125.206.143] | 發表日期 : 2024-11-29 14:26

您的答案為: ***r*****R* thtiTetoSwsdIMaa,aettoUAtoecmooegOBreeoWpcva"i t     Rffa     
正確答案為: ***r*****R*CthtiTetoSwsdIMaa,aettoUAtoecmooegOBreeoWpcva"iStzmsrIRffaeseiF
#include <stdio.h>
#include <string.h>
int main()
{
    int index = 0,Max_char = 0,current_char = 0;
    char sentence[100][100];
    while (fgets(sentence[index],100,stdin)!=NULL)    
    {
        current_char =  0;
        for (int i = 0; sentence[index][i] != '\0'; i++)
        {
            current_char++;
            if (sentence[index][i] == '\n')
            {
                sentence[index][i] = '\0';
                index++;
                break;
            }
           
        }
        if (current_char > Max_char)
        {
            Max_char = current_char;
        }
       
    }
   
    for (int i = 0; i <= Max_char; i++)
    {
        for (int j = index-1; j >= 0; j--)
        {
            if (i < strlen(sentence[j]))
            {
                printf("%c", sentence[j][i]);
            }
            else
            {
                printf(" ");
            }
        }
        printf("\n");
       
    }
   
    return 0;
}
 
#44449: Re: <C>第一行WA,找不出問題


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.12.66.21]
最後登入時間 :
2025-04-20 17:19:22
c045. 00490 - Rotating Sentences -- UVa490 | From: [39.10.64.31] | 發表日期 : 2024-12-07 10:03

1.
    char sentence[100][100];
    while (fgets(sentence[index],100,stdin)!=NULL)    
2.
    for (int i = 0; i <= Max_char; i++)
 


1. 最多100字元,加上字串最後面的'\0',需要長度101的陣列才放得下

2. 迴圈執行太多次,會得到OLE

 
ZeroJudge Forum