第2章 基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計_第1頁
第2章 基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計_第2頁
第2章 基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計_第3頁
第2章 基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計_第4頁
第2章 基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章〓基本數(shù)據(jù)類型及順序結(jié)構(gòu)程序設(shè)計2.1〓知識要點回顧 本章主要介紹C語言的基本概念,只有扎實撐握了C的基礎(chǔ)語法知識,才能對學(xué)習(xí)好后面章節(jié)。本章要掌握的內(nèi)容主要有:數(shù)據(jù)類型及其定義方法、13種C語言常用的運算符號,優(yōu)先級及結(jié)合方向,不同數(shù)據(jù)類型間的轉(zhuǎn)換與運算,算術(shù)表達式、關(guān)系表達式、邏輯表達式、條件表達式、逗號表達式以及順序結(jié)構(gòu)的程序設(shè)計方法。2.1.1〓數(shù)據(jù)類型、標(biāo)識符、常量、變量1.?dāng)?shù)據(jù)的類型字符串C言提供了豐富的數(shù)據(jù)類型,這些數(shù)據(jù)類型可以分為三大類,即基本類型、構(gòu)造類型和其他類型。C語言中的數(shù)據(jù)類型及各類型所占的寬度如表2-1所示。字符串字符字符型枚舉類型基本型字符字符型枚舉類型基本型短整整形基本類型短整整形長整數(shù)值型長整數(shù)值型無符號整單精度無符號整單精度雙單度實型雙單度實型數(shù)組類型長雙單精度數(shù)據(jù)類型數(shù)組類型長雙單精度構(gòu)造類型共用體型結(jié)構(gòu)體型構(gòu)造類型共用體型結(jié)構(gòu)體型指針類型指針類型空類型(void)其他類型空類型(void)表2-1〓VC/TC環(huán)境下數(shù)據(jù)類型所占寬度與數(shù)據(jù)范圍類型占字節(jié)最小取值范圍Int4/2-2147483648~2147483647即-231~(231-1)-32768~32767即-215~(215-1)Unsiginedint(無符號)4/20~21474836470~65535Shortint2-32768~32767即-215~(215-1)Unsiginedshortint(無符號)20~65535Longint4-2147483648~2147483647即-231~(231-1)Unsiginedlongint(無符號)40~4294967295Float4-2147483648~2147483647即-231~(231-1)double810-307~10308Longdouble1610-4931~1049322.標(biāo)識符(1)標(biāo)識符在C語言中用作變量名、函數(shù)名、數(shù)組名、指針名等。(2)由字母、數(shù)字、下劃線組成。(3)第一個必須是字母或下劃線。(4)關(guān)鍵字標(biāo)識符不能作為其他標(biāo)識符,但關(guān)鍵字大寫可作標(biāo)識符。(5)預(yù)定義標(biāo)識符(如scanf)允許作其他用,但最好不要另作他用。C語言中的關(guān)鍵字如表2-2所示。表2-2〓C語言中的關(guān)鍵字(32個)breakcasecharconstdefaultdodoubleelseexternfloatforgotointlongregisterreturnsignedsizeofstaticstructtypedefunionunsignedvoidwhileautoifshortcontinueenumswitch3.常量常量是在程序運行過程中其值不能被改變的量。常量的基本類型有整型常量、實型常量、字符常量和字符串常量。(1)整型常量。可以用十進制、八進制、十六進制形式表示,整型常量只有數(shù)字,不帶小數(shù)(12,-1,0)。八進制以數(shù)字0

