C語言1-2章課后題_第1頁
C語言1-2章課后題_第2頁
C語言1-2章課后題_第3頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第一章C 語言概述課后題一、選擇題1、一個(gè) C 語言程序總是從()。A 、主過程開始執(zhí)行B、主函數(shù)開始執(zhí)行C、子程序開始執(zhí)行D、主程序開始執(zhí)行2、 C 語言能直接執(zhí)行的程序是()。A 、源程序B、匯編程序C、目標(biāo)程序D、可執(zhí)行程序3、以下敘述中正確的是()。A 、 C 語言程序中的注釋部分可以出現(xiàn)在程序中任意合適的地方B、花括號(hào)“ ”和“”只能作為函數(shù)體的定界符C、構(gòu)成 C 語言程序的基本組成單位是函數(shù),所有函數(shù)名都可以由用戶命名D、分號(hào)是 C 語言語句之間的分隔符,不是語句的一部分4、以下選項(xiàng)中,不合法的C 語言程序函數(shù)體是()。A、 ;B、 C、 printf( “computer”);

2、D、 int a=1;5、要把高級(jí)語言編寫的源程序轉(zhuǎn)換為目標(biāo)程序,需要使用()。A 、編輯程序B、驅(qū)動(dòng)程序C、編譯程序D、診斷程序二、填空題1、 C 語言程序的基本單位是()。2、C 語言源程序文件名的后綴是 (),經(jīng)過編譯后生成的目標(biāo)文件名的后綴是(),經(jīng)過鏈接之后生成的可執(zhí)行文件名的后綴是()。3、計(jì)算機(jī)語言包括()、()和()。其中計(jì)算機(jī)能夠直接識(shí)別的語言是(),()很接近人們習(xí)慣使用的自然語言和數(shù)學(xué)語言。4、按照結(jié)構(gòu)化程序設(shè)計(jì)原則,常見的程序基本結(jié)構(gòu)有()、()和()。5、循環(huán)結(jié)構(gòu)包含()循環(huán)和()循環(huán)。三、簡單題1、什么是程序?什么是程序設(shè)計(jì)?2、解釋源程序、目標(biāo)程序和可執(zhí)行程序的含

3、義。3、寫出 C 語言的特點(diǎn)。四、編程題1、參照本章例題,編寫一個(gè)C 語言程序,輸出以下信息:happy new year!2、參照本章例題,編寫程序求兩個(gè)數(shù)中的較小值。第二章C 語言程序設(shè)計(jì)基礎(chǔ)課后題一、選擇題1、以下選項(xiàng)中,正確的整型數(shù)據(jù)是()。A、1.2B、 -123C、 723 456D、 567 8902、下面字符常量的表達(dá)形式中正確的是()。A、“Z”B、“ C、 1D、 3783、ch 為字符型變量, 執(zhí)行語句 “ ch=C+ 5-4;”,將 ch 按字符類型輸出的結(jié)果是()。A 、 DB、 68C、 56D、不確定的值4、 C 語言中要求運(yùn)算對(duì)象必須是整型數(shù)據(jù)的運(yùn)算符是()。A

4、、+B、 -C、 %D、 /5、變量 a 為整型、b 為實(shí)型、c 為雙精度型、 d 為字符型,則表達(dá)式 a=a*b+d-c 的類型是()。A 、整型B、實(shí)型C、雙精度型D、字符型6、有以下定義語句,編譯時(shí)會(huì)出現(xiàn)編譯錯(cuò)誤的是()。A 、 char a=a;B、 char a=n;C、 char a=aa;D、 char a=x2d ;7、設(shè)有語句“ int a=3 ;”,執(zhí)行語句 printf( “%d %d”,a+1,a+); 后輸出的值是()。A、4 3B、3 4C、4 4D、3 3二、填空題1、在 C 語言中(以 16 位計(jì)算機(jī)為例) ,一個(gè) char 型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為(),其

