c語言入門2

2021-08-28 23:52:46 字數 2194 閱讀 1519

1,變數

變數:在執行過程中可以改變的

變數名必須以下劃線或者字母開頭,可以由下劃線數字字母組成。

作用域:之間。

生命週期:程式/函式執行完 變數的記憶體會由系統自動**。

int a = 10;//a:變數
= 左邊的叫左值 右邊的叫右值。

2, 常量

常量:在執行過程中不可改變的

常量的定義 使用const或#define

const:修飾的變數叫常變數 關鍵字

使用const 定義時一定要進行初始化

const int a=10;//常量 編譯的時候確定他的值
#define 巨集 使用巨集定義的要大寫

在c或c++語言源程式中允許用乙個識別符號來表示乙個字串,稱為「巨集」。被定義為「巨集」的識別符號稱為「巨集名」。在編譯預處理時,對程式中所有出現的「巨集名」,都用巨集定義中的字串去代換,這稱為「巨集代換」或「巨集展開」。

(預編譯: 巨集替換 注釋的替換(空格) 標頭檔案的引入)

#define size 10

int main()

//列印結果 10

()

函式,提公升優先順序

~按位取反 11:0000 1011 ~11:1111 0100

>>

右移一位 相當於除法 /2^1

<<

左移一位 相當於乘法 x2^1

&邏輯與

^異或( 一樣的為0,不同的1)

!邏輯非

++自增運算子(++ 後置先賦值 再加,前置則相反)

- -自減運算子(同上)

*1乘法運算子 2復合賦值運算子 3位址值符4指標定義符……

sizeof

求當前字元的位元組數(所有的指標,不管什麼型別都為4個位元組)

%二元運算子

?:用於return中 用於判斷

以下為一些例項

int i=1

int i2=0;

int i3=2;

if(i++||i2++||i3++)//前面為真的,後面不計算

printf("%d,%d,%d\n",i,i2,i3);//列印結果 2 0 2

int  a = 10;

printf ("%d\n",sizeof(a));//4

printf ("%d\n",sizeof a)//4

printf ("%d\n",sizeof (int ))//4

int *p =&a;

char *p2 = (char*)&a;

printf ("%d\n",sizeof (p)); printf ("%d\n",sizeof (p2));//所有指標,不管什麼型別的全部為4個位元組

printf ("%d\n",sizeof (++a)); //4 sizeof 編譯時期 不參與運算

printf ("%d\n",a); //10

int arr[5]=;

printf ("%d\n",sizeof (++a));//4

printf ("%d\n",sizeof (3+4.5));//8

float  f1 = 5/2;

float f2 =(float )5/2;

float f3 = (float )(5/2);

float f4 =5/ (float )2;

printf ("%d\n",10%3);//1

printf ("%d\n",-10%3);//-1

printf ("%d\n",-10%-3);//-1

printf ("%d\n",10%-3);//1

步驟:

1 打斷點

2 除錯

逐語句

逐過程

c語言入門(2)

構成三角形的條件 任意兩邊之和大於第三邊。求面積 s a b c 2 area 根號下s s a s b s c 賦值運算子 按照 自右而左 的順序執行 將浮點型資料賦給整型變數時,對浮點數取整 直接捨棄小數部分 將佔位元組多的整形資料賦給佔位元組少的整型變數時,直接將低位元組原封不動送到被賦值的變...

C語言入門2

if語句的巢狀 在巢狀內的if語句可能又是if else型的,這將會出現多個if和多個else重疊的情況,這時要特別注意if和else的配對問題。例如 if 表示式1 if 表示式2 語句1 else 語句2 其中的else究竟是與哪乙個if配對呢?else 和就近的if 配對 為了避免這種二義性,...

C語言入門教程2

要利用計算機處理問題,光學習語言的語法規則還不夠,最重要的是要學會針對各型別的問題,擬定出有效的解題方法和步驟。解題方法和步驟就是演算法。演算法 為了解決乙個問題而採取的有限步驟。計算機演算法 如何使計算機一步一步地工作的具體過程。利用計算機處理問題的步驟 1 設計好演算法 演算法設計 2 用計算機...