第3章順序結構程式設計練習題及答案

2022-08-19 15:06:04 字數 4899 閱讀 1460

第3章順序

一、單選題:

1.己知int k,m=1;執行語句k=-m++;後k的值是( a )。(提示:負號與自加運算子同級,結合方向從右向左)

a)-1 b) 0 c)1 d)2

2.若變數a, b已正確定義,且a,b均已正確賦值,下列選項中合法的語句是( b )

a) a=b b)++a; c) a+=b++=1; d)a=int(b); (提示:a=b 只是表示式非語句; b++是個表示式 )

3.若有定義int x=4;則執行語句 x + = x * = x + 1;後,x的值為( c )。

a)5 b)20 c)40 d)無答案

4.若有定義和語句:

int s,p;

s=p=5; p=s++,++p,p+2,p++; 則執行語句後 p的值是( c )

a)9 b)8 c)7 d)6

5.若有定義:int a,b;則表示式 a=4,b=3,a+b+2,a++,a+b+2的值為( c )。

a) 12 b)11 c)10 d)無答案

6.若有定義:float a=3.0,b=4.0,c=5.0;則表示式 1/2*(a+b+c)的值為( c )。

a)6.0 b)6 c)0.0 d)無答案

7.以下程式段的輸出結果是( c )。(提示:a當約束過嚴時,約束失效。按自由格式輸出。 )

int a=1234;

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

a)12 b)34 c)1234 d)提示出錯,無結果

8.下列程式段的輸出結果是(c)。

int a=1234;

float b=123.456;

double c=12345.54321;

printf("%2d,%3.2f,%4.1f",a,b,c);

a)無輸出 b)12, 123.46, 12345.5 c)1234,123.46,12345.5 d)1234,123.45, 1234.5

9.設x, y均為整型變數,且x=8, y=5,則以下語句的輸出結果是(d)。

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

a)8,5 b)7,5 c) 7,6 d) 8,6

10.以下程式的輸出結果是( a )。

void main()

{ int a=20,b=10;

printf("%d,%%d\n",a+b,a-b); }

a) 30,%d b)30,10 c)30,%10 d)以上答案均不正確 (%%d中第乙個%後面的表示字元)

11.下列程式的執行結果是(a)。

void main()

{ float x=2.5;

int y;

y=(int)x;

printf("x=%f,y=%d",x,y); }

a) x=2.500000,y=2 b)x=2.5,y=2 c)x=2,y=2d) x=2.500000,y=2.000000

12.己知int k=10 , m=3,n;則下列語句的輸出結果是(b)。

printf("%d\n",n=(k%m,k/m));

a) 2 b)3 c)4 d)5

13.以下程式的輸出結果是(a)。

void main()

{ char c=『z』;

printf("%c",c-25);}

a)a b)z c)z-25 d)y (字母共有26個,而z是最後乙個)

14.下面程式的輸出結果是(c)。

void main( )

a) 3 b) 3.2 c)0 d) 3.07

15.printf("%d,%d,%d\n",010,0x10,10);輸出結果是( c )。

a)10,10,10 b)16,8,10 c)8,16,10 d)無答案

16.下面程式的輸出結果是( c )。(提示:輸出時無定界符)

void main()

a)17,17,17 b)17,021,0x11 c)17,21,11 d)17,0x11,021

17.若有以下程式段:

int m=32767,n=032767;

printf("%d,%o\n",m,n);執行後的輸出結果是(a)。

a)32767,32767 b)32767,032767 c)32767,77777 d)32767,077777

18.若有以下程式段:

int m=oxabc,n=oxabc;

m-=n; printf("%x\n",m);執行後的結果是(c)。

a) 0x0 b)0x0 c)0 d)oxabc

20.下列程式執行後的輸出結果是(c)。

void main()

{ char x =oxffff;

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

a)-32767 b)fffe c)-1 d)=-32768

"a\bre\'hi\'y\\\bou\n");的輸出結果是(c)。