5、數(shù)值范圍是();一個(gè) int 型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為(),其數(shù)值范圍是();一個(gè) long 型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為(),其數(shù)值范圍是 ();一個(gè) float 型數(shù)據(jù)在內(nèi)存中所占字節(jié)數(shù)為(),其數(shù)值范圍是()。2、字符常量使用一對(duì)()界定單個(gè)字符,而字符串常量使用一對(duì)()來界定若干個(gè)字符的序列。3、設(shè)“ floatx=2.5;int a=7;float y=4.7;”,則表達(dá)式x+a%3*( int )( x+y )%2/4 的值為()。4、已知“ char a=a,b= b,c=c,i; ”,則表達(dá)式i=a+b+c 的值為() 。5、假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,

6、a+,b+,a+b )的值為()。6、若有定義“int m=5,n=3; ”,則表達(dá)式m/=n+4 的值是(),表達(dá)式m=(m=1,n=2,n-m)的值是(),表達(dá)式m+=m-=(m=1)*(n=2)的值是()。三、簡答題1、簡述 a和 ”a”的區(qū)別。2、已知,“ int m=12,m=15;”,為什么整型變量m 的值在運(yùn)算后不是當(dāng)初的12,而是15?3、將下面各數(shù)用八進(jìn)制和十六進(jìn)制數(shù)表示。十進(jìn)制數(shù):32-1-327682002-1280八進(jìn)制數(shù):十六進(jìn)制數(shù):4、寫出以下程序的運(yùn)行結(jié)果int main()charc1=a,c2=b,c3= c,c4=101,c5=116;printf( “a%

7、c b%ctc%ctabcn ”,c1,c2,c3);printf( “tb%c %c ”,c4,c5);return 0;5、寫出以下程序的運(yùn)行結(jié)果。int main()int i,j,m,n;i=8;j=10;m=+i;n=j+;printf( “%d,%d,%d,%d ”,i,j,m,n);return 0;四、編程題已知“ int x=10 ,用 2;”,寫出將x 和 y 的值相互交換的語句。測(cè)試一一、單項(xiàng)選擇題1、以下描述中正確的是()A 、 C 語言程序的執(zhí)行是從main 函數(shù)開始的,到程序的最后一個(gè)函數(shù)結(jié)束B、 C 語言程序的執(zhí)行是從第一個(gè)函數(shù)開始的,到程序的最后一個(gè)函數(shù)結(jié)束C、

8、 C 語言程序的執(zhí)行是從main 函數(shù)開始的,到程序的main 函數(shù)結(jié)束D、 C 語言程序的執(zhí)行是從第一個(gè)函數(shù)開始的,到程序的main 函數(shù)結(jié)束2、若有語句“char a;”,并要將字符a 賦給變量 a,則下列賦值表達(dá)式正確的是()。A 、 a=a;B、 a=a;C、 a=”97”;D、 a=97;3、若有語句“int a=5 ;”,則執(zhí)行語句“a+a*=10 ;”后,a 的值是()。A、55B、 100C、 60D、 1054、設(shè)有“int x=11 ;”,則表達(dá)式(x+*1/3)的值是()。A 、 3B、 4C、 11D、 125、能正確表達(dá)邏輯關(guān)系“a>=10”或“a<=0”

9、的C 語言表達(dá)式是()。A 、 a>=10 or a<=0B、 a>=0 | a<=10C、 a>=10 && a<=0D、 a>=10 | a<=06、已有定義“int x=3 , y=4 ;”,則表達(dá)式x>y&&y的值是()A 、 trueB、 0C、 falseD、 17、有如下語句,則當(dāng)x=5是, c 的值是()int c=5,x;scanf(“%d”,&x);switch(x+1)case 6:c+;case 8:c+;break;default:c+=3;printf(“%d”,c);A

10、、 6B、 7C、 8D、語法錯(cuò)誤8、若有以下程序,則語句a=a+1 執(zhí)行的次數(shù)是()int main()int x=1,a=1;doa=a+1;while(x);return 0;A 、 0B、 1C、無限次D、有限次9、以下程序的輸出結(jié)果是()int main()int a33=1,2,3,4,5,6,i,j,s=0;for(i=1;i<3;i+)for(j=0;j<=i;j+)s+=aij;printf(“%dn ”,s);return 0;A、18B、 19C、 20D、 2110、 C語言中,二維數(shù)組在內(nèi)存中的存放順序是()A 、行優(yōu)先B、列優(yōu)先C、由編譯系統(tǒng)決定D、由用

11、戶決定11、以下程序的輸出結(jié)果是(int main())char ch= 1,2,0,3,4,0;printf( “%s”,ch);return 0;A 、 1234B、 12034C、 12D、有語法錯(cuò)誤12、以下程序執(zhí)行后輸出的結(jié)果是()void f (int x,int y )int t;if(x<y)t=x;x=y;y=t;int main()int a=4,b=3,c=5;f(a,b);f(a,c);f(b,c);printf( “%d,%d,%dn ”,a,b,c);return 0;A 、 3,4,5B、 5,3,4C、 5,4,3D、 4,3,513、執(zhí)行如下程序段后,a

12、 的值為()int *p,a=10,b=1;p=&a;a=*p+b;A、12B、 11C、 10D、編譯出錯(cuò)14、以下程序執(zhí)行后的輸出結(jié)果是(int main())int x8=8,7,6,5,0,0,*s;s=x+3;printf(“%dn”,s2);return 0;A 、隨機(jī)值B、 0C、 5D、 615、若要將text.txt 文件打開用于追加信息,則以下格式正確的是(A 、 fp=fopen( “text.txt ”,”r”);B、 fp=fopen( “text.txt ”,”r+”);C、 fp=fopen( “text.txt ”,”a+”);D、 fp=fopen(

13、“text.txt ”,”w”);16、有定義語句“double x, *p ;”,則以下表達(dá)式中正確的是()A 、 *p=&x;B、 p=x;C、 p=&x;D、 *p=x;17、下面程序的正確輸出結(jié)果是()。(規(guī)定用U 表示空格)int main()float x=5.783,y=-10.2345;printf( “x=%-8.2f,y=%-8.2fn”,x,y);return 0;A 、 x=5.78UUUU,y=-10.23UUB、 x=5.78,y=-10.23C、 5.78,-10.23D、 x=UUUU5.78,y=UU-10.2318、 sizeof(float

14、) 是()A 、一個(gè)浮點(diǎn)表達(dá)式B、一個(gè)不合法的表達(dá)式C、函數(shù)調(diào)用結(jié)果,是一個(gè)整型表達(dá)式D、一種函數(shù)調(diào)用19、下列數(shù)據(jù)中屬于字符串常量的是()A、AB、 ”ABC ”C、 ABCD、 ABC 20、用下面的 scanf 函數(shù)輸入數(shù)據(jù),使得i=10,k=15 ,正確的鍵盤輸入方法是()(用 CR表示回車, U 表示空格)int main()int i,k;scanf(“i=%d,k=%d ”,&i,&k);return 0;A 、 i=10CRk=15CRB、 i=10,k=15CRC、 10U15CRD、 10,15CR二、判斷題1、在一個(gè) C 語言程序中, main 函數(shù)必須出

15、現(xiàn)在所有函數(shù)之前。()2、引用數(shù)組元素時(shí),下標(biāo)可以是整型常量或整型表達(dá)式。()3、預(yù)處理命令都必須以“#”開頭。()4、函數(shù)的形參都屬于全局變量。()5、靜態(tài)( static)類型變量在函數(shù)調(diào)用結(jié)束后仍然存在。()6、函數(shù)定義可以嵌套,函數(shù)調(diào)用不可以嵌套。()7、字符類型變量只能存儲(chǔ)一個(gè)字符。()8、從功能上講, “ putchar(c);”等價(jià)與“ printf( “%c”,c);”。()9、表達(dá)式 (7-1)*2!=10 的值為 1。()10、實(shí)參向形參傳遞值可以是單向傳遞,也可以是雙向傳遞。()三、填空題1、若從鍵盤輸入58,則以下程序的輸出結(jié)果是。int main()int a ;sc

16、anf(“%d”,&a);if(a>50) printf( “%d”,a);if(a>40) printf( “%d”,a);if(a>30) printf( “%d”,a);return 0;2、以下程序的輸出結(jié)果是int main()。int x=23 ;doprintf(“%d ”,x-);while(!x);return 0;3、將程序補(bǔ)充完整(要求,輸入任意兩個(gè)整數(shù)a 和 b,若b 不等于0,則輸出a/b 的值,結(jié)果保留兩位小數(shù)) 。#include<stdio.h>int main()int a,b;float c;printf( “input

17、 a,b:”);scanf(“%d,%d”,&a,&b);if()c=1.0*a/b;printf(“%.2fn ”,c);return 0;4、將程序補(bǔ)充完整(用for循環(huán)求1-100 的和)。#include<stdio.h>int main()int i,sum;for(;i<=100;i+)sum+=i;printf( “%dn”,sum);return 0;5、將程序補(bǔ)充完整(輸入兩個(gè)整數(shù)并求最大值)。#include<stdio.h>int main()int a,b,c;printf( “input two numbers:nscan

