外包工

学 JAVA 学 OO

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  21 随笔 :: 0 文章 :: 0 评论 :: 0 Trackbacks

1.電腦與人類的作業模式有很大的不同:電腦在執行重覆性的工作時不會抱怨。只要有足夠的時間,配合設計好的程式,我們可以用電腦來處理大量重覆的工作以節省保貴的人力。

 

2.在程式中控制重覆執行的機制稱為「迴圈」。我們可以設計迴圈重覆執行的次數及條件,來達到想要的結果。

 

3.執行次數固定的迴圈:

for

 

     3.1.sytax:

 

for(起始值;執行條件;遞增或遞減敘述式){

     //敘述式

}

 

 

 

     3.2.e.g.1

 

//印出100次Hello World!

for(int i=1;i<=100;i++)

    printf("Hello World!\n");

 

 

 

     3.2. e.g.2

 

//計算從1到1000的所有奇數的和

int sum=0;

for(int i=1;i<=1000;i=i+2)

     sum=sum+i;

printf("sum=%d\n",sum);

 

 

 

 

     3.3. e.g.3

 

//輸入n個數字,並計算其平均

int n,x;

float sum=0,avg;

printf("Please input n");

scanf("%d",&n)

for(int i=1;i<=n;i++)

{

  scanf("%d",&x);

  sum=sum+x;

}

avg=sum/n;

printf("avg=%f\n",avg);

 

 

 

 

4.執行次數不固定的迴圈:

while

 

     4.1.syntax:

 

while(執行條件){

     //敘述式

}

 

 

 

 

     4.2.eg

 

/* 假設某細菌一小時可由一個分裂為兩個,在不考慮細菌死亡的情況下,計算經多久時間細菌數量會達10000個。 */

int no=1,time=0;

int limit=10000;

while(no < limit){

     no=no*2;

     time++;

}

 

 

 

 

5.至少執行一次的迴圈:

do while

 

     5.1.syntax:

 

do{

     //敘述式

}while(執行條件);

 

 

 

 

     5.2.eg:

 

//本程式會偵測使用者的按鍵,按q可結束。

char key;

do{

     key=getchar();

     printf("%c",key);

}while(key!='q');

 

 

 

 

6.巢狀迴圈(nested loop)

 

 

     6.1.若迴圈內有其他的迴圈,那麼就稱為巢狀迴圈,如下例:

    

 

     迴圈1

    

 

     迴圈2

     /*敘述B*/

    

 

 

     /*敘述A*/

    

 

 

     在上例中,若A,B分別為迴圈1及2的敘述式(statement),且其原本的執行次數分別為m及n次,則B的總執行次數為m*n次。

 

 

     6.2.eg:

    

 

     //本程式可印出九九乘法表

     for(int i=1;i<=9;i++)

          for(int j=1;j<=9;j++)

               printf("%d*%d=%d\n",i,j,i*j);

    

 

 

7.想想看

 

 

     7.1.請寫一程式,可以計算X^Y(X的Y次方)。

     輸出入範例:

     please input x: 2

     please input y: 5

     Answer:     2^5=32

    


 

 

     7.2.請寫一程式,可計算X!(X!=X*(X-1)(X-2)..*2*1)。

     輸出入範例:

     Please input x: 5

     Anser:     5!=5*4*3*2*1=120

    


 

 

     7.3.請設計一程式,輸入正整數N,可印出下列結果

     *

     **

     ***

     ****

     *......* =>共N個*號

     輸出入範例:

     Please input N: 4

     *

     **

     ***

     ****

    


 

 

     7.4 溫度轉換

     請你設計一程式,可印出下列的溫度轉換表(攝氏Celsius<->華氏Fahrenheit)。請注意,起始溫度(Starting Temperature),終止溫度(Ending Temperature),及溫度遞增值(Temperature Increment)應讓使用者可自行輸入。轉換公式為:F=1.8*C+32.0。(C為攝氏溫度,F為華氏溫度)

     輸出入範例:

     Enter Starting Temperature:0

     Enter Ending Temperature:10

     Enter Temperature Increment:2

     Celsius          Fahrenheit

     0               32

     2               35.6

     4               39.2

     6               42.8

     8               46.4

     10               50

    


 

     7.5 銀行貸款

     「真能貸」銀行提供優惠貸款給一般民眾。現在請你幫忙設計程式來計算償還事宜。

     請留意,銀行每月計息一次,而你的程式必須可接受使用者輸入貸款額度,年利率,每月償還金額,

     並且將償還貸款的年限及支付利息的累計金額計算列印出來。

     範例輸出入:

     請輸入貸款額度: 10000

     請輸入年利率(%): 3.6

     請輸入每月還款額度: 2000

     年     月     利息     償還金額     未償金額     累計利息

     0     1     30.00     2000.00     8030.00     30.00

     0     2     24.09     2000.00     6054.09     54.09

     0     3     18.16     2000.00     4072.25     72.25

     0     4     12.22     2000.00     2084.47     84.47

     0     5     6.25     2000.00     90.72     90.72

     0     6     0.27     90.72     0.00     90.99

     貸款還清時間為 0 年 6 月

     累計利息:90.99元

posted on 2010-10-23 09:34 外包工 阅读(552) 评论(0)  编辑  收藏 所属分类: C语言程式设计

只有注册用户登录后才能发表评论。


网站导航: