C語言語法知識

2022-11-03 13:21:04 字數 4399 閱讀 7039

4..1c語句概述

一.乙個函式包括宣告部分和執行部分(語句)。二.c語句可以分為以下5類:

(1)控制語句,完成一定的控制功能。c只有9種控制語句,它們是:①if()~else~(條件語句)②for()~(迴圈語句)③while()~(迴圈語句)④do~while()(迴圈語句)⑤continue(結束本次迴圈語句)⑥break(中止執行switch或迴圈語句)(跳出整個迴圈)⑦switch(多分支選擇語句)⑧goto(轉向語句)⑨return(從函式返回語句)注:

()內表示判別條件,~表示語句。例如:「if()~else~」的具體語句可以寫成:

if(x>y)z=x;elsez=y;

(2)函式呼叫語句。由一次函式呼叫加乙個分號構成乙個語句。

(3)表示式語句。由乙個表示式構成乙個語句,最典型的是,由賦值表示式構成乙個賦值語句a=3是乙個賦值表示式,而a=3;是乙個賦值語句。

(4)可以用{}把一些語句括起來成為復合語句,又稱分程式。如下面是乙個復合語句。{z=x+y;t=z/100;

printf("%f\n",t);}

4.2賦值語句

一.c語言的賦值號「=」是乙個運算子,它區別與其他其他語言的乙個重要特點。二.if()()內是乙個表示式,不是乙個語句。

4.3資料輸入輸出的概念及在c語言中的實現

一.所謂輸入輸出是以計算機主機為主體而言的。從計算機向外部輸出裝置(如顯示屏、印表機、磁碟等)輸出資料稱為「輸出」,從外部向輸入裝置(如鍵盤、磁碟、光碟、掃瞄器等)輸入資料稱為「輸入」。

二.四個重要的輸入輸出函式:putchar(輸出字元),getchar(輸入字元),printf(格式輸出),scanf(格式輸入)。

三.使用標準輸入輸出函式時必須加上#include<>或#include""命令。

4.4字元資料的輸入輸出

一.putchar函式(字元輸出函式):

函式的作用是向終端輸出乙個字元:例如putchar(c);它輸出字元變數c的值。c可以是字元型變數或整型變數。例如:#include

main()