開頭,如010、011、017等,十六進制以0x或0X開頭,如0x1、0Xde、0xf等。(2)實型常量。有小數(shù)形式(3.14、-3.56、0.0等)和指數(shù)形式(如0.326可以表示為0.326e0,3.26e-1)。C語言的語法規(guī)定,e之前必須要有數(shù)字,且e后面的指數(shù)必須為整數(shù)。例如,e3,.5e3.6.e3等都是不合法的指數(shù)形式。(3)字符常量。一個字符常量代表ASCII字符集中的一個字符,在程序中有單引號括起來的字符作為字符常量,如‘a(chǎn)’,‘A’,‘?’,‘’(單引號里有一個空格),字符常量只能包含一個字符,因此‘a(chǎn)bc’是非法的。字符常量中的轉(zhuǎn)義字符常量,又稱反斜線字符,這些字符常量總是以一個反斜線開頭,后跟一個特定的字符,代表一個特定的ASCII字符,這些字符必須在一對單引號內(nèi)?!痋n’代表換行,’\ddd’為一到三位八進制所代表的字符。例如,八進制‘\101’=(101)8=(65)10代表的字符為‘A’,八進制‘\141’所代表的字符為‘a(chǎn)’;‘\xhh’為一到兩位十六進制所表示的字符,十六進制‘\x41’代表的字符為‘A’,‘\0’表示空等。C語言中常用的轉(zhuǎn)義字符常量的含義如表2-3所示表2-3〓常用的轉(zhuǎn)義字符常量的含義字符形式意義\a響鈴\n換行回車\b退格\t橫向跳格\r回車\f換頁\0空字符\\反斜杠\’\”單引號雙引號\xhh1到2位16進制所表示的字符\ddd1到3位8進制所表示的字符轉(zhuǎn)義字符常量只代表一個字符(4)字符串常量。用雙引號括號,如“STRI”,“ABD\n”,“”(表示空)等。字符串常量末尾必自動補\0,如字符串“STRI”,“ABD\n”實際為“STRI\0”和“ABD\n\0”。(5)還可以用定義一個標(biāo)識符名的方法來代表一個常量。例如:#definex3.2//x為常量,其值用3.2來替換#definepi3.14159//pi為常量,其值用3.14159來替換4.變量變量是指在程序運行過程中其值能被改變的量。(1)變量的命名規(guī)則要符合標(biāo)識符。(2)先定義,再使用。(3)C語言中定義的變量代表內(nèi)存中的一個地址。(4)變量的賦值符為=,賦值表達式為:變量=表達式例如:t=x+5,p=q=r=9,x=x+1,x=(y=1)-(z=2)等都是合法的。賦值表達式左邊不能是常量和表達式,如x=6=y,a+b=c等非法。(5)賦值表達式加分號就變成賦值語句。2.1.2〓C語言運算符1.算術(shù)運算符(+、-、*、/、%)(1)算術(shù)運算符均為雙目運符。(2)求余運算%對象只能是整數(shù),如6%2的結(jié)果是0,5%2的結(jié)果是1。(3)對于a%b,若a或b有負(fù)數(shù),則對a與b的絕對值取余,余數(shù)符號與a的符號相同。例如,-7%5余數(shù)為-2,7%-5余數(shù)為2(4)雙目運算符兩數(shù)的類型必須一致才能進行。例如:1.0/2.0=0.5,1/2=0如果不一致則自動按以下規(guī)則轉(zhuǎn)換:char(short)intunsignedlongfloatdouble(5)利用強制類型轉(zhuǎn)換運算符,可以將表達式的值轉(zhuǎn)換成指定的類型,強制類型轉(zhuǎn)換表達式的形式為:(類型名)(表達式)例如(int)3.234,(double)(10%3)2.復(fù)合賦值運算符(=,+=,-=,*=,/=,%=)x+=y+h;等價于x=x+(y+h);x=y+h;等價于x=x-(y+h);x*=y+h;等價于x=x*(y+h);x/=y+h;等價于x=x/(y+h);x%=y+h;等價于x=x%(y+h);3.自增運算(++)和自減運算符(--)(1)運算對象是字符型、整型或?qū)嵭妥兞?,不能是常量和表達式,如++3,(i+j)++。(2)++和--運算符的結(jié)合方向是“自右至左”。(3)有四種形式++n,--n;n++,n--,其運算規(guī)則如下:如有intn=7,y;執(zhí)行y=++n;則y=8,n=8;++在前,n先自加1再把結(jié)果給表達式y(tǒng)執(zhí)行y=n++;則y=7,n=8;++在后,先把n的值給表達式y(tǒng),n再自加1執(zhí)行y=--n;則y=6,n=6;--在前,n先自減1再把結(jié)果給表達式y(tǒng)執(zhí)行y=n--;則y=7,n=6;--在后,先把n的值給表達式y(tǒng),n再自減1不管++或--在前還是在后,最后n的值是一樣,只表達式的結(jié)果不同。4.逗號運算符和逗號表達式(1)其表形式為:y=(表達式1,表達式2,……表達n)(2)運算規(guī)則為:先求表達式1的值,再求表達式2的值,……,再求表達式n的值,y的值為表達式n的值。(3)其運算結(jié)合方向為從左向右。5.關(guān)系運算符(<,>,==,<=,>=,!=)關(guān)系運算的結(jié)果得一個整數(shù)值:0(假)或1(真)。例如,a=10,b=6;則a>=b表達式的值為1(真)。關(guān)系運算符是雙目運算符,結(jié)合方向左至右。<,>,<=,>=優(yōu)先級相同,==、!=優(yōu)先級相同,前四個級別于高后兩種。關(guān)系表達式(a=3)>(b=4),a>c==c,a!=c+d等都是合法的關(guān)系表達式,其結(jié)果要么是1,要么是0。6.邏輯運算符邏輯運算符有&&,||,!,前兩者為雙目運符,!為單目運算符。邏輯運算符的結(jié)合方向從左向右。邏輯運算符的優(yōu)先級:!最高,&&次之,||最低。邏輯表達式:用邏輯運算符連接關(guān)系表達式,如(a>0)&&(b>5),其運算結(jié)果是1或0。邏輯表達式的運算規(guī)劃如表2-所示。表2-〓邏輯表達式的運算規(guī)則ab!a!ba&&ba||b非0非00011非0001010非01001001100從表2-中可以看出:(1)&&(邏輯與),兩個對象全為真才為真。x=5,y=6,則x&&y為T,即為1。(2)||(邏輯或),一個對象為真為真。x=3,y=0,則x||y為T,即為1。(3)!(邏輯非):對一個變量x=9,則!x為假,x=0,則!x為真。(4)在某些情況下,邏輯表達式不一定要全部運算。7.條件運算符表達式1:?表達式2:表達式3(三目運算)(1)當(dāng)表達式1為真時,取表達式2的值,為假時取表達式3的值。(2)條件運符的結(jié)合方向為“自右至左”。(3)條件運符優(yōu)先于賦值運算符,低于關(guān)系、算述、邏輯運算符。8.運算符的之間從高到低的運算優(yōu)先次序在一個由多個運算組成的表達式中,先運算最高級別,最后運算最低級別。C語言中的運算符優(yōu)先級如表2-所示。從表中可以看出括號的運算級別最高,逗號為最低級別。表2-〓運算符的優(yōu)先級優(yōu)先級運算符結(jié)合性1()[]->從左往右2++--sizeof&*+(正號)-(負(fù)號)從右往左3(強制性轉(zhuǎn)換類型)從右往左4*(乘)/%從左往右5+(加)-(減)從左往右6<<(左移)>>(右移)從左往右7<><=>=從左往右8==!=從左往右9&(按位與)從左往右10^(按位異或)從左往右11|(按位或)從左往右12&&從左往右13||從左往右14?:(條件運算符)從右往左15=*=/=+=-=%=<<=>>=|=從右往左16,從左往右2.1.3〓常見錯誤舉例1.兩個關(guān)系表達式連用誤以為C語言表達式a>b>c的含義是b大于c小于a。實際上,a>b>c的實際含義是(a>b)>c,要想表示b大于c小于a,關(guān)系表達式應(yīng)這樣寫:(a>b)&&(b>c)。2.將&&,||誤輸入為&,|在C語言中,&&,||是邏輯運算符,而&,|是位運算符,其中&也可以是地址運算符。如果將&&,||誤輸入為&,|編譯的時候不會有語法錯誤,但隱含著邏輯錯誤。3.用!>表示不大于誤以為a!>b表示“a不大于b”,“a不大于b”應(yīng)這樣表示:!(a>b)。4.對算術(shù)表達式使用++和--運算符++和—本質(zhì)上是賦值操作,因此不能作用于表達式。下面的做法是錯誤的:printf(“%d”,(a+b)++);5.在用printf打印單引號、雙引號、反斜杠時,沒有在這些字符前利用反斜杠構(gòu)成轉(zhuǎn)移字符printf(“youshouldsay“hello”!”);應(yīng)該為:printf(“youshouldsay\“hello\”!”);會在屏幕上輸出:youshouldsay“hello”!6.利用scanf函數(shù)輸入變量時多了\n下面的程序在執(zhí)行時,會出現(xiàn)問題:inta,b;scanf(“%d%d\n”,&a,&b);//應(yīng)該為scanf(“%d%d”,&a,&b);7.執(zhí)行程序時,沒有按照scanf函數(shù)指定的形式輸入scanf函數(shù)要求必須按照固定的形式從鍵盤輸入,例如(假設(shè)為a和b賦值2和3,<CR>代表回車):若scanf(“%d%d\n”,&a,&b);應(yīng)從鍵盤輸入:2空格3<CR>若scanf(“%d,%d”,&a,&b);應(yīng)從鍵盤輸入:2,3<CR>若scanf(“a=%d,b=%d”,&a,&b);應(yīng)從鍵盤輸入:a=2,b=3<CR>因此,初學(xué)者要養(yǎng)成一個良好的編程習(xí)慣,不要編寫程序時有的用scanf(“%d%d\n”,a,b);有的用scanf(“%d,%d”,a,b);。最好直截了當(dāng)使用scanf(“%d%d”,a,b);輸入時用空格分隔。8.printf函數(shù)或scanf函數(shù)調(diào)用時,格式控制與表達式類型不一致或數(shù)量不相等下面的程序是錯誤的:inta,b;floetf;scanf(“%d”,&a,&b);//格式控制符少了一個%df=a*1.0/b;printf(“a=%d,b=%d,f=%d”,a,b,f);//第3個%d應(yīng)該為%f9.調(diào)用scanf函數(shù)輸入浮點數(shù)時規(guī)定了精度下面的scanf函數(shù)的調(diào)用時錯誤的:floatf;scanf(“%4.2f”,&f);//應(yīng)該為scanf(“%f”,&f);10.對算術(shù)表達式取地址取地址運算符&只能用于變量,下面的語句是錯誤的:scanf(“%d”,&(a+b));11.輸入字符常量時漏掉了單引號,認(rèn)為A、B就是‘A’、‘B’charch=A;//應(yīng)該是:charch=‘A’;charc;c=B;//應(yīng)該是:charch=‘B’;12.“=”的左邊使用表達式C語言規(guī)定不能對表達式賦值,因為表達式不對應(yīng)內(nèi)存單元。下面的語句是錯誤的:inta,b;a+b=10;13.對于float類型變量使用%(求余)運算符inta;a=9.3%3;//應(yīng)該為:a=9%3;14.語序顛倒初學(xué)者會誤以為下面的程序輸出a=31main(){〓inta,b;〓a=b+1;〓b=30;〓printf(“a=%d”,a);}由于在對a賦值時,b的值是未知的,因此a的值也不可預(yù)料。后面的賦值語句對b賦值30,但這并未影響a的值。也就是說a的值不會自動變成31。要想輸出a=31,應(yīng)將“a=b+1;”放到“b=30;”的后面。15.混淆了字符零和數(shù)值零有些初學(xué)者認(rèn)為‘0’的值是0,但實際上‘0’是字符零,不是數(shù)值零,‘0’的ASCII碼值是48。

2.2〓實訓(xùn)內(nèi)容實驗一〓驗證性實驗一、實驗?zāi)康?1)熟悉各數(shù)據(jù)類型的定義方法及表示的數(shù)據(jù)范圍。(2)熟練表達式的表示方法。(3)熟悉各運算符的優(yōu)先級。(4)了解表達式的運行結(jié)果。二、實驗設(shè)備和儀器(1)IBMPC或兼容計算機。(2)Windows9x/2000/XP操作系統(tǒng)。(3)VisualC++6.0。三、實驗內(nèi)容(一)調(diào)試程序11.實驗要求驗證各種數(shù)據(jù)類型的定義方法及變量在存儲空間所占字節(jié)數(shù)。有a1,a2,a3,a4,a5,a6,a7,a8八個變量,數(shù)據(jù)類型分別定義為:chara1;a1在內(nèi)存中所占的字節(jié)為_____________inta2;a2在內(nèi)存中所占的字節(jié)為_____________shorta3;a3在內(nèi)存中所占的字節(jié)為_____________unsigneda4;a4在內(nèi)存中所占的字節(jié)為_____________longa5;a5在內(nèi)存中所占的字節(jié)為_____________floata6;a6在內(nèi)存中所占的字節(jié)為_____________doublea7;a7在內(nèi)存中所占的字節(jié)為_____________longdoublea8;a8在內(nèi)存中所占的字節(jié)為_____________程序prog1.c是驗證變量在內(nèi)存中所占的空間,調(diào)試如下程序,查看運行結(jié)果是否與填的結(jié)果一致。2.程序代碼prog1.c#include<stdio.h>main(){〓chara1;〓inta2;〓shorta3;〓unsigneda4;〓longa5;〓floata6;〓doublea7;〓longdoublea8;〓printf("Thelengthofa1=is%d\n",sizeof(a1));〓printf("Thelengthofa2=is%d.\n",sizeof(a2));〓printf("Thelengthofa3=is%d.\n",sizeof(a3));〓printf("Thelengthofa4=is%d.\n",sizeof(a4));〓printf("Thelengthofa5=is%d.\n",sizeof(a5));〓printf("Thelengthofa6=is%d.\n",sizeof(a6));〓printf("Thelengthofa7=is%d.\n",sizeof(a7));〓printf("Thelengthofa8=is%d.\n",sizeof(a8));}3.實驗步驟步驟一:在D盤根目錄中創(chuàng)建一個以你的學(xué)號命名的文件夾,如D:\200710003。步驟二:打開“MicrosoftVisualC++”軟件,新建prog1.c文件,并輸入程序代碼,如圖2-1所示。圖2-1〓新建文件并輸入代碼步驟三:選擇“編譯”菜單命令進行編譯,如圖2-2所示。圖2-2〓編譯程序步驟四:若編譯有錯誤需要重新檢查;若編譯沒有錯誤,可以執(zhí)行程序,程序輸出結(jié)果如圖2-3所示。圖2-3〓程序運行結(jié)果按任意鍵關(guān)閉當(dāng)前窗口,保存后關(guān)閉prog1.c文件。(二)調(diào)試程序21.實驗要求用C語言編程計算各種表達式的值。已知有a=3,x=5,y=6,z=7;則計算下列表達式的值,請把手動計算后把結(jié)果填在空白處。(1)x&&y=_____________;(2)(a%b<1)||(a/b>1)=_____________;(3)x+a%3*(int)(x+y)%2/4=_____________;(4)!(x>z)+y!=1&&(y+z)/2=_____________;(5)(i=3,i++,++i,i+5)=_____________;(6)=_____________;調(diào)試如下程序,查看運行結(jié)果是否與填的結(jié)果一致。2.程序代碼prog2.c#include<stdio.h>main(){〓inta=3,b=4,x=5,y=6,z=7,i,y1,y2,y3,y4,y5;〓doubley6;〓y1=x&&y;〓y2=(a%b<1)||(a/b>1);〓y3=x+a%3*(int)(x+y)%2/4;〓y4=!(x>z)+y!=1&&(y+z)/2;〓y5=(i=3,i++,++i,i+5);〓y6=a/3.0-6.0*y/(5.0+x);〓printf("表達式x&&y的值=%d\n",y1);〓printf("表達式(a%b<1)||(a/b>1)的值=%d\n",y2);〓printf("表達式x+a%3*(int)(x+y)%2/4的值=%d\n",y3);〓printf("表達式!(x>z)+y!=1&&(y+z)/2的值=%d\n",y4);〓printf("表達式(i=3,i++,++i,i+5)的值=%d\n",y5);〓printf("表達式a/3.0-6.0*y/(5.0+x)的值=%f\n",y6);}3.實驗步驟步驟一:打開“MicrosoftVisualC++”軟件,新建prog2.c文件,并輸入程序代碼,如圖2-4所示。圖2-4〓新建文件并輸入程序代碼步驟二:選擇“編譯”菜單命令進行編譯,如圖2-5所示。圖2-5〓編譯程序步驟三:若編譯有錯誤,需要重新檢查;若編譯沒有錯誤,可以執(zhí)行程序,此時輸出結(jié)果如圖2-6所示。圖2-6〓程序運行結(jié)果按任意鍵關(guān)閉當(dāng)前窗口,保存后關(guān)閉prog2.c文件。(三)調(diào)試程序31.實驗要求調(diào)試下面的程序,驗證格式修飾符的使用。2.程序代碼prog3.c#include<stdio.h>main(){〓floatx=1234.567;〓doubley=1234.5678;〓printf("x=%f,y=%f\n",x,y);〓printf("x=%6.3f,y=%10.3f\n",x,y);〓printf("x=%g\n",x);}3.實驗步驟步驟一:打開“MicrosoftVisualC++”軟件,新建prog3.c文件,并輸入程序代碼,如圖2-7所示。圖2-7〓新建程序并輸入程序代碼步驟二:選擇“編譯”菜單命令進行編譯,如圖2-8所示。圖2-8〓編譯程序步驟三:若編譯有錯誤需要重新檢查;若編譯沒有錯誤,可以執(zhí)行程序,程序運行結(jié)果如圖2-9所示。圖2-9〓程序運行結(jié)果按任意鍵關(guān)閉當(dāng)前窗口,保存后關(guān)閉prog3.c文件。四、實驗報告要求(1)寫出程序一的實驗原理與程序的結(jié)果。(2)寫出程序二的實驗原理與程序的結(jié)果。(3)寫出程序三的實驗原理與程序的結(jié)果。

