#12013: C 為何輸出短少WA???


sos06096 (Ovuvuvuevue)

學校 : 國立臺北科技大學
編號 : 64498
來源 : [118.150.174.177]
最後登入時間 :
2020-04-05 15:46:16
a010. 因數分解 | From: [180.217.155.163] | 發表日期 : 2017-05-09 21:08

輸出短少求解? 謝謝

 

#include <stdio.h>

main()
{
int num[20] , pwr[20];

int m, i, j, k = 0;    //m 待測數 i 因數 j次方數 k陣列號碼

int a;   //印出來用 的變數

while(scanf("%d", &m) == 1)
{
i = 2;

while (m != 1)
{

if(m % i == 0)
{
num[k] = i;

for(j = 0; m % i == 0; j++)
m /= i;

pwr[k++] = j;

}

i++;
}

break;
}

for(a = 0; a < k; ++a)
{
printf("%d", num[a]);

if(pwr[a] != 1)

printf("^%d", pwr[a]);

if(a != k-1 )     //最後一ㄍ 後面沒有 不用印

printf(" * ");

}



}

 

 
#12018: Re:C 為何輸出短少WA???


sos06096 (Ovuvuvuevue)

學校 : 國立臺北科技大學
編號 : 64498
來源 : [118.150.174.177]
最後登入時間 :
2020-04-05 15:46:16
a010. 因數分解 | From: [180.217.130.108] | 發表日期 : 2017-05-12 14:43

輸出短少求解? 謝謝

 

#include

main()
{
int num[20] , pwr[20];

int m, i, j, k = 0;    //m 待測數 i 因數 j次方數 k陣列號碼

int a;   //印出來用 的變數

while(scanf("%d", &m) == 1)
{
i = 2;

while (m != 1)
{

if(m % i == 0)
{
num[k] = i;

for(j = 0; m % i == 0; j++)
m /= i;

pwr[k++] = j;

}

i++;
}

break;
}

for(a = 0; a < k; ++a)
{
printf("%d", num[a]);

if(pwr[a] != 1)

printf("^%d", pwr[a]);

if(a != k-1 )     //最後一ㄍ 後面沒有 不用印

printf(" * ");

}



}

 

分開測答案對 到底哪裡有問題??QQ


 
#12022: Re:C 為何輸出短少WA???


anandrewboy70900 (ShowTsai)

學校 : 國立中央大學
編號 : 27736
來源 : [203.204.218.144]
最後登入時間 :
2024-02-07 22:53:10
a010. 因數分解 | From: [101.14.85.158] | 發表日期 : 2017-05-13 01:07

是不是沒換行

 
#12024: Re:C 為何輸出短少WA???


sos06096 (Ovuvuvuevue)

學校 : 國立臺北科技大學
編號 : 64498
來源 : [118.150.174.177]
最後登入時間 :
2020-04-05 15:46:16
a010. 因數分解 | From: [1.200.194.192] | 發表日期 : 2017-05-13 10:37

是不是沒換行

#include <stdio.h>

 

main()

{

int num[20] , pwr[20];

 

int m, i, j, k = 0;

 

int a; //印出來用 的變數 

 

while(scanf("%d", &m) == 1)

{

i = 2;

 

while (m != 1)

{

 

if(m % i == 0)

{

num[k] = i;

 

for(j = 0; m % i == 0; j++)

m /= i;

 

pwr[k++] = j;

 

 

i++;

}

 

break;

}

 

for(a = 0; a < k; ++a)

{

printf("%d", num[a]);

 

if(pwr[a] != 1)

 

printf("^%d", pwr[a]);

 

if(a != k-1 )

 

printf(" * ");

 

}

 

printf("\n");

     

  

 

}

 

 

第 1 測資點(100%): WA (line:2) 
輸出短少 

您共輸出 1 行。

我在devc++答案都對ㄟ 他的測資是分開測三次對吧 求助QQ

 



 
#12026: Re:C 為何輸出短少WA???


sos06096 (Ovuvuvuevue)

學校 : 國立臺北科技大學
編號 : 64498
來源 : [118.150.174.177]
最後登入時間 :
2020-04-05 15:46:16
a010. 因數分解 | From: [1.200.194.192] | 發表日期 : 2017-05-13 12:30

#include <stdio.h>

 

 

main()

 

{

 

int num[20] , pwr[20];

 

 

int m, i, j, k;

 

 

int a; 

 

 

while(scanf("%d", &m) != EOF)

 

{

 

k = 0;

 

i = 2;

 

 

while (m != 1)

 

{

 

 

if(m % i == 0)

 

{

 

num[k] = i;

 

 

for(j = 0; m % i == 0; j++)

 

m /= i;

 

 

pwr[k++] = j;

 

 

 

 

i++;

 

}

 

 for(a = 0; a < k; ++a)

 

{

 

printf("%d", num[a]);

 

 

if(pwr[a] != 1)

 

 

printf("^%d", pwr[a]);

 

 

if(a != k-1 )

 

 

printf(" * ");

 

 

}

 

printf("\n");

 

}

 

 

}

 

第 1 測資點(100%): AC (0ms, 72KB) 
通過檢測 

 

 

測資連續測三次 好像是這樣 謝謝

 
#12027: Re:C 為何輸出短少WA???


anandrewboy70900 (ShowTsai)

學校 : 國立中央大學
編號 : 27736
來源 : [203.204.218.144]
最後登入時間 :
2024-02-07 22:53:10
a010. 因數分解 | From: [124.12.89.61] | 發表日期 : 2017-05-13 19:21

 

是連續的阿

所以才需要重複輸入

while(scanf("%d", &m) == 1)




 
ZeroJudge Forum