作者td2100106 (中山廢文最後希望)
看板Programming
標題[問題] 程式執行問題
時間Thu Aug 29 02:04:58 2019
各位好~
小弟我剛接觸C沒有多久
為了加強程度有上高中生程式解題系同刷一些題目
像這題是有關迴文的題目
題目如下:
迴文的定義為正向,反向讀到的字串均相同
如:abba , abcba ... 等就是迴文
請判斷一個字串是否是一個迴文?
我的疑問是我原本的程式碼在DEV C++執行是沒有問題的
不過拿去網站提交答案是
會一直跑出tle(1s)這個東西
上網稍微查過
似乎是程式執行的太慢?!
不過我檢查過我的程式蠻多次
也不知道哪裡出問題
還請各位指點我一下
讓我知道我程式哪裡有問題
謝謝!
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char ch[1000],i=0,sum=0,flag=1;
scanf("%s",&ch);
while(ch[i]!=0)
{
i++;
sum=sum+1;
}
for(i=0;i<=sum/2;i++)
{
if(ch[i]!=ch[(sum-1)-i])
{
flag=0;
}
}
if(flag==0)
{
printf("no\n");
}
else
{
printf("yes\n");
}
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.50.186.119 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Programming/M.1567015506.A.50E.html
※ 編輯: td2100106 (110.50.186.119 臺灣), 08/29/2019 02:08:03
1F:推 idiont: 不需要system pause125.231.37.217 08/29 03:01
2F:推 cutekid: printf("請輸入字串") <- ??????1.168.25.219 08/29 03:31
3F:→ td2100106: 不過我剛剛把system(pause)跟printf110.50.186.119 08/29 09:34
4F:→ td2100106: 那段刪掉還是跑出一樣的結果110.50.186.119 08/29 09:34
※ 編輯: td2100106 (110.50.186.119 臺灣), 08/29/2019 09:34:50
5F:→ idiont: char的範圍比1000還小 所以你的i跟sum都可 125.231.37.217 08/29 10:01
6F:→ idiont: 能overflow 125.231.37.217 08/29 10:01
7F:→ pmove: 同樓上,原po的程式碼,字串長度需小於1000223.136.232.190 08/29 12:37
8F:→ pmove: ,但題目有說字串長度小於1000嗎?223.136.232.190 08/29 12:37
9F:→ idiont: 有哦 125.231.37.217 08/29 12:46
10F:→ pmove: 那方便公佈題目網址嗎?223.136.232.190 08/29 13:23
11F:推 pmove: 如果是a022這題的話,我拿到AC了。要注意sc223.136.232.190 08/29 13:42
12F:→ pmove: anf需要多次執行,可能要用while hold住223.136.232.190 08/29 13:42
13F:→ pmove: 我把你的code上傳,是WA不是tle,是我搞錯系223.136.232.190 08/29 13:58
14F:→ pmove: 統?還是?223.136.232.190 08/29 13:58
15F:→ kiedveian: i 的 type 用 char ? 36.227.35.10 08/29 16:26
16F:→ kiedveian: 原來上面的推文有講了 36.227.35.10 08/29 16:27
17F:推 idiont: 我是猜測原po是在問a022 不過題目敘述的輸 223.141.42.186 08/29 18:10
18F:→ idiont: 入是寫"一個字串" 實際情況我也不清楚 我 223.141.42.186 08/29 18:10
19F:→ idiont: 沒有自己測試過 223.141.42.186 08/29 18:10
20F:推 MatTZerS: Scanf 用%s 後面的變數不用&吧 223.139.127.8 10/09 00:56