實驗二〓啟發(fā)性實驗一、實驗?zāi)康?1)掌握程序設(shè)計與調(diào)試的方法。(2)熟悉各運算符以及表達式的表示方法。(3)掌握表達式的運行結(jié)果。(4)掌握程序填空、改錯的方法。(5)掌握程序編程方法。二、實驗設(shè)備和儀器(1)IBMPC或兼容計算機。(2)Windows9x/2000/XP操作系統(tǒng)。(3)VisualC++6.0。三、實驗內(nèi)容1.填空題從鍵盤輸入一個三位正整數(shù),把它每一位上的數(shù)字取出來,即輸出它的個位、十位、百位上的數(shù)字。運行結(jié)果如下:請輸入一個三位正整數(shù):(printf輸出提示信息)123<CR>(從鍵盤輸入123,<CR>代表Enter鍵)個位=3,十位=2,百位=1(輸出個位、十位、百位數(shù)字)請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:程序中//是對問題的提示。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!程序如下:#include<stdio.h> main(){〓intn,a,b,c;//定義變量〓printf("請輸入一個三位正整數(shù):\n");//輸入提示〓scanf("%d",&n);//輸入語句,為變量n賦值〓a=__1__;//取n個位上的數(shù)字〓b=__2__;//取n十位上的數(shù)字〓c=__3__;//取n百位上的數(shù)字〓printf(“個位=%d,十位=%d,百位=%d”,a,b,c);} 2.改錯題從鍵盤上輸入兩個整數(shù),輸出它們的和。運行結(jié)果如下:請輸入兩個整數(shù):(printf輸出提示信息)23<CR>(從鍵盤輸入1空格2,<CR>代表Enter鍵)c=5(輸出和)請改正程序中的五處錯誤,使程序能輸出正確的結(jié)果。注意:程序中//是對問題的提示。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!程序如下:#include<stdio.h> main(){〓intabc;//定義三個整型變量〓printf("請輸入兩個整數(shù):\n");//輸入提示〓scanf("%d%d",a,b);//輸入語句,為變量a和b賦值〓c=a+b//計算a和b的和〓printf(“c=%d\n,c);//輸出變量c}3.編程題輸入兩個整數(shù),編程實現(xiàn)兩個數(shù)的互換。運行結(jié)果如下:pleaseinputa,b:(printf輸出提示信息)23<CR>(從鍵盤輸入1空格2,<CR>代表Enter鍵)交換前a=2,b=3交換后a=3,b=2程序如下:include<stdio.h>main(){〓inta,b,t;〓printf("pleaseinputa,b:\n");〓scanf("%d%d",&a,&b);〓printf(“交換前a=%d,b=%d\n”,a,b);〓/*將下面的代碼補充完整*/〓printf(“交換后a=%d,b=%d\n”,a,b);}