18、f(“%d,%d”,&a,&b);c=;printf( “max=%dn ”,c);return 0;”);int max(int x,int y)int z;z=x>yx:y;return z;四、編程題1、用數(shù)組計(jì)算fibonacci 數(shù)列的前20 個(gè)數(shù),并按每行打印5 個(gè)數(shù)的格式輸出。2、“百錢百雞” 問題是一個(gè)很經(jīng)典的窮舉問題。公元前 5 世紀(jì),我國古代數(shù)學(xué)家張丘建在算經(jīng)中提出,雞翁一值錢五,雞母一值錢三,雞雛三值錢一。百錢買百雞,問雞翁、母、雛各幾何?編程求解該問題。測(cè)試二一、單項(xiàng)選擇題1、以下描述中正確的是()A 、 C 語言程序由過程和函數(shù)組成的B、 C 語

19、言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x)C、 C 語言函數(shù)不可以單獨(dú)編譯D、 C 語言中除了main 函數(shù),其他函數(shù)不可以作為單獨(dú)文件形式存在2、以下 C 語言用戶標(biāo)識(shí)符中,不合法的是()。A、_1B、 AaBcC、 a_bD、 a b3、若有定義“double a=22; int i=0,k=18;A 、 a=a+,i+;B、 i=(a+k)<=(i+k);C、 i=a%11;D、 i=!a;”,則不符合C 語言規(guī)定的賦值語句是()。4、以下選項(xiàng)中,與“if(a=1)a=b;else a+;”語句功能不同的switch語句是()。A 、 switch(a)case :a=b;br

20、eak;default:a+;B、 switch(a=1)case 0 :a=b;break;case1:a+;C、 switch(a)default:a+;break;case 1:a=b;D、 switch(a=1)case 1:a=b;break;case 0:a+;5、有以下程序段,為避免此程序段陷入死循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是()。int n,t=1,s=0;scanf(“%d”,&n);dos=s+t;t=t-2;while(t!=n);A 、任意正奇數(shù)B、任意負(fù)偶數(shù)C、任意負(fù)奇數(shù)D、任意正偶數(shù)6、以下程序運(yùn)行后的輸出結(jié)果是()#include<stdio.h>

21、;int main()int i,j,m=1;for(i=1;i<3;i+)for(j=3;j>0;j-)if(i*j)>3)break;m*=i*j;printf( “m=%dn ”,m);return 0;A 、 m=6B、 m=2C、 m=4D、 m=57、以下程序運(yùn)行后的輸出結(jié)果是()#include<stdio.h>int main()int a=1,b=2;for(;a<=8;a+)b+=a;a+=2;printf( “%d,%dn ”,a,b);return 0;A 、 9,18B、 8,11C、 7,11D、 10,148、以下關(guān)于retur

22、n 語句的敘述中正確的是()A 、一個(gè)自定義函數(shù)中必須有一條return 語句B、一個(gè)自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return 語句C、定義成void 類型的函數(shù)中可以有帶返回值的return 語句D、沒有 return 語句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處9、下列選項(xiàng)中,能正確定義數(shù)組的語句是()A 、 int num0.2008;B、 int num;C、 int N=2008;int numN;D、 #define N 2008int numN;10、若有定義“int ( *pt ) 3; ”,則下列說法正確的是(A 、定義了基類型為int 的 3 個(gè)指針變量B、定義了基

