《C語言程序設計基礎》習題以及答案doc資料_第1頁
《C語言程序設計基礎》習題以及答案doc資料_第2頁
《C語言程序設計基礎》習題以及答案doc資料_第3頁
《C語言程序設計基礎》習題以及答案doc資料_第4頁
《C語言程序設計基礎》習題以及答案doc資料_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

千里之行,始于足下讓知識帶有溫度。第第2頁/共2頁精品文檔推薦《C語言程序設計基礎》習題以及答案doc資料《C語言程序設計基礎》習題以及答案

第一章C語言概述

一、挑選題

1.C語言規(guī)定,必需用作為主函數(shù)名。

A)FunctionB)includeC)mainD)stdio

2.一個C程序可以包含隨意多個不同名的函數(shù),但有且僅有一個,一個C程序總是從開頭執(zhí)行。

A)過程B)主函數(shù)C)函數(shù)D)include

3.是C程序的基本構成單位。

A)函數(shù)B)函數(shù)和過程C)超文本過程D)子程序

4.下列說法正確的是。

A)一個函數(shù)的函數(shù)體必需要有變量定義和執(zhí)行部分,二者缺一不行

B)一個函數(shù)的函數(shù)體必需要有執(zhí)行部分,可以沒有變量定義

C)一個函數(shù)的函數(shù)體可以沒有變量定義和執(zhí)行部分,函數(shù)可以是空函數(shù)

D)以上都不對

5.下列說法正確的是。

A)main函數(shù)必需放在C程序的開始

B)main函數(shù)必需放在C程序的最后

C)main函數(shù)可以放在C程序中間部分,執(zhí)行C程序時是從程序開始執(zhí)

行的

D)main函數(shù)可以放在C程序中間部分,執(zhí)行C程序時是從main函數(shù)開

始的

6.下列說法正確的是。

A)在執(zhí)行C程序時不是從main函數(shù)開頭的

B)C程序書寫格式嚴格限制,一行內(nèi)必需寫一個語句

C)C程序書寫格式自由,一個語句可以分寫在多行上

D)C程序書寫格式嚴格限制,一行內(nèi)必需寫一個語句,并要有行號

7.在C語言中,每個語句和數(shù)據(jù)定義是用結束。

A)句號B)逗號C)分號D)括號

8.下列字符串是合法的自定義標識符的是。

A)_HJB)9_studentC)intD)LINE1

9.不是C語言提供的合法關鍵字。

A)switchB)printC)caseD)default

10.C語言提供的合法關鍵字是。

A)breakB)printC)funitonD)end

11.C語言提供的合法關鍵字是。

A)continueB)procedureC)beginD)append

二、填空題

1.一個C程序至少包含一個,即。

2.一個函數(shù)由兩部分組成,它們是和。

3.函數(shù)體的范圍是。

4.函數(shù)體普通包括和。

5.C語言是通過來舉行輸入輸出的。

6.在C語言中一個標識符后面緊跟著一對圓括號,通常表明它是一個。

7.主函數(shù)名后面的一對圓括號中間可以為空,但一對圓括號不能。

第一章答案

一、挑選題

1~5CBACD6~10CCABA

11A

二、填空題

1.主函數(shù)main函數(shù)

2.函數(shù)的說明部分函數(shù)體

3.最外層的一對大括弧內(nèi)的部分

4.變量定義部分執(zhí)行部分

5.輸入和輸出函數(shù)

6.函數(shù)

7.省略

其次章數(shù)據(jù)類型、運算符與表達式

一、挑選題

1.在C語言中,下列數(shù)據(jù)類型屬于基本類型的是。

A)整型、浮點型、字符型B)共用體類型、整型

C)結構體類型、浮點型D)指針類型、字符型

2.C語言中不能表示的整型常量進制是。

A)十進制B)十六進制C)八進制D)二進制

3.在C語言中,轉義字符回車換行符是。

A)\nB)\tC)\rD)\b

4.在ASCII碼表中可以看到每個小寫字母的ASCII碼比相應的大寫字

母。

A)大32B)大64C)小32D)小64

5.設d為字符變量,下列表達式能夠完整正確賦值的是。

A)d=297B)d='a'C)d="a"D)d='abc'

6.10+'a'+1.5-567.345/'b'的結果是型數(shù)據(jù)。

A)charB)doubleC)intD)float

7.語句

inti=3;

k=(i++)+(i++)+(i++);

執(zhí)行過后k的值為,i的值為。

A)9,6B)12,5C)18,6D)15,5

8.inti=3;

printf("%d",-i++);

的輸出結果為,輸出后i的值為。

A)-3,4B)-4,4C)-4,3D)-3,3

9.已知在ASCII字符集中,數(shù)字0的序號為48,下面程序的輸出結果為。

#include

voidmain()

{

charx,y;

x='0';y='9';

printf("%d,%c\n",x,y);

}

A)因輸出格式不合法,輸出錯誤信息B)48,9

C)0,9D)0,57

10.已知在ASCII集中,字母A的序號為65,下面程序的輸出結果

為。

#include

voidmain()

{

charc1='Y',c2='B';

printf("%c,%d\n",++c1,c2--);

}

A)Y,66B)Z,65C)Z,66D)Y,65

11.C語言中,運算對象必需是整型數(shù)的運算符是。

A)*B)/C)%和/D)%

12.下列常數(shù)中,合法的C語言常量是。

A)'\n'B)e-310C)abcD)'1234'

13.下面程序的輸出結果是。

#include

voidmain()

{

intx=2,y=0,z;

x*=3+2;

printf("%d",x);

x*=y=z=4;

printf("%d",x);

}

A)840B)1040C)10,4D)8,4

14.若已定義x和y為double類型,則表達式x=1,y=x+3/2的值為。

A)1B)2C)2.0D)2.5

15.表達式(int)2.1416的值為。

A)2B)2.1C)0D)3

16.C語言規(guī)定標識符由等字符組成.

A)字母數(shù)字下劃線B)中劃線字母數(shù)字

C)字母數(shù)字逗號D)字母下劃線中劃線17.若有如下定義:inta=2,b=3;floatx=3.5,y=2.5;則表達式:

(float)(a+b)/2+(int)x%(int)y的值是。

A)2.500000B)3.500000C)4.500000D)5.000000

18.已知字母A的ASCII碼為十進制65,下面程序段的運行結果

為:。

charch1,ch2;

ch1='A'+2;

ch2='D'-3;

printf("%d,%c\n",ch1,ch2);

A)67,65B)C,AC)C,DD)67,A

19.設x、y均為float型變量,則以下不合法的賦值語句是。

A)++x;B)y=(x%2)/10;

C)x*=y+8;D)x=y=0;

20.設有以下定義,則能使值為3的表達式是:。

intk=7,x=12;

A)x%=(k%=5)B)x%=(k-k%5)

C)x%=kD)(x%=k)-(k%=5)

二、填空題

1.在C語言中,程序運行期間,其值不能被轉變的量叫。

2.在C語言中,要求對全部變量,遵循先定義后的原則。

3.可以用來表示C的整常數(shù)的進制是、、。

4.浮點型變量分為和,即float和double型。

5.C的字符常量是用括起來的一個字符,字符串常量用括起來的一組字符。

6.在一個變量定義語句中可以同時定義多個變量,變量之間用隔開。

7.下面的程序運行結果為。

#include

voidmain()

{

charc1,c2;

c1='a';

c2='b';

c1=c1-32;c2=c2-33;

printf("%c%c",c1,c2);

}

8.表達式10+'a'+1.5-0.5*'b'的結果。

9.在C語言中,可以利用,將一個表達式的值轉換成指定的類型。

10.#include

voidmain()

{

inti,j,m,n;

i=8;j=10;

m=++i;n=j++;

printf("%d,%d,%d,%d",i,j,m,n);

}

運行后i,j,m,n的值是。

其次章答案

一、挑選題

1~5ADAAB

6~10BAABC

11-15DABCA

16~20ABDBD

二、填空題

1.常量

2.使用

3.八進制十進制十六進制

4.單精度雙精度

5.單引號雙引號