a)a\bre\'hi\'y\\\bou b)a\bre\'hi\'y\bou

c)re'hi'youd)abre'hi'y\bou

22.有定義語句:int x,y;若要通過scanf("%d,%d",&x,&y);語句使變數x得到數值11,變數y得到數值12,下面四組輸入形式中錯誤的是(a)。

a)11《空格》12《回車》 b)11,《空格》12《回車》 c)11,12《回車》 d)11,《回車》

12《回車》

23.有以下程式段:

int m=0,n=0;

char c=『a';

scanf("%d%c%d",&m,&c,&n);

printf("%d,%c,%d\n",m,c,n);

若從鍵盤上輸入:10a10 《回車》,則輸出結果是(a)。

a)10,a,10 b)16,a,10 c)10,a,0 d)10,a,0

24.若變數已正確說明為int型別,要通過語句scanf("%d %d %d ",&a,&b,&c);給a賦值1,b賦值2, c賦值3,不正確的輸入形式是(b)。

a) 1《空格》2《空格》3《回車》 b)1,2,3《回車》 c) 1《回車》d)1《空格》2《回車》

2《空格》3《回車》3《回車》

25. a, b,c被定義為int型變數,若從鍵盤給a, b,c輸入資料,正確的輸入語句是(d)

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

26.已知a,b,c為int型變數,若從鍵盤輸入:1,2,3《回車》,使a的值為1,b的值為2,c的值為3,以下選項中正確的輸入語句是(b)。

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

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

27.執行下程式時輸入:123《空格》456《空格》789《回車》,輸出結果是( d )。

void main()

{char s;

int c,i;

scanf("%c",&c); scanf("%d",&i);

scanf("%c",&s); printf("%c,%d,%c\n",c,i,s);}

a)123,456,789 b)1,456,789 c)1,23,456,789 d) 1,23,

二、填空題

1.有以下程式:

void main()

{ int m,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p);}

若想從鍵盤上輸入資料,使變數m中的值為123, n中的值為456, p中的值為789,則正確的輸入是

m= 123n=456p=789 。

2.以下程式段的輸出結果是 28 (2*14) 。

void main()

{ int a=2,b=3,c=4;

a*=16 +(b++)-(++c);

printf("%d",a);}

3.以下程式段的輸出結果是 5

int x=17,y=26;

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

4.以下程式的輸出結果是 8,10

void main()

{ int i=010,j=10;

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

5.下列程式的輸出結果為 12

void main()

{ int x=3,y=5;

printf("%d",x= (x--)*(--y)); }

6.以下程式段的輸出結果是 1234

int a=1234;

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

7.若有以下程式:

void main()

{ char a;

a=『h』-『a』+『0』;

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

執行後的輸出結果是 7,55

8.以下程式段的輸出結果是 261

void main()

{ int a=177;

第3章練習題

第3章定址方式及指令系統 3 指令主要有哪些分類方式及其主要類別是什麼?4 運算元的定址方式有哪些?並舉例說明其主要特點。6 設cs 1000h,ds 2000h,es 3000h,ss 4000h,ip 100h,sp 200h,bx 300h,bp 400h,si 500h,則 下一條待執行指令...

第6章迴圈結構程式設計習題及答案

第6章迴圈結構程式設計 6 1 比較while語句 do while語句和for語句的異同。答 1 while語句 do while語句用於條件迴圈,for語句用於計數迴圈。2 while語句 for語句是先判斷迴圈條件,後執行迴圈體,如果迴圈條件一開始就不成立,則迴圈體一次也不被執行 而do wh...

第3章順序結構練習參答

三 程式設計序參 3.17 編寫程式,把560分鐘換算成用小時和分表示,然後進行輸出。程式如下 include void main 輸出結果 9小時 20分 3.18 編寫程式,輸入兩個整數 1500和350,求出它們的商和餘數並進行輸出。程式如下 include void main 輸入資料 15...