C語言
1. /*c程式架構*/
#include <stdio.h>
#include <stdlib.h>
變數宣告;
int main(void)
{
變數宣告;
迴圈與流程控制;
system("pause");
return 0;
}
2.關鍵字
-
auto
break
case
char
const
continue
default
defined
do
double
else
enum
extern
float
for
goto
if
int
long
register
return
short
signed
sizeof
static
struct
switch
typedef
union
unsigned
void
while
volatile
3.基本資料型態(超過表示範圍會發生溢位)
-
資料型態
型態說明
位元組
表示範圍
整數
型態
Long int
長整數
4
-2147483648 ~ 2147483647
int
整數
4
-2147483648 ~ 2147483647
Short int
短整數
2
-32768 ~ 32767
char
字元
1
0 ~ 255(256個字元)
浮點數型態
float
浮點數
4
1.2e-38 ~ 3.4e38
double
倍精度浮點數
8
2.2e-308 ~ 1.8e308
4.無號整數的資料型態
-
資料型態
型態說明
位元組
表示範圍
Unsigned long int
無號長整數
4
0 ~ 4294967295
Unsigned int
無號整數
4
0 ~ 4294967295
Unsigned short int
無號短整數
2
0 ~ 65535
5.變數名稱的限制
(1) 變數第一個字母可以是_ (底線)
(2) 變數第一個字母不能是數字
(3) 變數不能有空格
(4) 變數不能是C語言的關鍵字
6.char的敘述
char ch='7'; /*此數以ASCII碼做輸入*/
char ch=7; /*單純設一個變數*/
7.常用的跳脫序列:printf ( )
-
跳脫序列
所代表的意義
十進位ASCII
\a
警告音(alert)
7
\b
倒退一格(backspace)
8
\n
換行(new line)
10
\r
歸位(carriage return)
13
\0
字串結束字元(null character)
0
\t
跳格(tab)
9
\\
反斜線(backslash)
92
\'
單引號(single quote)
39
\"
雙引號(double quote)
34
\ /
印出反斜線
\d
ASCII碼(八進位)
\x
ASCII碼(十六進位)
8.printf()常用的格式碼
-
格式碼
說明
格式碼
說明
%c
字元
%%
印出百分號
%d
十進位整數
%o
無號八進位整數
%ld
長整數
%s
字串
%e
浮點數,指數e型式
%u
無號十進位整數
%f
浮點數,小數點型式
%x
無號十六進位整數
9.float的運用
%16.12f /*代表以16個字元的欄寬來印浮點數(包含小數點一位),小數點後占12位*/
10.查詢常數、變數或資料型態所占位元組
sizeof(變數、常數或資料型態名稱); /*有無()都可*/
11.資料型態的轉換
(欲轉換的資料型態) 變數名稱; /*資料型態的強制性轉換語法*/
12.printf()的修飾子
-
修飾子
功能
舉例
-
靠左對齊
%-3d
+
將正負號顯示出來
%+5d
空白
正值時空格,負值時顯示
% 6d
0
將空欄位填上0
%07.2d
13.scanf()
(1)格式:scanf("格式字串",&變數1,...);
(2) 常用輸入格式
-
輸入格式
輸入順序
輸入格式
輸入順序
%c
字元
%s
字串
%d
十進位整數
%o
八進位整數
%f
浮點數
%x
十六進位整數
%lf
倍精度浮點數
(3)輸入字串:char字串變數[字串長度]; /*在這之後的scanf不須加&*/
(4)讀取字元錯誤:未設定到輸出的值會留在緩衝區,以致下一次的輸出產生錯誤。
fflush(stdin); /*清除緩衝區內的資料*/
14.輸出、輸入字元的函數
(1)字元變數=getchar();
putchar(字元變數);
(2)字元變數=getche(); /*讀取一個字元,並顯示在螢幕上*/
字元變數=getch(); /*讀取一個字元,但不顯示在螢幕上*/
15.運算子
-
設定運算子
意義
範例
說明
=
設定
a=5
設定a的質等於5
一元運算子
意義
範例
說明
+
正號
a=+5
設定a等於正5
-
負號
a=-3
設定a等於負3
!
NOT否
a=!b
把b值取not後,再設給a
算數運算子
意義
範例
說明
+
加法
2+4
計算2+4
-
減法
3-6
計算3-6
*
乘法
7*9
計算7*9
/
除法
6.4/3
計算6.4/3
%
取餘數
21%9
計算21除以9的餘數(2數都必須是整數)
(! : not的運算,若a=0<false>則!a為1;若a不為0<a=1,true>,則!a=0)
16.if敘述與if-else敘述的格式:
if(判斷條件)
{
敘述主體; /*若判斷條件成立,則執行此部分*/
}
else /*else if(判斷條件); => 此寫法可接下一個if,簡化式子*/
{
敘述主體2; /*若判斷條件不成立,則執行此部分*/
}
(簡潔版: 條件判斷?敘述主體:敘述主體2)
17.運算子
-
關係運算子
意義
範例
說明
>
大於
a>b
判別a是否大於b
<
小於
a<b
判別a是否小於b
>=
大於等於
a>=b
判別a是否大於等於b
<=
小於等於
a<=b
判別a是否小於等於b
==
等於
a==b
判別a是否等於b
!=
不等於
a!=b
判別a是否不等於b
遞增與遞減運算子
意義
範例
說明
++
遞增,變數值+1
a++
a加1後再設定給a存放
--
遞減,變數值-1
a--
a減1後再設定給a存放
邏輯運算子
意義
範例
說明
&&
And且
a&&b
計算a and b 的結果
||
or或
a||b
計算a or b 的結果
(a++:會先執行整個敘述後再將a的值加1; ++a:會先將a的值加1後再執行整個敘述)
18.簡潔的運算子
-
運算子
範例
說明
意義
+=
a+=b
a+b的值存放到a中
a=a+b
-=
a-=b
a-b的值存放到a中
a=a-b
*=
a*=b
a*b的值存放到a中
a=a*b
/=
a/=b
a/b的值存放到a中
a=a/b
%=
a%=b
a%b的值存放到a中
a=a%b
19.多重選擇
switch(運算式)
{
case'選擇值':
敘述主體1; /*有很多個case,case的選擇值式上述的運算式*/
break; /*break一定要加喔!!*/
default:
敘述主體;
}
(break:在之後的敘述不被執行;continue: 在之後的敘述不被執行,而到迴圈開始處繼續執行)
20.goto敘述
標籤名稱:
敘述;
goto標籤名稱; /*到<goto標籤名稱> 會跳到標籤名稱處*/
21.for迴圈
for(設定迴圈初值;判斷條件;設定增減量)
{
迴圈主體;
}
22.while迴圈
設定迴圈初值;
while(判斷條件)
{
迴圈主體;
設定增減量;
}
23.do-while迴圈
設定迴圈初值;
do
{
迴圈主體;
設定增減量;
}while(判斷條件);
24.16進位:
1、2、3、4、5、6、7、8、9、a、b、c、d、e、f
留言列表