SOGO論壇
  登入   註冊   找回密碼
查看: 1036|回覆: 4
列印 上一主題 下一主題

[問題求助] 各位高手幫我解決C語言的問題 [複製連結]

Rank: 2

狀態︰ 離線
跳轉到指定樓層
1
發表於 2010-9-26 13:04:16 |只看該作者 |倒序瀏覽
一、除錯
1.下面這個程式進行除法運算,請問當中有何錯誤?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     printf("x /y = %f\n", x/y);
     return 0;
}
2.有個學生為了修正上一個問題之錯誤,而改寫程式如下,但結果仍然不對,請問錯誤在哪邊?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     float z;
     z = x / y;
     printf("x / y = %f\n", z);
     return 0;
}
3.下面這個程式用來比較x與y是否相等,但程式執行結果有誤,請問哪邊出了錯誤?
#include <stdio.h>

int main(void)
{
     int x, y;
     printf("x = ");
     scanf("%d", &x);
     printf("y = ");
     scanf("%d", &y);
     if (x = y)
         printf("x = y");
     return 0;
}
下面這個程式顯示結果有些不正常,請問應如何修改?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     printf("x % y = %d\n", x%y);
     return 0;
}

二、討論與實作
1.月球引力約為地球引力的17%,請設計程式讓使用者輸入體重,以求得其於月球上之體重。
2.下面這個程式會顯示何種結果?
#include <stdio.h>

int main(void)
{
     int A = 23, B = 0, C;
     C = A & B && B & C;
     printf("C = %d\n", C);
     return 0;
}
喜歡嗎?分享這篇文章給親朋好友︰
               感謝作者     

Rank: 2

狀態︰ 離線
2
發表於 2010-9-27 23:31:50 |只看該作者
一、除錯
1.下面這個程式進行除法運算,請問當中有何錯誤?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     printf("x /y = %f\n", x/y);
     return 0;
}

ans:一般來說如果要得到小數點輸出格式,須修正x y 的資料型態 改為浮點數

2.有個學生為了修正上一個問題之錯誤,而改寫程式如下,但結果仍然不對,請問錯誤在哪邊?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     float z;
     z = x / y;
     printf("x / y = %f\n", z);
     return 0;
}

ans:同1,須修正x y 的資料型態 改為浮點數才能得到正確的z,1跟2的問題在一般較新的編譯器應該都會自動判別合適資料型態只是可能會產生警告

3.下面這個程式用來比較x與y是否相等,但程式執行結果有誤,請問哪邊出了錯誤?
#include <stdio.h>

int main(void)
{
     int x, y;
     printf("x = ");
     scanf("%d", &x);
     printf("y = ");
     scanf("%d", &y);
     if (x = y)   ans:if(x==y)
         printf("x = y");
     return 0;
}

下面這個程式顯示結果有些不正常,請問應如何修改?
#include <stdio.h>

int main(void)
{
     int x = 10, y = 3;
     printf("x % y = %d\n", x%y);
     return 0;
}

ans:printf("x %% y = %d\n", x%y); 才能正確顯示"x % y"

二、討論與實作
1.月球引力約為地球引力的17%,請設計程式讓使用者輸入體重,以求得其於月球上之體重。

ans:
#include <stdio.h>

int main(void)
{
     int x;
     float y;
     printf("x = ");
     scanf("%d", &x);
     y = x * 0.17;
     printf("y = %f", y);
     return 0;
}

2.下面這個程式會顯示何種結果?
#include <stdio.h>

int main(void)
{
     int A = 23, B = 0, C;
     C = A & B && B & C;
     printf("C = %d\n", C);
     return 0;
}

ans:C=0
已有 1 人評分威望 收起 理由
紅塵孤鳥 + 2 感謝您熱心幫助會員解決問題,論壇需要您 ...

總評分: 威望 + 2   查看全部評分

Rank: 2

狀態︰ 離線
3
發表於 2011-10-3 20:13:33 |只看該作者
我可以給分給其他會員嗎?
樓上大大回答很認真我想給分

點評

紅塵孤鳥  目前不行,至於加分的部份,老鳥已經幫他加了...  發表於 2011-10-4 13:12:04

Rank: 2

狀態︰ 離線
4
發表於 2011-10-5 13:06:03 |只看該作者
這個版需要思考,需要時間
這個版比較冷門應該要用重獎勵加速網友成長
獎勵不是重點,重點是成長速度

點評

紅塵孤鳥  嗯,所以版區提供月獎金制度,歡迎參加!  發表於 2011-10-6 08:37:37

Rank: 2

狀態︰ 離線
5
發表於 2011-10-7 11:34:29 |只看該作者
3.下面這個程式用來比較x與y是否相等,但程式執行結果有誤,請問哪邊出了錯誤?
#include <stdio.h>

int main(void)
{
     int x, y;
     printf("x = ");
     scanf("%d", &x);
     printf("y = ");
     scanf("%d", &y);
     if (x = y)             //C語言個等號為assignment,個等號才為comparison;故此if判斷為恆真式,並不真的做比較,需改為 if (x == y)才會正確
         printf("x = y");
     return 0;
}
已有 1 人評分威望 收起 理由
紅塵孤鳥 + 2 感謝您熱心幫助會員解決問題,論壇需要您的.

總評分: 威望 + 2   查看全部評分

請注意︰利用多帳號發表自問自答的業配文置入性行銷廣告者,將直接禁訪或刪除帳號及全部文章!
您需要登錄後才可以回覆 登入 | 註冊


本論壇為非營利自由討論平台,所有個人言論不代表本站立場。文章內容如有涉及侵權,請通知管理人員,將立即刪除相關文章資料。侵權申訴或移除要求:abuse@oursogo.com

GMT+8, 2024-11-1 07:45

© 2004-2024 SOGO論壇 OURSOGO.COM
回頂部