6.逗號

7.AA

8.59.5

9.強制類型轉換

10.9,11,9,10

第三章挨次結構程序設計

一、挑選題

1.下列說法正確的是。

A)輸入項可以是一個浮點型常量,如scanf("%f",4.8);

B)惟獨格式控制,沒有輸入項也能舉行正確輸入,如

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

C)當輸入一個浮點型數(shù)據(jù)時,格式控制部分應規(guī)定小數(shù)點后的位數(shù),如

scanf("%5.3f",

D)當輸入數(shù)據(jù)時,必需指明變量的地址,如scanf("%f",

2.按照題目中已給出的數(shù)據(jù)的輸入和輸出形式,程序中輸入/輸出語句的正確是。

#include

voidmain()

{

inta;floatx;

printf("inputa,x:");

輸入語句

輸出語句

}

輸入形式inputa,x:32.1

輸出形式a+x=5.10

A)scanf("%d,%f",B)scanf("%d%f",printf("\na+x=%4.2f",a+x);printf("\na+x=%4.2f",a+x);

C)scanf("%d%f",

D)scanf("%d%3.1f",

printf("\na+x=%6.1f",a+x);printf("\na+x=%4.2f",a+x);

3.以下程序的輸出結果是。

#include

voidmain()

{

inti=010,j=10,k=0x10;

printf("%d,%d,%d\n",i,j,k);

}

A)8,10,16B)8,10,10C)10,10,10D)10,10,16

4.以下程序的輸出結果是。

#include

voidmain()

{

charc1='6',c2='0';

printf("%c,%c,%d,%d\n",c1,c2,c1-c2,c1+c2);

}

A)因輸出格式不合法,輸出出錯信息B)6,0,6,102

C)6,0,7,6D)6,0,5,7

5.設有如下定義

intx=10,y=3,z;

則語句

printf("%d\n",z=(x%y,x/y));

的輸出結果是。

A)3B)0C)4D)1

6.設有如下定義

intx=10,y=5,z;

則語句

printf("%d\n",z=(x+=y,x/y));

的輸出結果是。

A)1B)0C)4D)3

7.按照定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為:。

已有定義:floata1,a2;

輸入4.523

3.52

A)scanf("%f%f",B)scanf("%f,%f",a1,a2);

C)scanf("%4.3f,%3.2f",D)scanf("%4.3f%3.2f",a1,a2);

二、填空題

1.putchar函數(shù)的作用是,getchar函數(shù)的作用是。

2.printf函數(shù)的"格式控制"包括兩部分,分離是和。

3.不同類型的輸出內(nèi)容有不同的格式字符,其中是用來按十進制整數(shù)形

式輸出一個整型數(shù),是用來按小數(shù)形式輸出一個浮點數(shù),是用來輸出一個字符。

4.符號"

x*=3-1;printf("%d",x);

x/=y=z=2;printf("%d",x);

x=y=z;printf("%d",x);

x+=(y=z);printf("%d",x);

}

程序的輸出結果為。

7.編制程序對整數(shù)a與b舉行加,減,乘,除計算,要求顯示如下結果。

jia=70

jian=30

cheng=1000

chu=2

程序:

#include

voidmain()

{

(1)

a=50;b=20;

printf("jia=%d\n",(2));

printf("jian=%d\n",(3));

printf("cheng=%d\n",(4));

printf("chu=%d\n",(5));

}

將缺少的部分填在空白處。

8.以下程序的輸出結果為:____________。

#include

voidmain()

{

charc1,c2;

c1='A';

c2='B';

printf("%c\n%c\n",c1+33,c2+32);

}

三、編程題

1.請編寫一個程序,能顯示出以下兩行文字。

Iamastudent.

IloveChina.

2.請編寫一個程序,從鍵盤上輸入a=2,b=

3.4,c='D',向屏幕輸出對應的a,b,c的值。

第三章答案

一、挑選題

1-5DBABA

6-7DA

二、填空題

1.向終端輸出一個字符從終端輸入一個字符

2.格式說明一般字符

3.%d%f%c

4.取地址a在內(nèi)存中的地址