{chara,b,c;a='b';b='o';c='y';

putchar(a);putchar(b);putchar(c

執行結果:

1boy

注:如果第①行改為putchar(a);putchar(『\n』);putchar(b);putchar(『\n』);putchar(c);putchar(『\n』);

則輸出結果為:boy

二.getchar函式(字元輸入函式)

此函式的作用是從終端(或系統隱含指定的輸入裝置)輸入乙個字元。getchar函式沒有引數,其一般形式為getchar()函式的值就是從輸入裝置得到的字元。例如:#include

voidmain(){charc;

c=getchar();putchar(c);}

注:getchar()只能接收乙個字元。

4.6格式輸入與輸出

一.printf函式(格式輸出函式)

printf函式的作用是向終端(或系統隱含指定的輸出裝置)輸出若干個任意型別的資料。函式的一般格式為printf(格式控制,輸出表列)如:printf("%d,%c\n",i,c)2.

括弧內包括兩部分:(1)「格式控制」是用雙引號括起來的字串,也稱「轉換控制字串」,它包括兩種資訊:

①格式說明,由「%」和格式字元組成,如%d,%f,%c等。它的作用是將輸出的資料轉換為指定的格式輸出。格式說明總是由「%」字元開始的。

②普通字元,即需要原樣輸出的字元。例如上面printf函式中雙引號內的逗號、空格和換行符。

(2)「輸出表列」是需要輸出的一些資料,可以是表示式。

注:%o,%x分別表示以八進位制和十六進製制輸出。%s格式符,用來輸出乙個字串。%e格式符,以指數形式輸出實數。

①%s,例如:printf("%s","china")輸出「china」字串(不包括雙引號)。

②%ms,輸出的字串佔m列,如字串本身長度大於m,則突破m的限制,將字串全部輸出。若串長小於m,則左補空格。

③%m.ns,輸出佔m列,但只取字串中左端n個字元。這n個字元輸出在m列的右側,左補空格。

二.scanf函式(格式輸入函式)

一般形式:scanf(格式控制,位址表列)「格式控制」的含義同printf函式;「位址表列」是由若干個位址組成的表列,可以是變數的位址,或字串的首位址。例4.

9用scanf函式輸入資料。

main()

{inta,b,c;

scanf(「%d%d%d」,&a,&b,&c);

2printf("%d,%d,%d\n",a,b,c);}

注:執行時按以下方式輸入a、b、c的值:

345(輸入a、b、c的值)3,4,5(輸出a、b、c的值)

&a、&b、&c中的「&」是「位址運算子」,&a指a在記憶體中的位址。上面scanf函式的作用是:按照a、b、c在記憶體的位址將a、b、c的值存進去。

變數a、b、c的位址是在編譯連線階段分配的。「%d%d%d」表示按十進位制整數形式輸入資料。輸入資料時,在兩個資料之間以乙個或多個空格間隔,也可以用回車鍵、跳格鍵tab。

下面輸入均為合法:①345②345

③3(按tab鍵)4

5用「%d%d%d」格式輸入資料時,不能用逗號作兩個資料間的分隔符,如下面輸入不合法:

3,4,5

使用scanf函式應該注意一下問題:

(1)scanf函式中的「格式控制」後面應當是變數位址,而不應是變數名。例如,如果a、b為整型變數,則scanf("%d,%d",a,b);(錯誤)

(2)如果在「格式控制」字串中除了格式說明以外還有其他字元,則在輸入資料時應輸入與這些字元相同的字元。例如scanf("%d,%d",&a,&b);

輸入時應用如下形式:3,4

5.1關係運算子和關係表示式

一.關係運算是邏輯運算中比較簡單的一種。所謂「關係運算」實際上是「比較運算」。將兩個值進行比較,判斷其比較的結果是否符合給定的條件。

例如,a>3是乙個關係表示式,大於號(>)是乙個關係運算子,如果a的值為5,則滿足給定的「a>3」條件,因此關係表示式的值為「真」(即「條件滿足」);如果a的值為2,不滿足「a>3」條件,則稱關係表示式的值為「假」。

c語言提供6種關係運算子:優先順序相同(高):①<(小於)

②<=(小於或等於)③>(大於)

④>=(大於或等於)優先順序相同(低):⑤==(等於)⑥!=(不等於)關於優先次序:

(1)前4種關係運算子的優先級別相同,後兩種也相同。前4種高於後2種。例如,「>」優先於「==」。

而「>」與「<」優先順序相同。(2)優先順序:算術運算子》關係運算子》賦值運算子(3)c語言提供三種邏輯運算子:

&&邏輯與||邏輯或!邏輯非a&&b若a、b為真,則a&&b為真。

3a||b若a、b之一為真,則a||b為真。!a若a為真,則!a為假。

注:!(非)→&&(與)→(或)!(最高)

邏輯表示式的值應該是乙個邏輯量「真」或「假」。c語言編譯系統在給出邏輯運算結果時,以數值1代表「真」,以0代表「假」,但在判斷乙個量是否為「真」時,以0代表「假」,以非0代表「真」。即將乙個非零的數值認作為「真」。

5.2if語句

一.if語句的三種形式1.if(表示式)語句

例如:if(x>y)printf("%d",x);2.if(表示式)語句1else語句2

例如:if(x>y)printf("%d",x);elseprintf("%d",y)3.if(表示式1)語句1elseif(表示式2)語句2elseif(表示式3)語句3…

elseif(表示式m)語句melse語句n例如:

if(number>500)cost=0.15;elseif(number>300)cost=0.10;elseif(number>100)cost=0.

075;elseif(number>50)cost=0.05;elsecost=0;

例:輸入兩個實數,按代數值由小到大的次序輸出這兩個數。

思考題:輸入3個數a,b,c,要求按由小到大的順序輸出。語句的巢狀(講解)二.條件運算子

若if語句中,在表示式為「真」和「假」時,且都只執行乙個賦值語句給同乙個變數賦值時,可以用簡單的條件運算子來處理。例如,若有以下if語句:

if(a>b)max=a;elsemax=b;

可以用下面的條件運算子來處理:

max=(a>b)?a∶b;

其中「(a>b)?a∶b」是乙個「條件表示式」。它是這樣執行的:如果(a>b)條件為真,則條件表示式取值a,否則取值b。三.switch語句

switch語句是多分支選擇語句。用來實現如圖3.6所表示的多分支選擇結構。

if語句只有兩個分支可供選擇,而實際問題中常常需要用到多分支的選擇。例如,學生成績分類(90分以上為『a』等,80~89分為『b』等,70~79分為『c』等……);人口統計分類(按年齡分為老、中、青、少、兒童);工資統計分類;銀行存款分類……。它的一般形式如下:

switch(表示式)

{case常量表示式1:語句14

HTML語言語法大全

斜體字 斜體字 強調 斜體字 表示定義 底線 底線 表示插入文字 橫線 刪除線 刪除線 表示刪除 鍵盤文字 打字型 固定寬度字型 在檔案中空白 換行 定位功能有效 固定寬度字型 不執行標記符號 固定寬度小字型 字型顏色 最小字型 無限增大 區斷標記 水平線水平線 設定大小 水平線 設定寬度 水平線 ...

c語言宣告的語法

概述 在很多情況下,尤其是讀別人所寫 的時候,對c語言宣告的理解能力變得非常重要,而c語言本身的凝練簡約也使得c語言的宣告常常會令人感到非常困惑,因此,在這裡我用一篇的內容來集中闡述一下這個問題。問題 宣告與函式 有一段程式儲存在起始位址為0的一段記憶體上,如果我們想要呼叫這段程式,請問該如何去做?...

高中文言語法知識講義

高中文言語法歸納 一 兩句 特殊句式 固定句式 句法 特殊句式 一 判斷句 用名詞或名詞性短語表示判斷的句子,叫判斷句。文言文判斷句基本上不用判斷詞 是 來表示,而往往讓名詞或名詞性短語直接充當謂語,對主語進行判斷。判斷句中謂語前出現的 是 大都不是判斷詞,而是指示代詞,作判斷句的主語 少數為判斷詞...