由片語學C程式設計 CHAPTER 5 迴圈 範例題目
本帖最後由 animejp 於 2014-3-23 18:27 編輯因工作需要,回頭開始學最基本的C,參考了許多書籍都不符合自己學習方式,最後選擇了這本書 (但本書並未提供作業解答)
若您正在學習這本書,且跟我一樣尷尬(國中、高中數學忘光了),希望這系列的帖子能給您小小的幫助
因本身未學習過任何程式語言,初學中,所以這系列的帖子會出的很慢,請見諒
學習環境:Linux
編譯器:gcc
書名:由片語學習C程式設計
作者:劉邦鋒
出版者:國立臺灣大學出版中心
ISBN:978-986-03-3464-7
於 2014.03.21 獲得作者劉邦鋒教授許可,授權後學公開此書籍所有內容
小小心願:如果有討論需求,期請於「範例題目」或「作業題目」帖子回文討論;避免於「範例解答」及「作業參考解答」帖子回文討論
目的:希望能完整排版、依序記錄,供學習者參考
CHAPTER 5 迴圈 範例題目 (共13題)
除範例13未修改,其餘範例皆親自增加或修改(題目、輸入、輸出、提示、註解)
5.1 whilew迴圈
while (condition)
statement;
範例1:寫一程式讀入一正整數a,計算出10的倍數中大於讀入數字之最小值,並在螢幕上顯示答案
輸入:23輸出:30
輸入:30輸出:40
本帖最後由 animejp 於 2014-3-23 18:04 編輯
5.1.1 使用複合敘述的while迴圈
while (condition){ statement1;
statement2;
statement3;
}
範例2:寫一程式讀入2整數a, b,計算a加到b的和。
輸入:1輸入:10輸出:55
輸入:10輸入:1輸出:55
範例3:寫一程式讀入2整數a, b,計算a和b的最大公因數。
輸入:56輸入:72輸出:8
輸入:143輸入:78輸出:13
本帖最後由 animejp 於 2014-3-23 18:08 編輯
5.2 for迴圈
for (initialization; condition;adjustment)
statement;
範例4:寫一程式讀入一正整數a,在螢幕上由小到大依序輸出1到a之間所有的整數
輸入:5輸出:1輸出:2輸出:3輸出:4輸出:5
範例5:寫一程式讀入一正整數,使用for if判斷其是否為質數。若為質數則輸出1;若非質數則輸出2。
輸入:73輸出:1
輸入:529輸出:2
本帖最後由 animejp 於 2014-3-23 18:11 編輯
5.2.1 使用複合敘述的for迴圈
for (initialization; condition; adjustment)
{
statement1;
statement1;
statement1;}
範例6:寫一程式讀入一正整數i,使用for迴圈計算由1到i的和、平方和立方和。
輸入:10輸出:55輸出:385輸出:3025
5.3 do while迴圈
do
statement;
while (condition);
範例7:寫一程式讀入一正整數i,使用do while迴圈輸出i + 5 的值
輸入:20輸出:25
本帖最後由 animejp 於 2014-3-23 18:15 編輯
5.3.1 使用複合敘述的do while迴圈
do
{
statement1;
statement2;
statement3;
}
while (cond);
範例8:寫一程式讀入一正整數i,使用do while迴圈計算由1到i的和、平方和立方和。
輸入:20輸出:210輸出:2870輸出:44100
5.4 使用break結束迴圈
if (break_condition)
break;
範例9:(修改自範例5) 寫一程式讀入一正整數i,使用for,if, break判斷其是否為質數。若為質數則輸出3;若非質數則輸出-3。
提示:若發現該數非質數,則break結束迴圈,結省運算時間
輸入:73輸出:3
輸入:529輸出:-3
範例10:(修正自範例9) 寫一程式讀入一正整數i,判斷其是否為質數。若為質數則輸出4;若非質數則輸出5。
註:不使用break,改將break納入條件,一樣達到結省運算時間的目的
提示:condition內有雙條件
輸入:73輸出:4
輸入:529輸出:5
頁:
[1]
2