實驗三〓綜合性實驗一、實驗?zāi)康?1)掌握程序設(shè)計與調(diào)試的方法。(2)熟悉各運算符以及表達式的表示方法。(3)掌握基本的輸入輸出語句。(4)掌握程序編程能力。二、實驗設(shè)備和儀器(1)IBMPC或兼容計算機。(2)Windows9x/2000/XP操作系統(tǒng)。(3)VisualC++6.0。三、實驗內(nèi)容1.填空題從鍵盤輸入三個小寫字母,輸出其ASCII碼和對應(yīng)的大寫字母。運行結(jié)果如下:請輸入三個小寫字母a,b,c: (printf輸出提示信息)abc<CR> (從鍵盤輸入abc,<CR>代表Enter鍵)97,98,99 (輸出ASCII碼)A,B,C (輸出對應(yīng)的大寫字母)請在程序的下劃線處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:程序中//是對問題的提示。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!程序如下:#include<stdio.h>main(){〓__1__a,b,c;//定義三個字符型變量〓printf("請輸入三個小寫字母a,b,c:\n");//輸入提示〓scanf("%c%c%c",&a,&b,&c);//為三個變量賦值,注意輸入的格式!〓printf("__2__,__3__,__4__\n",a,b,c);//輸出ASCII碼〓printf("%c,%c,%c\n",__5__,__6__,__7__);//輸出對應(yīng)的大寫字母}2.改錯題從鍵盤輸入為三個不同的變量賦值,輸出每個變量的值。運行結(jié)果如下:2<CR>(從鍵盤輸入2,<CR>代表Enter鍵)3.5<CR>(從鍵盤輸入3.5,<CR>代表Enter鍵)a<CR>(從鍵盤輸入a,<CR>代表Enter鍵)a=2,x=3.500000,ch=a(輸出三個變量的值)請改正程序中的錯誤,使程序能輸出正確的結(jié)果。注意:程序中//是對問題的提示。不得增行或

溫馨提示

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

評論

0/150

提交評論