23、類型為int 的具有 3 個(gè)元素的指針數(shù)組ptC、定義了一個(gè)名為*pt 、具有 3 個(gè)元素的整型數(shù)組D、定義了一個(gè)名為pt 的指針變量,它可以指向每行有11、以下程序運(yùn)行后的輸出結(jié)果是()3 個(gè)整型元素的二維數(shù)組#include<stdio.h>int main()int a5=1,2,3,4,5,b5=0,2,1,3,0,i,s=0;for(i=0;i<5;i+)s=s+abi;printf(“%dn ”,s);return 0;A 、 6B、 10C、 11D、 1512、以下程序執(zhí)行后輸出的結(jié)果是()#include<stdio.h>#define SUB(

24、a) (a)-(a)int main()int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%dn”,d);return 0;A 、 0B、 -12C、 -20D、 1013、 14、以下程序執(zhí)行后的輸出結(jié)果是(#include<stdio.h>int main())int a=2,b=2,c=2;printf( “%dn”,a/b&c);return 0;A 、 0B、 1C、 2D、 314、設(shè)有定義“int a=1,b=2,c=3; ”,以下語句中,執(zhí)行效果與其他A 、 if(a>b)c=a,a=b,b=c;B、 if(a>b)c

25、=a,a=b;b=c;C、 if(a>b)c=a;a=b;b=c;D、 if(a>b)c=a;a=b;b=c;15、以下程序運(yùn)行后的輸出結(jié)果是()3 個(gè)不同的是()#include<stdio.h>int main()int c=0,k;for(k=1;k<3;k+)switch(k) default:c+=k;case 2:c+;break;case 4:c+=2;break;printf( “%dn ”,c);return 0;A 、 3B、 5C、 7D、 916、以下程序的輸出結(jié)果是(int main())int a10=1,2,3,4,5,6,7,8,9

26、,10,*p=a;printf( “%d,%dn ”,*(p+2),*p+9);return 0;A 、 3,10B、 4,1C、 1,10D、 2,917、下面程序的正確輸出結(jié)果是(int main())。char str5= ”ABCD ”,*p=str;printf( “%dn”,*(p+4);return 0;A、68B、 DC、 0D、 018、下面各語句中,能正確進(jìn)行字符串初始化操作的語句是(A 、 char s15= “ABCDE ”;B、 char s26= A,B ,C,D,E;C、 char st= “ABCDE ”;D、 char s5= A,B,C,D,E;19、若有說

27、明“int a34=0;”,則下面正確的敘述是(A 、數(shù)組 a 中每個(gè)元素均可得到初值0B、只有元素a00 可得到初值0C、數(shù)組 a 中各個(gè)元素都可以得到初值,但其值不一定是D、此說明語句不正確0)20、若有說明“int a34; ”,則對(duì)數(shù)組a 中元素的非法引用是()A 、 a13B、 a04C、 a02*1D、 a4-20二、判斷題1、 break 是結(jié)束本次循環(huán),而continue 是結(jié)束所有的循環(huán)(2、在 C 語言中,變量不區(qū)分大小寫。(3、不同的函數(shù)中可以使用相同的變量名。(4、形式參數(shù)是局部變量。(5、若用數(shù)組名作為函數(shù)的實(shí)參,傳遞給形參的是數(shù)組第一個(gè)元素的值。6、 C 語言是低級(jí)語言。(7、在 C 語言中,每個(gè)函數(shù)都必須要有一個(gè)且只有一個(gè)main 函數(shù)。8、在 C 語言中,整型常數(shù)表示的方法有3 種。()()()9、定義一個(gè)靜態(tài)變量時(shí)沒有必要對(duì)它進(jìn)行初始化。10、假如 x 和 y 為 double 型,則表達(dá)式“x=2;y=x+3/2()”;的值是3。()三、填空題

溫馨提示

  • 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)論