2、控制語句
2.2 迴圈語句
3、例子
使用的作業系統:linux
c語言的基本資料型別有3種,分別為整型、浮點型、字元型,在定義變數的時候分別用int,float,char來定義;
再進行細分,整型可以分為長整型(long),短整型(short),以及長長整型(long long);
浮點型又可以分為單精度型(float)和雙精度(double)以及長雙精度型(long double);
注意:定義變數時需要了解資料的範圍大小以及該型別的範圍,避免資料過大超出該型別的範圍;
經常所說的一位元組在計算機中代表8位;
資料型別(所佔位元組)
數字範圍
int(4)
-231- 231 -1
char (1)
-27- 27 -1
double(8)
-263- 263 -1
float(4)
-231- 231 -1
long(8)
-263- 263 -1
long long(8)
-263- 263 -1
short(2)
-215- 215 -1
size_t(8)
-263-263 -1
一般型別可表示的範圍與其所佔位元組之間的關係為-2n-1-2n-1-1;
變數的定義方法一般為 型別:變數名;
初始化是乙個給變數賦值的過程;但是不同的點在於初始化是在變數正在生成的時候放入數字,而所謂賦值則是在已經生成的變數中再放入數字,一般可以在定義的時候一併初始化;
變數的作用就是在程式中定義乙個可以變化的值,以便於在需要改變的時候方便進行操作;
#include
intmain()
變數的命名規則:
1、變數名是字母、數字和下劃線的組合。
2、變數名的開頭必須是字母或下劃線,不能是數字。
3、實際程式設計中最常用的是以字母開頭,而以下劃線開頭的變數名是系統專用的。
4、變數名中的字母是區分大小寫的。比如a和a是不同的變數名,num和num也是不同的變數名。
變數型別
佔位符char
%c(表示輸出單個字元),%s(表示輸出一串字元)
int%d(表示輸出整數)
float
%f(表示輸出小數)
double
%lf(表示輸出雙精度的小數,精度高於float)
long
%ldlong long
%lld
long double
%lfshort
%hd2.1.1 if
if
(條件為真時)
比如:if
(a
//每條語句後面需要有;
2.1.2 if-elseif
(條件為真時)
else
比如:if
(a
else
2.1.3 if-else if-else
這個語句和前兩個表達乙個意思,只是可以有多個判斷條件;
if
(條件1
)else
if(條件2
)else
if(條件3
)else
2.1.4 switch-caseswitch
(表示式)
比如:switch
(month)
//要先定義month和days這兩個變數
2.2.1 while
while和if的區別是while會先判斷條件然後多次迴圈執行直到條件不滿足停止;
while
(條件)
2.2.2 do-while
while和do-while的區別在於前者會先判斷條件,如果為真才會繼續執行,後者是先執行一次操作再判斷條件是否為真;
do
while
(條件)
;
2.2.3 for
本質上和前面兩者一樣,都是迴圈操作,但for更為簡便,對於判斷條件也是更為清楚;
for
(初始值;條件;遞增或遞減)
比如:for
(int i=
0;i<8:
++i)
這裡的執行過程是先執行int i=0,然後判斷i是否小於8,如果小於就執行a=a+1,執行完再進行i+1的操作,開始下一輪迴圈,直到i=8;
2.2.4 跳出語句break 和 continue
這兩者的區別在於,前面break是跳出這整個迴圈體,不再繼續執行,而continue是在這個條件這裡結束本次迴圈,重新開始下一次迴圈;
輸入某年某月某日,判斷這一天是這一年的第幾天;
#include
intmain()
else
scanf
("%d"
,&year)
;scanf
("%d"
,&month)
;scanf
("%d"
,&day)
;int days=
;int sum;
for(
int i=
0;i++i)
int finalday=sum+day;
printf
("%d year %d month %d day is %d days of this year"
,year,month,day,finalday);}
執行步驟
列印日曆
#include
intmain()
if(month<=
0||month>12)
int days;
if(month==
1||month==
3||month==
5||month==
7||month==
8||month==
10||month==12)
else
if(month==2)
else
if(month<3)
int day=1;
int firstday_week=
(day+
2*month+3*
(month+1)
/5+year+year/
4-year/
100+year/
400+1)
%7;printf
("%d\n"
,firstday_week)
;printf
("s m t w t f s\n");
for(
int i=
1;i++i)
for(
int i=
1;i<=days;
++i)
}}
c語言 Day1 入門知識,程式
語言發展史 機器語言 組合語言 高階語言 c語言分部編譯 預處理 巨集定義展開 標頭檔案展開 條件編譯 去掉注釋 編譯 檢查語法 將c語言轉成組合語言 彙編 將組合語言轉成機器語言 二進位製碼 鏈結 將c語言依賴庫鏈結到程式中 常見的 問題 編輯時異常 編譯時異常 執行時異常 組合語言 mov 移動...
C語言(1) 資料型別以及儲存型別
儲存大小單位 bit 只能用來儲存0或1 byte 位元組 8bit kb 1024 byte mb 1024 kb gb 1024 mb tb 1024 gb 資料型別 32位作業系統 基本型別 字元型別 char 1位元組 預設是有符號型 arm編譯器預設是無符號 unsigned char 無...
Day 1變數運算子 資料型別
1 賦值 名字 值 2 字母 區分大小寫 數字 下劃線 不能以數字開頭 3 專業 1 字串即文字 2 單引號或雙引號 3 內容出現引號使用轉義符號 4 原始字串在字串前加 r 自動轉義 原始字串結尾不可加 5 長字串使用三重引號 或 數值型別 1 整形 int 2 布林型 bool ture 1 f...