C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)_第1頁
C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)_第2頁
C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)_第3頁
C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)_第4頁
C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

會(huì)計(jì)學(xué)1C語言程序設(shè)計(jì)簡(jiǎn)單的C程序設(shè)計(jì)3.1C語句概述一個(gè)大型C程序的結(jié)構(gòu)第1頁/共25頁C語句分為以下五類:1.控制語句

控制語句用于控制程序的流程,以實(shí)現(xiàn)程序的各種結(jié)構(gòu)方式。分三類:條件判斷語句:if語句、switch語句。循環(huán)執(zhí)行語句:for語句、dowhile語句、while語句。轉(zhuǎn)向語句:break語句、goto語句、continue語句、return語句。

第2頁/共25頁2.函數(shù)調(diào)用語句

函數(shù)調(diào)用語句由函數(shù)名和實(shí)際參數(shù)加上分號(hào)“;”組成。其一般形式為:

函數(shù)名(實(shí)際參數(shù)表);例如:printf("CProgram");

/*調(diào)用庫函數(shù),輸出字符串*/3.表達(dá)式語句

形式:表達(dá)式;

執(zhí)行表達(dá)式語句的含義:計(jì)算表達(dá)式例如:x=a+b;y+z;i++;第3頁/共25頁4.空語句

只有一個(gè)分號(hào)的語句,它什么也不做。;5.復(fù)合語句把多個(gè)語句用花括號(hào)“{}”括起來組成的語句稱復(fù)合語句。在程序中應(yīng)把復(fù)合語句看成是單條語句,而不是多條語句。例如,下面就是一條復(fù)合語句。{x=y+z;a=b+c;printf("%d%d",x,a);}第4頁/共25頁3.2賦值語句賦值語句一般形式為:變量=表達(dá)式;功能:將賦值運(yùn)算符右側(cè)“表達(dá)式”的值賦給左側(cè)的變量。例如,以下均為賦值表達(dá)式:x=3(x的值為3)y=z=-1(等價(jià)于y=(z=-1),y和z的值都為-1)a=(b=10)/(a=2)(b的值為10,a的值為5)y=(7+6)%5/3(y的值為1)若在賦值表達(dá)式后面加上“;”,則構(gòu)成賦值語句.第5頁/共25頁說明:賦值符“=”右邊的表達(dá)式可以又是一個(gè)賦值表達(dá)式

例如:a=b=c=5;

相當(dāng)于c=5;b=c;a=b;注意變量說明中給變量賦初值和賦值語句的區(qū)別。

inta=3,b=4,c=5;

相當(dāng)于inta,b,c;a=3;b=4;c=5;在變量說明中,不允許連續(xù)給多個(gè)變量賦初值。

如下述說明是錯(cuò)誤的:inta=b=c=5;

第6頁/共25頁注意賦值表達(dá)式和賦值語句的區(qū)別。賦值表達(dá)式是一種表達(dá)式,可以出現(xiàn)在任何允許表達(dá)式出現(xiàn)的地方,而賦值語句則不能。合法的:a=(x=y+5)+6;

非法的:a=(x=y+5;)+6;

語句中的“=”稱為賦值號(hào),它不同于數(shù)學(xué)中的等號(hào)例如:A=A+1在數(shù)學(xué)中是不成立的,在C語言中:5x5+16第7頁/共25頁6、賦值符號(hào)“=”

左邊一定只能是變量名,不能是常量、符號(hào)常量、表達(dá)式。右邊的表達(dá)式可以是變量、常量、函數(shù)調(diào)用等表達(dá)式。例如:z=x+y;

/*將變量x和變量y的值的和賦值給變量z*/下面的賦值語句都是錯(cuò)的:

5=x;

/*左邊是常量*/

sin(x)=20;

/*左邊是函數(shù)調(diào)用,即是表達(dá)式*/第8頁/共25頁7.數(shù)據(jù)類型問題

賦值符號(hào)“=”兩邊的數(shù)據(jù)類型一般要求應(yīng)一致。如果兩邊的類型不同,則以左邊變量或?qū)ο髮傩缘臄?shù)據(jù)類型為基準(zhǔn)例如,有定義intx;floaty;

x=3.5415926;

/*取其整數(shù)賦值給x,x的值為3*/

y=123;

/*將整數(shù)123轉(zhuǎn)換實(shí)數(shù)123.0,賦值給y,執(zhí)行后,y的值是123.0*/第9頁/共25頁3.3數(shù)據(jù)格式輸入/輸出3.3.1數(shù)據(jù)輸入/輸出的概念數(shù)據(jù)輸入/輸出是相對(duì)計(jì)算機(jī)內(nèi)存在C語言中所有的數(shù)據(jù)輸入/輸出都是由庫函數(shù)完成的。因此都是函數(shù)語句。使用庫函數(shù)時(shí),要使用預(yù)編譯命令:

#include“stdio.h”

或#include<stdio.h>注:printf()和scanf()函數(shù)不需要頭包含文件。第10頁/共25頁3.3.2數(shù)據(jù)格式輸出——printf()函數(shù)printf()功能:按控制字符串規(guī)定的格式,向輸出設(shè)備輸出各輸出項(xiàng)基本格式為:

printf(“控制字符串”,輸出項(xiàng)列表)printf(“s=%d\n”,s);控制字符串由格式說明和普通字符兩部分組成。輸出項(xiàng)可以是常量、變量、表達(dá)式,其類型與個(gè)數(shù)必須與控制字符串中格式字符的類型、個(gè)數(shù)一致、各項(xiàng)之間用逗號(hào)分隔。第11頁/共25頁1.格式字符串格式說明

一般格式為:%[<修飾符>]<格式字符>格式字符

%d%c%s%f……最小寬度與精度修飾符

