C語言學習day05

2022-03-10 10:33:11 字數 1117 閱讀 2906

字串格式化輸入輸出:

//%% 在螢幕輸出%,後面的d也會輸出

printf(「%%d\n」);

int a=123;

printf(「a2 =』%5d』\n」,a); //以5個字元輸出,沒有字元以空字元填充,預設右對齊

printf(「a2 =』%05d』\n」,a); //以5個字元輸出,沒有字元以0填充,預設右對齊

printf(「a2 =』%-5d』\n」,a); //以5個字元輸出,沒有字元以空字元填充,代表左對齊

printf(「a2 =』%-05d』\n」,a); //0和-不能同時使用

double b=3.14;

printf(「b2 =』%8.3lf』\n」,b); //8代表總共有8個字元,3代表小數點後三位

scanf = getchar 都是讀取鍵盤的字元

當連使用兩個scanf的時候會初戀第二個不用輸入的情況

例如:沒有在理想的狀態下執行

原因:解決辦法:只需在兩個scanf之間加個scanf就可以

運算子表示式:

b =a++; 先將a賦值給b,然後a++

b=++a; 先++a,然後將a++的值賦值給b

條件:條件為假,結果int表達為0

條件為真,結果int表達為1,-1

邏輯運算子

! 非 與結果相反

&& 與 兩邊結果都為真,才為真

|| 或 兩邊結果只要有一邊為真,則為真

運算子的優先順序

短路規則:

|| 左邊為真,右邊不執行

&& 左邊為假,右邊不執行

強制型別轉換(由小到大的轉)

if if…else

switch(只能放整型,字元型別)…case

while迴圈

do…while迴圈

for迴圈

死迴圈的簡介

迴圈巢狀

break的作用

continue跳出本次迴圈,執行下一次

goto 無條件執行到某處

三目運算子有時候相比if…else語句更簡單

a>b ? true: false;

c語言學習day05

struct s以上 涉及到位元組對齊問題,編譯器為使cpu執行效率高,採取以空間換時間的方法,一次讀取int的長度 結構體的變數定義順序不同,size也不一樣 e.g struct s1 struct s2s1和s2的位元組數就不一樣,s2是8個,因為e是short型,可以佔給a分配的多餘的3個位...

C語言學習日記Day05函式的宣告

函式宣告 extern 返回值型別 函式名 引數列表 關鍵字externa可以省略 extern int add01 int a,int b intadd01 int a,int b 宣告 就像是給乙個程式的標準 intmain 函式定義 在乙個專案中 函式的名字是唯一的 intadd01 int ...

C 學習筆記 day05

1 變數的儲存 1 記憶體是一塊空間,把其中的每個位元組做了編號,為了以後計算機能通過編號找到資料 2 編址方式 絕對編址 在整個程式中使用 相對編址 位元組相對於邏輯0偏移量,在程序中使用 4 儲存位址 指標 儲存變數的位址 指標的型別由將要儲存的位址的變數型別決定 int 只能儲存int變數的位...