5.大括號

6.8424

7.(1)intbbba,b;(2)a+b(3)a-b(4)a*b(5)a/b

8.b

b

三、編程題

1.#include

voidmain()

{

printf("Iamastudent.\n");

printf("IloveChina.\n");

}

2.#include

voidmain()

{

inta;

floatb;

charc;

scanf("%d%f%c",

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

第四章挑選結構程序設計

一、挑選題

1.以下關于運算符優(yōu)先級的描述中,正確的是。

A)!(規(guī)律非)>算術運算>關系運算>&&(規(guī)律與)>||(規(guī)律或)>賦值運算

B)&&(規(guī)律與)>算術運算>關系運算>賦值運算

C)關系運算>算術運算>&&(規(guī)律與)>||(規(guī)律或)>賦值運算

D)賦值運算>算術運算>關系運算>&&(規(guī)律與)>||(規(guī)律或)

2.規(guī)律運算符的運算對象的數(shù)據(jù)類型。

A)只能是0或1B)只能是.true或.false.

C)只能是真或假D)任何類型的數(shù)據(jù)

3.能正確表示x的取值范圍在[0,100]和(-10,-5)的表達式是。

A)(x>=-10)&&(x0)&&(x-10)&&(x=0)&&(x=-10)&&(x=0)&&(x-10)&&(x=0)&&(x=A)&&(ch='A')&&(ch

voidmain()

{

intc,x,y;

x=1;y=1;c=0;

c=x++||y++;

printf("\n%d%d%d\n",x,y,c);

}

A)110B)211C)011D)001

7.若已知a=10,b=20,則表達式!a

voidmain()

{intx=6,y=0;

if(y=1)x=5;

printf("%d\t",x);

if(y=0)x=3;

elsex=4;

printf("%d\t\n",x);}

A)63B)54C)53D)65

9.下列程序段運行后x的值是。

a=b=c=0;x=35;

if(!a)x=-1;

elseif(b);

if(c)x=3;

elsex=4;

A)-1B)4C)35D)3

10.當a=1,b=3,c=5,d=4時,執(zhí)行完下面程序段后x的值為。

if(ay||x0)

printf("%f",x);{x=x+1;printf("%f",x);}

elseprintf("%f",-x);elseprintf("%f",-x);

C)if(x>0);D)if(x>0)

{x=x+1;printf("%f",x);}{x=x+1;printf("%f",x);

elseprintf("%f",-x);elseprintf("%f",-x);}

13.若有以下函數(shù)關系

y=2xx0時

下面程序段能正確表示以上關系的是。

A)y=2*x;B)y=2*x;

if(x!=0)if(x0)y=x;if(x==0)y=x+1;

elsey=x+1;elsey=x;

C)if(x>=0)D)y=x+1;

if(x>0)y=x;if(xb)printf("****");

elseprintf("####");

4.輸入3個實數(shù)a,b,c要求按從大到小挨次輸出三個數(shù)。

#include

voidmain()