當(dāng)指定寬度小于數(shù)據(jù)的實(shí)際寬度時(shí):對(duì)整數(shù),按該數(shù)的實(shí)際寬度輸出。對(duì)浮點(diǎn)數(shù),相應(yīng)小數(shù)位的數(shù)四舍五入。長(zhǎng)度修飾符(l/h)標(biāo)志字符:-+#(空格)第12頁/共25頁2.普通字符普通字符包括可打印字符和轉(zhuǎn)義字符??纱蛴∽址且恍┱f明字符,這些字符按原樣顯示在屏幕上轉(zhuǎn)義字符是不可打印的字符,它們其實(shí)是一些控制字符,控制產(chǎn)生特殊的輸出效果。常用的有“\t”,“\n”,其中\(zhòng)t為水平制表符,作用是跳到下一個(gè)水平制表位,“\n”為回車換行符,遇到“\n”,顯示自動(dòng)換到新的一行。第13頁/共25頁3.3.3數(shù)據(jù)格式輸入——scanf()函數(shù)scanf()的功能:從鍵盤上輸入數(shù)據(jù),該輸入數(shù)據(jù)按指定的輸入格式被賦給相應(yīng)的輸入項(xiàng)。一般格式為:

scanf("控制字符串",輸入項(xiàng)地址列表);scanf(“%d%d”,&a,&b);控制字符串規(guī)定數(shù)據(jù)的輸入格式,由格式說明和普通字符兩部分組成。輸入項(xiàng)地址列表由變量地址組成,各變量地址之間用逗號(hào)“,”分隔。各變量要加地址操作符,表示如下:&變量名第14頁/共25頁1.格式字符串格式說明

一般格式為:%[<修飾符>]<格式字符>格式字符%d%c%s%f…寬度(m)

scanf(“%3d”,&a);

/*輸入123456,按寬度3輸入一個(gè)整數(shù)123賦給變量a*/長(zhǎng)度修飾符(l/h)

可與d、o、x一起使用(*)

scanf(“%d%*d%d”,&x,&y,&z);/*若輸入為“123”結(jié)果為x=1,y=3,z未賦值,2被跳過。*/第15頁/共25頁2.普通字符普通字符包括空格、轉(zhuǎn)義字符和可打印字符??崭?/p>

scanf(“%d%c”,&a,&ch);輸入32q

期望a=32,ch=q,但實(shí)際上,分隔符空格被讀入并賦給ch??纱蛴∽址?/p>

scanf("%d,%d,%c“,&a,&b,&ch);

當(dāng)輸入為:1,2,q即:a=1,b=2,ch=q第16頁/共25頁使用scanf函數(shù)還必須注意以下幾點(diǎn):scanf函數(shù)中沒有精度控制。

如:scanf(“%5.2f”,&a);

是非法的。若格式控制串中沒有非格式字符作輸入數(shù)據(jù)之間的間隔則可用空格或回車作間隔。

scanf("%d%d",&a,&b);

則輸入應(yīng)為56,中間可以用空格如果格式控制串中有非格式字符則輸入時(shí)也要輸入該非格式字符。

scanf("a=%d,b=%d,c=%d",&a,&b,&c);

則輸入應(yīng)為a=5,b=6,c=7第17頁/共25頁3.4字符數(shù)據(jù)非格式輸入/輸出函數(shù)需要#include<stdio.h>1.字符輸入函數(shù)——getchar()

格式:getchar();

作用:從鍵盤輸入一個(gè)字符。從功能角度來看,scanf()函數(shù)可以完全代替getchar()函數(shù)。

若charc1;

則c1=getchar();

可使用等價(jià)語句:scanf("%c",&c1);第18頁/共25頁說明:getchar()函數(shù)一次只能返回一個(gè)字符,即調(diào)用一次只能輸入一個(gè)字符。程序第一次執(zhí)行g(shù)etchar()函數(shù)時(shí),系統(tǒng)暫停等待用戶輸入,直到按回車鍵確認(rèn)。如果用戶輸入了多個(gè)字符,則該函數(shù)只取第一個(gè)字符,多余的字符(包括換行符‘\n’)存放在鍵盤緩沖區(qū)中,等待下一個(gè)getchar()函數(shù)。第19頁/共25頁2.getch()和getche()函數(shù)

作用:從鍵盤上讀入1個(gè)字符與getchar()函數(shù)的區(qū)別:是輸入不需要回車鍵結(jié)束,即輸入一個(gè)字符就自動(dòng)結(jié)束輸入。調(diào)用格式為:getch();

getche();

兩者的區(qū)別是:getch()函數(shù)不將讀入的字符回顯在顯示屏幕上getche()函數(shù)將讀入的字符回顯到顯示屏幕上第20頁/共25頁#include<stdio.h>voidmain(){floatx;printf("EnterTheNumberx:");scanf("%f",&x);printf("YouEnterNumberx=%f\n",x);printf("Pressanykeytocontinue...");getch();/*等待輸入任一鍵*/printf(“Byebye...");getch();}第21頁/共25頁

3.字符輸出函數(shù)——putchar()格式:putchar(ch);功能:是向顯示器終端輸出一個(gè)字符。其中,ch可以是一個(gè)字符變量或常量,也可以是一個(gè)轉(zhuǎn)義字符。說明:putchar()函數(shù)只能用于單個(gè)字符的輸出,且一次只能輸出一個(gè)字符。從功能角度printf()函數(shù)可以完全代替putchar()函數(shù),其等價(jià)形式:printf("%c",ch)。第22頁/共25頁3.5應(yīng)用程序舉例從鍵盤輸入一個(gè)大寫字母,要求改用小寫字母輸出#include"stdio.h"voidmain(){charc1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+32;printf("%c,%d\n",c2,c2);}第23頁/共25頁3.5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論