程式語言:C語言 第二堂課


這堂課教的內容不少,筆記也寫了有四頁之多。

printf(“輸出文字或格式碼”); //輸出
scanf(“格式碼”, &變數); //輸入(scan format)

格式碼:
%d -> integer 整數
%f -> float 浮點數
%c -> char 字元
%ld -> double 倍精度浮點數

%5d 控制欄位大小,5為包含內容共5格
%-5d 「-」號為要求內容靠左
%05d 「0」為要求在空格中補數字零

scanf(“%d %d”, &變數1, &變數2);
執行後輸入第一個整數,可按空白鍵或Tab鍵、Enter鍵
再輸入下一個整數,最後再按一次Enter
※如果輸入的「”%d %d”」中間空格改成逗號,
則使用者輸入資料時也需用逗號分隔,否則就會造成錯誤。

製作查詢ASCII碼的小工具
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char letter;
printf("請輸入一個字元:");
scanf(" %c", &letter);
printf("您輸入的字元為:%cn", letter);
printf("其ASCII碼為:%dn", letter);
system("pause");
return 0;
}

※在%c前加空格,表示略過不可見字元,
包括Enter鍵、空白鍵、Tab鍵。

letter = getchar(); //傳回字元變數,與scanf類似
putchar(letter); //輸出字元變數,與printf類似

getchar(); //按下Enter鍵後送出(會跳到下一行)
getche(); //按下任一鍵就送出(不會跳到下一行)

escape character 跳脫字元
n escape sequence 跳脫序列

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char letter='a';
putchar(letter);
system("pause");
return 0;
}

a:電腦蜂鳴器嗶聲
t:同Tab鍵,跳8個字元
“:秀出「”」
‘:秀出「’」
:秀出「」

◎陣列:一連串相同型態的變數

資料型態 陣列名稱[長度];
例:
char letter[10];
putchar(letter[Index]);

在C語言中,字串視為字元陣列使用,為結束符號

char 字串變數名稱[長度];
例:
char letter[5] = “abcd”;
printf(“%sn”, letter);

%5s、%-5s、%05s 字串欄位控制,同%d用法
※中文字視為2個字元

試作出此圖形:
*
**
***
****
*****

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char a[2] = "*";
char b[3] = "**";
char c[4] = "***";
char d[5] = "****";
char e[6] = "*****";
printf("%sn%sn%sn%sn%sn", a, b, c, d, e);
system("pause");
return 0;
}

2 Replies to “程式語言:C語言 第二堂課”

  1. system(“pause”); 這行我覺得可以用一行或兩行(一行沒效就用兩行) getchar() 來代替,以避免編譯環境換成非 Windows system(“pause”)就無法使用。

  2. 咦,原來還有這個問題啊。
    可能是現在還在基礎班,所以老師就沒特別說明吧(笑)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料