Zclub討論區 Z板

 找回密码
 註冊
搜索
查看: 437|回复: 13

請教C語言達人..

[复制链接]
发表于 2005-9-25 23:05:11 | 显示全部楼层 |阅读模式

求救偉大萬能的Z族....Q_Q....
小弟的作業:輸入比如..1234@(@代表結束)
           輸出:4321(@不需要輸出螢幕)
或是輸入abcdef@
輸出fedcba

剛剛小弟有到網路上找到了一點範例..
也找到了turbo c..
但是就是執行不出來..
所以上來求助各位了Orz..
#include <stdio.h>
void main( )
{
char  y[30];
int i,s,count=0;
    printf ("123:");
while (( s = getchar( )) != '\n' )
     y[count++] = s;
     printf ("\n Reverse the sentence is as following : \n");
 for ( i = count-1; i >= 0; i-- )
     putchar(y[i]);
      }

幫忙看看吧..感謝各位啦^^..

发表于 2005-9-25 23:18:53 | 显示全部楼层
turbo c 跟C++的寫法可以說差不多
但還有是差的~這就是C的問題了
我C是不強啦~~但你的問題在一些書上都有教喔
你要看清楚你到底是turbo c 還是C++喔  因為我以前也有碰過這問題
問了老師才知道有差別的
回复

使用道具 举报

发表于 2005-9-25 23:26:59 | 显示全部楼层
回覆給: () { opdetail('spring63444') }" 灰色天空之熊~~
是C語言~而不是C++哦^^"..
謝謝啦^^"..老師問了也不跟我講一一..叫我們自己想辦法..
回复

使用道具 举报

发表于 2005-9-25 23:35:38 | 显示全部楼层
回覆給:加藤~*ˊ/ 皓 ˋ*~[74團..團員ˋ* 72 *ˊ]

這樣啊~~~老師這麼OX我也沒法子~
C很久沒碰了~~手上也沒書~你看看書上吧
我記的因該都有差不多的~~照著改就OK吧~~
來去睡嚕~~~明天要上班
回复

使用道具 举报

发表于 2005-9-25 23:49:49 | 显示全部楼层
回覆給:~*<宇川皓>*~..ˋ* 72 *ˊ
我不會寫c...
不過..
這個範例看起來還蠻正常的....



你不會是turbo c的環境沒弄好吧?比如說stdio.h找不到之類的..
有錯誤訊息嗎?
回复

使用道具 举报

发表于 2005-9-25 23:57:36 | 显示全部楼层
回覆給:~*<宇川皓>*~..ˋ* 72 *ˊ

我只能大概解釋一下那個範例...


#include <stdio.h>    //載入標準輸入/輸出函式庫
void main( )
{
    //變數宣告
    char  y[30];
    int i,s,count=0;

    //秀出輸入提示句
    printf ("Input you words:");

    //抓取輸入的字,一直到輸入enter為止(最多30個)
    //windows系統的話,可以把底下的'\n'改成'\r\n'試試,也許問題是出在這
    while (( s = getchar( )) != '\n' )
         y[count++] = s;

    //秀出要反向輸出的提示句
    printf ("\n Reverse the sentence is as following : \n");

    //反向輸出
     for ( i = count-1; i >= 0; i-- )
         putchar(y[i]);
}
回复

使用道具 举报

发表于 2005-9-26 00:34:34 | 显示全部楼层
回覆給:大丙
XD..大丙~我有看過你的故事!!!印象深刻阿XD..
錯誤訊息我看不大懂..
程式上面我也覺得沒什麼大問題..
可是執行就是執行不出來..
不過有個疑問就是..@代表要把它結束掉..
這個真的有點傷腦筋..
大丙兄感謝你啦^^..不懂的還需請教您呢..
回覆給:灰色天空之熊..
我們的書還沒發...XD..
不過還是很謝謝你^^..
早點休息晚安拉^^"
回复

使用道具 举报

发表于 2005-9-26 00:39:00 | 显示全部楼层
回覆給:~*宇川皓>*~→ˋ* 72 *ˊ
你意思是說一定要用"@"來結束嗎?
那就把
while (( s = getchar( )) != '\n' )
改成
while (( s = getchar( )) != '@' )
這樣就行啦 ^^
回复

使用道具 举报

发表于 2005-9-26 01:19:09 | 显示全部楼层
回覆給:~*<宇川皓>*~..ˋ* 72 *ˊ

參考看看吧!!
設計一程式,輸入5個字元,她會反向列出,你要的是這意思吧??

#include <stdio.h>
 main
{
int c1,c2,c3,c4,c5;
clrscr();
printf("Please input a string:");
scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5);
printf("The reverse string is");
printf("%c%c%c%c%c",c5,c4,c3,c2,c1);
getch();
}

以上為其中一種寫法另一種不限字串長度太久沒寫要想一下.......
回复

使用道具 举报

发表于 2005-9-26 01:20:32 | 显示全部楼层
對啦想到了!!就是上面大大說的while迴圈啦......
回复

使用道具 举报

发表于 2005-9-26 01:33:26 | 显示全部楼层
回覆給大丙:
就比如說..我輸入了12345@
然後他輸出會變成54321..而那個@老師是說就等於停止的條件而輸出時不會印出來..
不好意思~大丙兄~再請教您一個問題..屙.該用什麼軟體執行阿= =+..(抖)..
不是小弟不知道..實在是..TOUBO C有夠..XD的..Orz
大丙兄感謝你阿~這麼晚了還幫小弟解答.謝謝啦^______^"..不懂的再請教您囉..
題外話:剛剛還特地去搜尋了一下小丙兄跟大丙兄的故事(汗)....自從那次開始....我就不曾看過.................
XD..我又笑了...(汗)..
回覆給sean:
sean兄也感謝你^______^
回复

使用道具 举报

发表于 2005-9-26 02:09:30 | 显示全部楼层
回覆給:~*宇川皓>*~→ˋ* 72 *ˊ
哈~~turbo C反而比較容易點啦
如果去搞gcc的話那更累了
確定沒問題就行啦...

我剛跟你講要改的那個地方就是停止條件
輸出的時候不會印出來的

要執行程式...Turbo C裏面應該有個run的地方(不確定...忘了..)
不然就是先把他compile成exe檔,再去執行那個exe檔囉

我的也只有稍微看的懂的程度而已...要我寫還真是連一個都寫不出來 :p
不用客氣啦~幫不上什麼忙
這下換我要去睡囉~~
(你該不會明天要交吧?)
回复

使用道具 举报

发表于 2005-9-26 02:12:43 | 显示全部楼层
回覆給:~*宇川皓>*~→ˋ* 72 *ˊ
對了...如果你不會compile的話...跟你講一下大致的步驟..
基本上就是先把程式compile成.obj檔
然後看程式有用到什麼函式庫(像你現在這個就是用到stdio.h),把他們link起來
最後就變exe檔,就可以執行了
有的compiler會自動幫你找該link的函式庫,那種就可以直接叫他compile,一個步驟就可以完成了
回复

使用道具 举报

发表于 2005-9-26 09:23:37 | 显示全部楼层
回覆給:大丙..
(汗)..
完了..大丙兄講的我都聽不懂..囧rz..
下禮拜一要交~10月3號說..CCC
我先找同學討論看看~不懂得在請教大丙兄拉~~~
屋屋..好感動阿Q_Q...Z族果然是萬能的XD..
回复

使用道具 举报

Yahoo
您需要登录后才可以回帖 登录 | 註冊

本版积分规则

手機版|Archiver|Z板 Sitetag 訪客統計

GMT+8, 2024-11-23 11:31 , Processed in 0.309491 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表