{floata,b,c,t;

scanf("%f,%f,%f",

if(a

voidmain()

{charch;

scanf("%c",

if((1))

ch=ch+32;

else

if(ch>='a'&&chcprintf("####");}

else{y=2;printf("****");}

4.(1)a=b;(2)a='A'

6.OK!

NO!

ERROR!

7.(1)x/10(2)case10:case9:(3)default:

三、編程題

1.#include

voidmain()

{

intk;

floata,b,t,s;

printf("請輸入長方形的邊長a、b\n");

scanf("%f%f",

printf("請輸入整數(shù)k\n");

scanf("%d",

switch(k)

{

case1:t=2*a+2*b;printf("周長=%f\n",t);break;

case2:s=a*b;printf("面積=%f\n",s);break;

case3:t=2*a+2*b;s=a*b;printf("周長=%f面積=%f\n",t,s);break;

}

}

2.#include

voidmain()

{

floatx,y;

scanf("%f",

if(x

voidmain()

{

floatscore;

scanf("%f",

if(score>=90)

printf("A\n");

elseif(score>=80)

printf("B\n");

elseif(score>=70)

printf("C\n");

elseif(score>=60)

printf("D\n");else

printf("E\n");}

#include

voidmain()

{

floatscore;

scanf("%f",

switch((int)score/10)

{

case10:

case9:printf("A\n");break;

case8:printf("B\n");break;

case7:printf("C\n");break;

case6:printf("D\n");break;

default:printf("E\n");

}

}

第五章循環(huán)結構程序設計

一、挑選題

1.for語句圓括號中的表達式可以部分或所有省略,但兩個不行省略。

A)"B)(C);D),

2.for(表達式1;表達式2;表達式3),其中表示循環(huán)條件的是。

A)表達式1B)表達式2C)表達式3D)語句

3.在循環(huán)語句中,用于提前結束循環(huán),接著執(zhí)行循環(huán)下面的語句的關鍵詞是。

A)swichB)continueC)breakD)if

4.程序段如下

intk=0;

while(k=0)k=k-1;

則以下說法中正確的是。

A)while循環(huán)執(zhí)行20次B)循環(huán)是無限循環(huán)

C)循環(huán)體語句一次也不執(zhí)行D)循環(huán)體語句執(zhí)行一次

5.以下循環(huán)是。

for(a=0;a7)

{n--;

printf("%d\n",n);}

A)10B)9C)987D)9

988

877

6

12.以下程序段的輸出結果是。

inti;

for(i=1;imax)(2)

if((3))min=x;

scanf("%f",

}

printf("max=%fmin=%f\n",max,min);

5.下面程序段的輸出結果是。

intn=0;

while(n++2);

printf("%d\n",j);

五、編程題

1.分離用while、for編寫程序,計算下列值并輸出結果。1)1+2+3+1002)2*4*6*100

2.分離用while、for雙重循環(huán)的方式編程繪制如下圖形:

1

第五章答案

一、挑選題

1-5CBCCD6-10DCAAA11-13BBC

二、填空題

1.結束本次循環(huán)執(zhí)行

2.先推斷,后執(zhí)行循環(huán)體;先執(zhí)行循環(huán)體,后推斷

3.表達式1;

while(表達式2)

{表達式3;}

4.(1)(x>=0)(2)max=x;(3)x

voidmain()

{

inti=1,sum=0;

while(i

voidmain()

{

inti,sum=0;

for(i=1;i

voidmain()

{

doublei=2,j=1;

while(i

voidmain()

{

doublei,j;

for(i=1,j=1;i

voidmain()

{

inti=1,j;

while(i

voidmain()

{

inti,j;

for(i=1;i

voidmain()

{

inti=1,j;

while(i

voidmain()

{

inti,j;

for(i=4;i>0;i--)

{

for(j=1;j

voidmain()

{inta[10],i,j,t;

printf("input10numbers:\n");

for(i=0;(1);i++)

scanf("%d",(2));

printf("\n");

for(i=0;ia[j])

{(3)a[i]=a[j];a[j]=t;}printf("thesortednumbers:\n");

for(i=0;i

voidmain()

{inti,j,a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},b[4][3];

for(i=0;i

voidmain()

{

chara[5][5];

inti,j;

for(i=0;i

voidmain()

{

charstr[]="a1b2c3d4e5";

inti;

for(i=0;str[i]!='\0';i++)

if(str[i]>='a'

printf("\n");}

9.以下程序運行結果是。

#include

voidmain()

{

chara[4][4];

inti,j;

for(i=0;ij)

a[i][j]='-';

else

a[i][j]='*';}

for(i=0;i

voidmain()

{

inta[10],max,min,i,s,t;

for(i=0;ia[i])

{min=a[i];t=i;}

}

printf("最大值是a[%d]=%d,最小值是a[%d]=%d\n",s,max,t,min);}

2.

#include

voidmain()

{

inta[2][3],i,j;

for(i=0;i

voidmain()

{

inta=2,i;

intf(inta);

for(i=0;i

intfunc(inta,intb)

{return(a+b);}

voidmain()

{intx=2,y=5,z=8,r;

r=func(func(x,y),z);

溫馨提示

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

評論

0/150

提交評論