close

程式設計觀念複習

a.              基本I/O : 變數,printf scanf

範例 試撰寫一程式,可計算梯形面積

 

#include <stdio.h>

#include <stdlib.h>

int main()

{

    float a,b,c,r;  // a->上底  b->下底,c->, r->面積

    scanf("%f",&a);

    scanf("%f",&b);

    scanf("%f",&c);

   

    r = (a+b)*c/2.0;

    printf("面積 %f",r);

   

    system("pause");

    return (1);

}

 

題目練習:

  1. 試撰寫一程式,可由鍵盤輸入攝氏溫度,程式的輸出為華氏溫度,其轉換公式如下:
    華氏溫度=(9/5)*攝氏溫度+32
  2. 試撰寫一程式,可由鍵盤輸入英哩,程式的輸出為公里,其轉換公式如下:
    1英哩=1.6公里
  3. 試撰寫一程式,可由鍵盤輸入平行四邊形的底和高,然後計算其面積。
  4. 已知圓球體積為(4/3)πr3,試撰寫一程式,可輸入圓球半徑,經計算後輸出圓球體積。

 

 

b.              IF Statement

試撰寫一程式,可由鍵盤讀入一個字元。若此字元是數字(即數字0-9),則印出"此字元是數字 若此字元是英文大小寫字母(即a-zA-Z),則印出"此字元是英文字*/

 

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

    char c; 

     

    scanf("%c",&c);

    if(c>='0' && c<='9' ) printf("%c 是數字",c);

    else  if( (c>='a' && c<='z') || (c>='A' && c<='Z') )  printf("%c 是英文字",c);

    else  printf("%c不是數字 不是英文字 \n",c);

 

   

    system("pause");

    return (1);

}

 

  1. 試撰寫一程式,可由鍵盤輸入一個整數,然後判斷它是奇數或偶數。
  2. 試撰寫一程式,可由鍵盤輸入一整數,然後求此數的絕對值。
  3. 試撰寫一程式,可由鍵盤輸入一個整數(代表某個人的體重),然後判斷體重是不是過重。若體重大於90公斤,則印出“體重過重,否則印出“不會過重
  4. 試撰寫一程式,可由鍵盤輸入兩個整數,分別代表某個人的身高與體重,然後判斷它的體重是不是過重。若體重大於90公斤,且身高低於180公分,則印出“體重過重,否則印出“不會過重
  5. 試撰寫一程式,可由鍵盤讀入一個字元。若此字元是數字(即數字0-9),則印出“此字元是數字”字串;若此字元是英文大小寫字母(即a-zA-Z),則印出“此字元是英文字元。

 

 

c.              Loop

/*1 + 2 + 3 + + n 的值,其中 n 由使用者指定*/

 

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

    int n,r,i; 

     

    scanf("%d",&n);

    r =0;

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

    {

       r = r + i;               

    }

 

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

   

    system("pause");

    return (1);

}

  1. 1 + 3 + 5 + …+ n 的值,其中 n 由使用者指定的奇數
  2. 2 + 4 + 6 + …+ n 的值,其中 n 由使用者指定的偶數
  3. 印出ASCII碼中41~64的字元
  4. 印出 1~100中可被6整除的數值
  5. 印出12 + 22 + 32 + 42 + …+ 502的值
  6. n由使用者指定印出下面結果(例如n = 5)

 

d.              函數設計

寫一函數int sum(int n)函數,計算 1+2+...+n 的總和

#include <stdio.h>

#include <stdlib.h>

 

int sum(int n)

{

    int r = 0,i;

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

    return (r);

}

 

int main()

{

    int n,r; 

     

    scanf("%d",&n);

    r = sum(n);

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

   

    system("pause");

    return (1);

}

 

注意: 盡量不要在 main 以外的地方印出結果

 

  1. 試寫一函數void kitty(int k)函數,當主程式呼叫kitty(k)時,螢幕上會顯示出k行的“Hello Kitty”
  2. 試撰寫函數int power(int x,int y),用來計算xn次方,並於主程式裡計算power(5,3),即計算
  3. 撰寫一函數double my_ fun(int n),可用來計算下面的數學式:
  4. 試利用下面的公式:

 sum2(n)=sum2(n-1)+2*nsum2(1)=2

撰寫遞迴函數int sum2(int n),用來計算之和。

 

arrow
arrow
    文章標籤
    程式設計 C#C++
    全站熱搜
    創作者介紹
    創作者 tatar 的頭像
    tatar

    ppper 的部落格

    tatar 發表在 痞客邦 留言(0) 人氣()