![C語言復(fù)習(xí)題(一)_第1頁](http://file4.renrendoc.com/view14/M01/11/1C/wKhkGWYLKT2AJXPcAAEDwkkl44M287.jpg)
![C語言復(fù)習(xí)題(一)_第2頁](http://file4.renrendoc.com/view14/M01/11/1C/wKhkGWYLKT2AJXPcAAEDwkkl44M2872.jpg)
![C語言復(fù)習(xí)題(一)_第3頁](http://file4.renrendoc.com/view14/M01/11/1C/wKhkGWYLKT2AJXPcAAEDwkkl44M2873.jpg)
![C語言復(fù)習(xí)題(一)_第4頁](http://file4.renrendoc.com/view14/M01/11/1C/wKhkGWYLKT2AJXPcAAEDwkkl44M2874.jpg)
![C語言復(fù)習(xí)題(一)_第5頁](http://file4.renrendoc.com/view14/M01/11/1C/wKhkGWYLKT2AJXPcAAEDwkkl44M2875.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
C語言復(fù)習(xí)題
第I章C語言概述
1、C程序是()
A.順序執(zhí)行
B.從Main函數(shù)開始
C.從函數(shù)體開始
D.任意語句
參考答案:B
2、C語言程序由()組成
A.子程序
B.過程
C.函數(shù)
zD.xccc主程序段c.v程v序vvv圖
參考答案:C
3、以下說法中正確的是()。
A.C語言程序中是從第一定義的函數(shù)開始執(zhí)行
B.在C語言程序中,要調(diào)用的函數(shù)必須在main。函數(shù)中定
義
C.C語言程序總是從main()函數(shù)開始執(zhí)行
D.C語言程序中的main()函數(shù)必須放在程序的開始部分
參考答案:C
4、C語言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置()
A.必須在最開始
B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面
C.可以任意
D.必須在最后
參考答案:C
5、若ch為char型變量,k為int型變量(已知字符a的ASCII
碼是97),則執(zhí)行下列語句后的輸出為()
ch='a':
k=12;
pfinff("%X,%0,",ch,ch,k);
pfinff("k=%%d\n”,k);
A.因變量類型與格式描述符的類型不匹配,輸出無定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為0或不定值
C.61,141,k=%d
D.61,141,k=%12
參考答案:C
6、不合法的十六進(jìn)制數(shù)是()
A.Oxff
B.0X11
C.Oxlg
D.OXabc
參考答案:C
7、以下()是不正確的轉(zhuǎn)義字符。
A.'W
B.'\"
C.'020'
D.'\0'
參考答案:C
8、一個(gè)C語言程序總是從()開始執(zhí)行
A.主過程
B.主函數(shù)
C.子程序
D.主程序
參考答案:B
9、C語言規(guī)定:在一個(gè)源程序中,main()函數(shù)的位置()
A.必須在最開始
B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面
C.可以任意
D.必須在最后
參考答案:C
10、若有代數(shù)式3ae/bc,則不正確的C語言表達(dá)式是()
A.a/b/c*e*3
B.3*a*e/b/c
C.3*a*e/b*c
D.a*e/c/b*3
參考答案:C
壬多選題:
二判斷題:
口填空題:
1、函數(shù)體用開始,用結(jié)束。
參考答案:{,}
2、C源程序的基本單位是
參考答案:函數(shù)
3、一個(gè)C源程序中至少應(yīng)包括一個(gè)
參考答案:main函數(shù)
4、在一個(gè)C源程序中,注釋部分兩側(cè)的分界符分別為
和________
參考答案:/*,*/
5、C語言中的標(biāo)識(shí)符可分為、和預(yù)定義標(biāo)識(shí)符3類
參考答案:關(guān)鍵字、用戶標(biāo)識(shí)符
6、在c語言程序中,用關(guān)鍵字------定義基本整型變量,用關(guān)
鍵字——定義單精度實(shí)型變量,用關(guān)鍵字——定義雙精度買型變
量。
參考答案:intfloatdouble
7、一個(gè)c語言程序的開發(fā)過程包括:編輯、——、連接和運(yùn)行
4個(gè)步驟。
參考答案:編譯
8、C程序執(zhí)行過程生成的3種文件及擴(kuò)展名為——,——,——
參考答案:源文件.C目標(biāo)文件.Obj可執(zhí)行文件.exe
已問答題:
程序設(shè)計(jì)題:
1、編寫一個(gè)C程序,輸出以下信息:
Verygood!
學(xué)生答案:ttinclude
voidmain()
(
printf("*********************\n〃
Verygood!\n〃
)"
參考答案:(略)
2、編寫一個(gè)程序,輸入a,b,c三個(gè)值,輸出其中最大者。
學(xué)生答案:^include
voidmainO
(
intmax(intx,inty,intz);
inta,b,c,t;
scanf(〃%d,%d,%d〃,&a,&b,&c);
t=max(a,b,c,);
printf(,,max=%d\nz/,c);
)
intmax(intx,inty,intz);
intt;
if(x>y)t=x;
elset=y;
if(x>z)t=x;
elset=z;
if(y>z)t=y;
elset=z;
return(t);
)
參考答案:(略)
3、
顯示“Howareyou!v的c語言程序。
學(xué)生答案:ttinclude
voidmain()
printf(Z/Howareyou!\n,z);
)
參考答案:#include
main()/*主函數(shù)*/
(
printf("Howareyouf\n");/*調(diào)用庫函數(shù)printf()顯
示字符串*/
}
第2章程序的靈魂一算法
單選題:
1、已知字符A的ASCII碼值是65,以下程序()。
#incIude
main()
chara='A':
intb=20:
printf("%d,%0",(a=a+l,a+b,b),a+'a'-'A',b);
)
A,表達(dá)式非法,輸出零或不確定值
B.因輸出項(xiàng)過多,無輸出或輸出不確定值
C.輸出結(jié)果為20,141
D.輸出結(jié)果為20,1541,20
參考答案:C
2、對(duì)于條件表達(dá)式(M)?(a++):(a-),其中的表達(dá)式M等價(jià)于()。
A.M==0
B.M==l
C.M!=0
D.M!=l
參考答案:C
!多選題:
口判斷題:
填空題:
問答題:
1、什么是結(jié)構(gòu)化的算法?為什么要提倡結(jié)構(gòu)化的算法?
學(xué)生答案:
參考答案:(略)
2、算法有哪些特性?
學(xué)生答案:
參考答案:(略)
3、什么叫算法?為什么栗提倡結(jié)構(gòu)化算法?
學(xué)生答案:
參考答案:(略)
匚程序設(shè)計(jì)題:
第3章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式
單選題:
1、若已定義x和y為double類型,則表達(dá)式:x=1,y=x+3/2
的值是.
A.1
B.2
C.2.0
D.2.5
學(xué)生答案:C
參考答案:C
2、設(shè)intb=2;表達(dá)式b/(b*2)的值是.
A.0
B.0.5
C.0.500000
D.0.000000
學(xué)生答案:
參考答案:A
3、設(shè)a,b和c都是int型變量,且a=3,b=4,c=5,
則下面表達(dá)式的值為0的是()。
A.'a'&&'b'
B.a<=b
C.a||b+c&&b~c
D.!((a<b)&&!c||1)
學(xué)生答案:B
參考答案:D
4、設(shè)x、y、z和k都是int型變量,則執(zhí)行表達(dá)式:
x=(y=4,z=16,k=32)后,x的值為o
A.4
B.16
C.32
D.52
學(xué)生答案:D
參考答案:C
5、下列賦值語句正確的是(設(shè)inta,x)()
A,a=(a[1]+a[2])/2
B.a*=*a+1
C.a=(x=1,x++,x+2)
D.a="good"
學(xué)生答案:A
參考答案:C
6、設(shè)有a=b=c=2,求表達(dá)式a+++b+++c+++的結(jié)果是
A.6
B.9
C.8
D.表達(dá)式出錯(cuò)
學(xué)生答案:C
參考答案:A
7、設(shè)有如下定義:
inta=1,b=2,c-3,d=4,m=2,n=2;
則執(zhí)行表達(dá)式:(m=a>b)&&(n=c>d)后,n的值為
A.1
B.2
C.3
D.0
學(xué)生答案:B
參考答案:B
8、表示關(guān)系X<=Y〈=Z的C語言表達(dá)式為.
A.(X<=Y)&&(Y<=Z)
B.(X<=Y)AND(Y<=Z)
C.(X<=Y<=Z)
D.(X<=Y)&(Y<=Z)
學(xué)生答案:C
參考答案:A
9、下面兩隊(duì)用戶定義標(biāo)識(shí)符哪個(gè)可讀性更強(qiáng)?
A.checkquaIitycomputeresaIarytotaI
B.check_quaIitycompute_saIary_totaI
C.
D.
學(xué)生答案:A
參考答案:B
10、設(shè)x為int型變量,則執(zhí)行以下語句后,x的值為一
x=10;x+=x-=x-x;
A.10
B.20
C.40
D.30
學(xué)生答案:C
參考答案:B
11、執(zhí)行語句x=(a=3,b=a-)后x,a,b的值為.
A.332
B.322
C.323
D.232
學(xué)生答案:C
參考答案:C
12、若有兩條語句
staticcharx[]="abcde";
staticchary[]={'a','b','c','cT,'e'};
則下列語法中正確的是
A.x數(shù)組和y數(shù)組的長度相同
B.x數(shù)組的長度小于y數(shù)組的長度
C.x數(shù)組的長度大于y數(shù)組的長度
D,x數(shù)組等價(jià)于v數(shù)組
學(xué)生答案:B
參考答案:C
13、設(shè)A=3,B=4,執(zhí)行
printf("%d,%d",(A,B),(B,A));的輸出是.
A.3,4
B.4,3
C.3,3
D.4,4
學(xué)生答案:B
參考答案:B
14、C語言提供的合法的數(shù)據(jù)類型關(guān)鍵字是
A.DoubIe
B.short
C.integer
D.Char
學(xué)生答案:B
參考答案:B
15、下列程序的輸出結(jié)果是
main。
{doubIed=3.2;
intx,y;
x=1.2,y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
A.3
B.3.2
C.0
D.3.07
學(xué)生答案:D
參考答案:C
16、下列程序的運(yùn)行結(jié)果是
#include
main。
{inta=2,c=5;
printf("a=%d,b=%d\n",a,c);}
A.a=%2,b=%5
B.a=2,b=5
C.a=d,b=d
D.a=%d,b=%d
學(xué)生答案:C
參考答案:B
17、設(shè)有如下定義:
intx=10,y=3,z;
則語句printf("%d\n",z=(x%y,x/y));
的輸出結(jié)果是
A.1
B.0
C.4
D.3
學(xué)生答案:C
參考答案:D
18、下面程序的輸出是
main()
(
charp1[10]="abc",p2[]="ABC”;
printf("%s\n",strcat(p1,p2));
}
A.ABCabc
B.ABabc
C.abcABC
D.不確定的值
學(xué)生答案:B
參考答案:C
19、以下程序運(yùn)行后,輸出結(jié)果是
main()
{chars[]="abcde";
s+-2;
printf("%ld\n",s);
1
A.cde
B.字符c的ASCII碼值
C.字符c的地址
D.出錯(cuò)
學(xué)生答案:B
參考答案:D
20、若有以下定義和語句:
chars1[]="12345",s2[]="1234";
printf(z/%d\n",strIen(strcpy(s1,s2)));
則輸出結(jié)果是
A.4
B.5
C.9
D.10
學(xué)生答案:A
參考答案:A
21、以下敘述中正確的是
A.輸入項(xiàng)可以是一個(gè)實(shí)型常量,如
B.只有格式控制,沒有輸入項(xiàng),也能正確輸入數(shù)據(jù)到內(nèi)存,
例如:scanf("a=%d,b=%d");
C.當(dāng)輸入一個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分可以規(guī)定小數(shù)點(diǎn)
后的位數(shù),例如:
D.當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量地址,例如:
學(xué)生答案:C
參考答案:D
22、下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是
A.0.0Of8.9e
B."a"3.9e-2.51e1
C.'3'011OxffOO0a
D.+001Oxabcd2e250.
學(xué)生答案:
參考答案:D
23、在C語言中,int、char和short三種類型數(shù)據(jù)在內(nèi)存中所
占用的字節(jié)數(shù)
A.由用用戶自己定義
B.均為2個(gè)字節(jié)
C.是任意的
D.由所用機(jī)器的機(jī)器字長決定
學(xué)生答案:C
參考答案:D
24、C語言中運(yùn)算對(duì)象必須是整型的運(yùn)算符是
A.%=
B./
C.二
D.〈二
學(xué)生答案:D
參考答案:A
25、若已定義x和y為doubIe類型,則表達(dá)式x=1,y=x+3/2的
值是
A.1
B.2
C.2.0
D.2.5
學(xué)生答案:D
參考答案:C
£多選題:
力判斷題:
口填空題:
1、設(shè)x和y均為int型變量,且x=1,y=2,則以下表達(dá)式:0+x/y
的值為—O
學(xué)生答案:
參考答案:0
2、計(jì)算表達(dá)式6*7%2+7%2*5的值是.
學(xué)生答案:
參考答案:5
3、計(jì)算表達(dá)式8.0*(1/2)的值是<,
學(xué)生答案:
參考答案:0
4、設(shè)有以下變量定義,并已賦確定的值
charw;intx;fIoaty;doubIez;
則表達(dá)式:w*x+z-y所求得的數(shù)據(jù)類型為
學(xué)生答案:
參考答案:double
5、C語言中最簡單的數(shù)據(jù)類型是、、
學(xué)生答案:
參考答案:整型、實(shí)型、字符型
6、若有說明語句intI,j,1=6,執(zhí)行j=(++I)+(l++)后,j
的值是O
學(xué)生答案:
參考答案:14
7、執(zhí)行下列語句后x的值是.
x=y=z=5;
x=y==z;
學(xué)生答案:
參考答案:1
8、假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,a++,b++,a+b)
的值為_____________
學(xué)生答案:
參考答案:9
9、C語言中的標(biāo)識(shí)符只能由三種字符組成,它們是,
______和___________
學(xué)生答案:
參考答案:字母,數(shù)字,下劃線
10、已知字母a的ASCII碼為十進(jìn)制數(shù)97,且設(shè)ch為字符型變
量,
則表達(dá)式ch='a'+'8'3'的值為
學(xué)生答案:
參考答案:'f'
11、若x和y都是double型變量,且x的初值為3.0,y的初值
為2.0,則表達(dá)式pow(y,fabs(x))的值為
學(xué)生答案:
參考答案:8.000000
12、若有定義:inte=1,f=4,g=2;
floatm=10.5,n=4.0,k;則計(jì)算賦值表達(dá)式
k=(e+f)/g+sqrt((doubIe)n)*1.2/g+m后k的值是
學(xué)生答案:
參考答案:13.700000
13、表達(dá)式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的數(shù)據(jù)類
型為______
學(xué)生答案:
參考答案:int
14、表達(dá)式pow(2.8,sqrt(doubIe(x)))值的數(shù)據(jù)類型為
學(xué)生答案:
參考答案:double
15、假設(shè)m是一個(gè)三位數(shù),從左到右用a,b,c表示各位的數(shù)字,
則從左到右各個(gè)數(shù)字是bac的三位數(shù)的表達(dá)式是
學(xué)生答案:
參考答案:(m/10)%10*100+m/100*10+m%10
53問答題:
;程序設(shè)計(jì)題:
第4章最簡單的程序設(shè)計(jì)
單選題:
1、能正確表示邏輯關(guān)系:"a2=10或aW0”的C語言表達(dá)式
是
A.a>=10ora<=0
B.a>=0||a<=10
C.a>=10&&a<=0
D.a<=0||a>=10
學(xué)生答案:B
參考答案:D
2、以下程序的輸出結(jié)果是()。
#include'
main()
(
intw=4,x=3,y=2,z=1;
printf("%d\n",(w<z:x));w:z
A.1
B.2
C.3
D.4
學(xué)生答案:A
參考答案:A
3、如下程序的輸出結(jié)果是()。
#include
main()
{fIoatx=2.0,y;
if(x<0.0)y=0.0:
elseif(x<10.0)y=1.0/x;
eIsey=1.0;
printf("%f\n",y);
)
A.0.000000
B.0.250000
C.0.500000
D.1.000000
學(xué)生答案:C
參考答案:C
4、下面的程序()。
#include
main()
{intx=3,y=0,z=0;
if(x=y+z)printf("****");
eIseprintf("####");
}
A.有語法錯(cuò)誤不能通過編譯
B.輸出****
C.可以通過編譯,但是不能通過連接,因而不能運(yùn)行
D.輸出####
學(xué)生答案:C
參考答案:D
5、以下程序的輸出結(jié)果是()。
#incIude
main()
{inta=T,b=4,k;
k=(++a<0)&&!(b—<-0);
printf("%d%d%d\n”,k,a,b);}
A.104
B.103
C.003
D.004
學(xué)生答案:A
參考答案:D
E多選題:
泠判斷題:
填空題:
1、從鍵盤輸入一個(gè)大寫字母,要求改用小寫字母輸出,程序如下
辦
#include
main()
{chard,c2;
(D;
printf("%c,%d\n",d,d);
(2):
printf("%c,%d\n",c2,c2);}
學(xué)生答案:
參考答案:cl=getchar(),c2=cl+32;
2、以下程序不用第三個(gè)變量,實(shí)現(xiàn)將兩個(gè)數(shù)進(jìn)行對(duì)調(diào)操作:
#incIude
main()
{inta,b;
scanf("%d%d",&a,&b);
printf("a=%db=%d\n",a,b);
a=();b=();a=();
printf("a=%db=%d\n",a,b);)
學(xué)生答案:
參考答案:a+b,a-b,a-b
3、寫出該程序運(yùn)行的結(jié)果。
main()
charst='A';
inti=10;
st=st+i;
i=st%i;
printf("%C,%d\n",st,i);}
(已知字母A的ASCII碼為65)
學(xué)生答案:
參考答案:K,5
4、請(qǐng)寫出以下程序的輸出結(jié)果——。
#include
main()
(
inta=100:
if(a>100)
printf(v%d\n",a>100);
eIse
plintf("%d\n”,a<=100);}
學(xué)生答案:
參考答案:1
5、請(qǐng)寫出與以下表達(dá)式等價(jià)的表達(dá)式---,----。
(1)!(x>0)(2)!0
學(xué)生答案:
參考答案:x<=01
6、當(dāng)a=l,b=2,c=3時(shí),以下語句執(zhí)行后a、b、c中的值分別
為---、----、----O
if(a>c)
b-a;a-c;c-b;
學(xué)生答案:
參考答案:322
7、若變量已正確定義,以下語句段的輸出結(jié)果是——。
x=0;y=2:z=3;
switch(x)
(
case0:switch(y-2)
(
case1:printf("*");break;
case2:printf("%"):break;
}
case1:switch(z)
(
case1:printf("$");
case2tprintf(n$");break;
defauIt:printf("#"):
}
}
學(xué)生答案:
參考答案:*#
8、若有定義:inta=10,b=9,c=8;,接著順序執(zhí)行下列語句
后,變量b中的值是一一。
c=(a-=(b-5));
c=(a%11)+(b=3);
學(xué)生答案:
參考答案:3
9、表示“整數(shù)x的絕對(duì)值大于5”時(shí)值為“真”的C語言表達(dá)
式是---o
學(xué)生答案:
參考答案:x>5||x<-5
10、下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁铡?/p>
#include
main。
(
inta=9,b=2;
fIoatx=,y=1.1,z;
z-a/2+b*x/y+1/2:
printf("%5.2f\n",z);
)
學(xué)生答案:
參考答案:6.6
11、若從鍵盤輸入58,則以下程序輸出的結(jié)果是——。
#incIude
main()
{inta;
scanf(n%d",&a);
if(a>50)prinff(v%d”,a);
if(a>40)prinff(J,%d”,a);
if(a>30)printf(n%d",a);
)
學(xué)生答案:
參考答案:585858
12、以下程序輸出的結(jié)果是---。
#incIude
main()
{inta=5,b=4,c~3,d;
d=(a>b>c);
printf("%d\n",d);
)
學(xué)生答案:
參考答案:0
13、以下程序運(yùn)行后的輸出結(jié)果是——。
#incIude
main()
{intx=10,y=20,t=0;
if(x=y)t=x;x=y;y二t;
printf(n%d,%d\n”,x,y);
)
學(xué)生答案:
參考答案:20,0
14、設(shè)a、b、c為整型數(shù),且a=2,b=3,c=4,則執(zhí)行完語句
a*-16+(b++)-(++c);后,a的值是
學(xué)生答案:
參考答案:28
15、若inti=10;,則執(zhí)行下列程序后,變量i的正確結(jié)果是
O
switch(i)
{case9:i+=1;
case10:i+=1;.
case11:i+=1:
default:i+=1;
}
學(xué)生答案:
參考答案:13
16、若運(yùn)行時(shí)輸入12,則以下程序的運(yùn)行結(jié)果是
#ineIude
main()
{intx,y;
seanf(w%d”,&x);
Y=x>127X+IO:x-12:
printf("%d\n",y);
)
學(xué)生答案:
參考答案:0
17、設(shè)x,y、z均為int型變量,請(qǐng)寫出描述“x或Y中至少有
一個(gè)小于Z”的表達(dá)式一一。
學(xué)生答案:
參考答案:x<Z||Y<>
£問答題:
程序設(shè)計(jì)題:
1、用scanf函數(shù)輸入一個(gè)年份year,然后用一個(gè)賦值語句計(jì)算
這一年中2月份的天數(shù)datesum,最后用格式輸出函數(shù)printf輸
出datesum值。
具體要求如下:(1)所有變量為整型
(2)輸入前栗有提示
(3)輸出結(jié)果時(shí)要有必要的文字說明
學(xué)生答案:
參考答案:略
2、由鍵盤輸入一個(gè)小于256的十進(jìn)制整數(shù),然后將該數(shù)轉(zhuǎn)換成
八位的二進(jìn)制形式輸出。
具體要求如下:
(1)輸入前要有提示
(2)若轉(zhuǎn)換成的二進(jìn)制數(shù)不夠八位,則在前面添“0”補(bǔ)足八位。
例如:十進(jìn)制數(shù)79轉(zhuǎn)換成的二進(jìn)制數(shù)為1001111,但應(yīng)輸出
01001111
(3)分別輸入十進(jìn)制數(shù)54,96,175,233,255來運(yùn)行這個(gè)程
序。
學(xué)生答案:
參考答案:略
第五章選擇結(jié)構(gòu)程序設(shè)計(jì)
單選題:
1、下面的程序是
main。
{intx=3,y=0,z=0;
if(x=y+z)printf("****");
eIseprintf("####");
)
A.有語法錯(cuò)誤不能過通過編譯
B.輸出****
C.可能通過編譯,但是不能通過連接,因而不能運(yùn)行
D.輸出####
學(xué)生答案:B
參考答案:D
2、以下程序輸出結(jié)果是
main()
{intm=5;
if(m++>5)printf("%d\n",m);
eIseprintf("%d\n",m-);
}
A.7
B.6
C.5
D.4
學(xué)生答案:B
參考答案:B
3、兩次運(yùn)行下面的程序,如果從鍵盤上分別輸入6和4,則輸出
結(jié)果是
main()
{intx;
scanf&x);
if(x++〉5)printf("%d",x);
eIseprintf("%d\n",x--);
1
A.7和5
B.6和3
C.7和4
D.6和4
學(xué)生答案:C
參考答案:A
4、下列語句正確的是()
A.if(a>b>c)temp=a
B.if((a=b)>0)temp=a
C.inta=b=c=4
D.inta;scanf(%d,a)
學(xué)生答案:B
參考答案:B
5、已知intx=10,y=20,z=30;以下語句執(zhí)行后x,y,z的值是
if(x>y)
z=x;x=y;y=z;
A.x=10,y=20,z=30
B.x—20,y—30,z—30
C.x=20,y=30,z=10
D.x=20,y=30,z=20
學(xué)生答案:A
參考答案:B
6、以下程序的輸出結(jié)果是
main。
{inta=100,x=10,y=20,ok1=5,ok2=0;
if(x<y)
if(y!=10)
if(!ok1)
a=1;
eIse
if(ok2)a=10;
a--1;
printf("%d\n",a);
)
A.1
B.0
C.-1
D.值不確定
學(xué)生答案:B
參考答案:C
7、若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptor<CR>(<CR>
表示回車),則下面程序的運(yùn)行結(jié)果是
#include
main()
{charc;
intv0=0,v1=0,v2=0;
do{
switch(c=getchar())
{case'a':case'A':
case'e':case'E':
case'i':case1I*:
case'o':case'0*:
case'u':case'U':vl+=l;
defau11:v0+=1;v2+=1;
)
}while(c!='\n');
printf("vO=%d,v1=%d,v2=%d\n",vO,v1,v2);
1
A.v0=7,v1=4,v2=7
B.v0=8,v1=4,v2=8
C.v0=11,v1=4,v2=11
D.v0=12,v1=4,v2=12
學(xué)生答案:C
參考答案:D
8、閱讀以下程序:
main。
{intx;
scanf("%d",&x);
if(x—<5)printf("%d"'x);
eIseprintf("%d"'x++);
)
程序運(yùn)行后,如果從鍵盤上輸入5,則輸出結(jié)果是
A.3
B.4
C.5
D.6
學(xué)生答案:D
參考答案:B
9、與y=(x>0?1:x<0?7:0);的功能相同的if語句是
A.if(x>0)y=1;eIseif(x<0)y=T;eIsey=0;
B.if(x)if(x>0)y=1;eIseif(x<0)y=T;eIsey=0;
C.y=-1if(x)y=1;elseif(x-0)y=0;eIsey=T;
D.y=0if(x>-0)if(x>0)y=1;eIsey=7;
學(xué)生答案:B
參考答案:A
10、若有定義:floatw;inta,b;則合法的switch語句是
A.switch(w){easel.0:printf("*\n");case2.0:
printf("**\n");}
B.switch(a);{case1printf("*\n");case2
printf("**\n");}
C.switch(b){casea:printf("*\n");defau11:
printf("\n");caseb:printf("**\n");}
D.switch(a+b){case1:printf("*\n");case2:
printf("**\n");defau11:printf("\n");}
學(xué)生答案:B
參考答案:D
11、以下程序段的輸出結(jié)果是()。
inti,j,m=0;
for(i-l;i<=15;i+=4)
for(j=3;j<=19;j+=4)
m++:
pfintf(w%d\n”,m).;
A.12
B.15
C.20
D.25
學(xué)生答案:C
參考答案:C
12、以下程序的輸出結(jié)果是()。
#include
main()
(
inty=10;
for(;y>0;y-—)
if(y%3==0)
(
printf(“%d",---y);
continue;
)
)
A.741
B.852
C.963
D.8754321
學(xué)生答案:C
參考答案:B
13、以下敘述正確的是()o
A.do-whiIe語句構(gòu)成的循環(huán)不能用其他語句構(gòu)成的循環(huán)
代替
B.只有do…whiIe語句構(gòu)成的循環(huán)能用break語句退出
C.用do…whiIe語句構(gòu)成循環(huán)時(shí),在while后的表達(dá)式為
零時(shí)不一定結(jié)束循環(huán)
D.用do…whiIe語句構(gòu)成循環(huán)時(shí),在whiIe后的表達(dá)式為
零時(shí)結(jié)束循環(huán)
學(xué)生答案:B
參考答案:D
14、有以下程序段:
intk=0:
while(k=1)k++0
whiIe循環(huán)執(zhí)行的次數(shù)是()o
A.無限次
B.有語法錯(cuò),不能執(zhí)行
C.一次也不執(zhí)行
D.執(zhí)行一次
學(xué)生答案:D
參考答案:A
15、有以下程序:
#incIude
inta=3;
mmn()
(
intS=0;
(
inta=5:
S+=a++:
}
S+=a++;printf(;,%d\n”,S);
}
A.8
B.10
C.7
D.11
學(xué)生答案:A
參考答案:A
16、以下的for循環(huán)()o
for(X=0,Y=0;(Y!=123)&&(X<4);X++);
A.是無限循環(huán)
B.循環(huán)次數(shù)不定
C.循環(huán)執(zhí)行4次
D.循環(huán)執(zhí)行3次
學(xué)生答案:C
參考答案:C
17、執(zhí)行下面程序片段的結(jié)果是()0
intX=23:
dO
(
printf("%d",X-);
}whiIe(!X);
A,打印出321
B.打印出23
C.不打印任何內(nèi)容
D.陷入死循環(huán)
學(xué)生答案:B
參考答案:C
18、請(qǐng)閱讀以下程序:.
#include
main()
{fIoatx,y;
scanf("%f",&x);
if(x<0.0)y=0.0:
elseif((x<5.0)&&(x!=2.0))
Y=1.0/(x+2.0);
elseif(x<10.0)Y=1.0/x;
eIsey=10.0;
printf%f\n”,y);
)
若運(yùn)行時(shí)從鍵盤上輸入2.0(表示回車),則上面程序的輸出結(jié)
果是()0
A.0.000000
B.0.250000
C.0.500000
D.1.000000
學(xué)生答案:B
參考答案:C
19、在while(x)語句中的x與下面條件表達(dá)式等價(jià)的是()0
A.x==0
B.x==1
C.x!=0
D.x!=1
學(xué)生答案:B
參考答案:C
20、下面程序段的輸出結(jié)果是()。
a=1;b=2;c=2;
while(a<B
printf(v%d,%d,%d”,a,b,c);
A.1,2,0
B.2,1,0
C.1,2,1
D.2,1,1
學(xué)生答案:A
參考答案:A
匕多選題:
目判斷題:
H填空題:
1、#include<stdio.h>
main()
{inti=0,j=0,a=6;
if((++i>0)||(j++>0))a++;
printf("i=%d,j=%d,a=%d\n",i,j,a);}
結(jié)果:_____
學(xué)生答案:
參考答案:1=1,j=0,a=7
2、若從鍵盤輸入58,則以下程序輸出的結(jié)果是
main()
{inta;
scanf("%d",&a);
if(a>50)printf("%d",a);
if(a>40)printf("%d",a);
if(a>30)printf("%d",a);
1
學(xué)生答案:
參考答案:585858
3、下列程序段的輸出結(jié)果是<
intn='c
switch(n++)
{default:printf("error");break;
case'a*:case,A*:case'b':case'B':printf("good");break;
case'c':case*0,:printf("pass");
case'd':case'D*:printf(''warm");
}
學(xué)生答案:
參考答案:passwarm
4、以下程序段的輸出結(jié)果是
intk,n,m;
h=10;m=I;k二I;
while(k<=n)
m*=2;
printf("%d\n",m);
學(xué)生答案:
參考答案:程序段無限循環(huán),沒有輸出結(jié)果
5、以下程序的功能是:從鍵盤上輸入若干學(xué)生的成績,統(tǒng)計(jì)并
輸出最高成績和最低成績
#incIude
main()
(
floatx,amax,amin;
scanf(v%r.,&x);
amax=x;amin=X;
whiIe((1))
{
if(X>amax)amax=x;
if((2))amin=x;
scanf("%f",&x);
}
printf("\namax=%f\namin=%f\nv,amax,amin);
)
學(xué)生答案:
參考答案:(l)x>=0(2)x0
6、下述程序的運(yùn)行結(jié)果是——。
#incIude
main()
ints=0,k;
for(k=7;k>4;k")
{
switch(k)
(
case1:
case4:
case7:S++;break;
case2:
case3:
case6:break;
case0:
case5:s+=2;break;
}
)
printf("s=%d",s);
)
學(xué)生答案:
參考答案:s=3
7、下面程序的功能是:計(jì)算1—10之間的奇數(shù)之和與偶數(shù)之和,
請(qǐng)?zhí)羁铡?/p>
#incIude
main()
{inta,b,c,i;
a-c:0:
for(i=0;i<=10;i+:2)
c十二b:
)
printf("偶數(shù)之和二%d\n",a);
printf(n奇數(shù)之和二%:1\!1",c-11);
學(xué)生答案:
參考答案:b=i+l
8、有以下程序:
#incIude
main()
{charc;
whiIe((c=getchar())!=,?')putchar(--c);
}
程序運(yùn)行時(shí),如果從鍵盤輸入:丫?距<回車),則輸出結(jié)果為
學(xué)生答案:
參考答案:X
9、下面程序的運(yùn)行結(jié)果是
#incIude
main()
{inty,a;
y=2;a=1;
while(y-!=-1)
{do{a*=y;a++;}whiIe(y-);
printf("%d,%d”,a,y);
)
學(xué)生答案:
參考答案:1,-2
10、下面程序段的運(yùn)行結(jié)果是
i=1;s=3;
do{s+=i++;
if(s%7=0)continue;
eIse++i:
}whiIe(s<15);
printf(n%d”,i);
學(xué)生答案:
參考答案:8
53問答題:
門程序設(shè)計(jì)題:
1、編寫程序,從鍵盤輸入年號(hào)和月號(hào),計(jì)算這一年的這一月共
有幾天.
學(xué)生答案:
參考答案:mainO
(
intyear,month,day=0,leap;
printf(z,\npleaseinputyearandmonth:z,);
scanf(〃%d,%d〃,&year,&month);
if(year%4!=0)
leap=0;
elseif(year%100==0)
if(year%400==0)
leap=l;
else
leap=0;
else
leap=l;
switch(month)
case1:
case3:
case5:
case7:
case8:
case10:
case12:day=31;break;
case4:
case6:
case9:
case11:day=30;break;
case2:{if(leap==l)day=29;elseday=28;break;}
default:printf(z,the13thmonth!?z,);
}
printf(z,Ithas%ddaysin%d/%d,/,day,year,month);
)
2、編寫程序,輸入三個(gè)整數(shù)x,y,z,請(qǐng)把這三個(gè)數(shù)由小到大輸
出。
[程序分析]
我們想辦法把最小的數(shù)放到X上,先將X與y進(jìn)行比較,
如果x>y則將x與y的值進(jìn)行交換,然后再用x與z進(jìn)行比較,
如果x>z則將x與z的值進(jìn)行交換,這樣能使x最小。
學(xué)生答案:
參考答案:mainO
(
intx,y,z,t;
scanf("%d%d%d〃,&x,&y,&z);
if(x>y)
{t=x;x=y;y=t;}/*交換x,y的值*/
if(x>z)
{t=z;z=x;x=t;}/*交換x,z的值*/
if(y>z)
{t=y;y=z;z=t;}/*交換z,y的值*/
printf("smalltobig:%d%d%d〃,x,y,z);
)
3、編寫程序,輸入一個(gè)5位數(shù),判斷它是不是回文數(shù)。即12321
是回文數(shù),個(gè)位與萬位相同,十位與千位相同。
學(xué)生答案:
參考答案:main()
longge,shi,qian,wan,x;
scanf(〃%ld〃,&x);
wan=x/10000;
qian=x%10000/1000;
shi=x%100/10;
ge=x%10;
if(ge==wan&&shi==qian)/*個(gè)位等于萬位并且十位等于千位*/
printf(/z%disahuiwennumber.x);
else
printf(^disnotahuiwennumber.”,x);
)
4、編寫程序,將一個(gè)不大于256的十進(jìn)制正整數(shù)轉(zhuǎn)化為8位的
二進(jìn)制數(shù),若不足8位,則在前面補(bǔ)0,例如十進(jìn)制數(shù)2轉(zhuǎn)化位
8位二進(jìn)制數(shù)后是00000010,37轉(zhuǎn)化后是00100101。
試求出十進(jìn)制數(shù)5、23、189轉(zhuǎn)化位8位二進(jìn)制分別是多少?(要
求必須使用循環(huán)語句實(shí)現(xiàn))
學(xué)生答案:
參考答案:main()
(
inta,i,b[8];
printf("PleaseInputaNumber<=256:\n");
scanf("%d",&a);
for(i=l;i<=8;i++)
b[i]=0;
i=8;
while(i>=1)
{b[i]=a%2;
a=a/2;
if(a==0)
break;
i—;
)
for(i=l;i<=8;i++)
printfb[i]);
printfCW);
本題參考答案:0000010K0001011k10111101
第6章循環(huán)控制
單選題:
1、假定a和b為int型變量,則執(zhí)行以下語句后b的值為
a=1;b=10;
do
{b=b-a;a++;}
while(b—>0);
A.-3
B.-2
C.-1
D.-4
學(xué)生答案:B
參考答案:D
2、以下程序運(yùn)行后,輸出結(jié)果是
main()
{inty=18,i=0,j,a[8];
do
{a[i]=y%2;i++;
y=y/2;
}whiIe(y>=1);
for(j=i;j>0;j-)printf("%d\n",a[j]);
printf("\n");
}
A.1000
B.11010
C.01001
D.10100
學(xué)生答案:B
參考答案:C
3、以下程序的輸出結(jié)果是
main()
{inti;
for(i=1;i<6;i++)
{if(i%2){printf("#");continue;}
printf("*");
}
printf("\n"):
A.#*#*#
B.#####
C*****
D.*#*#*
學(xué)生答案:B
參考答案:A
4、以下程序段的輸出結(jié)果是
intx=3;
do
{printf("%3d",x-=2);)
whiIe(!(—x));
A.1
B.3,0
C.1,-2
D.死循環(huán)
學(xué)生答案:A
參考答案:C
5、閱讀下列程序:
main()
{intn[3],i,j,k;
for(i=0;i<3;i++)
n[i]=0;
k=2;
for(i=0;i<k;i++)
for(j=O;j<2;j++)
n[j]=n[i]+1;
printf("%d\n",n[1]);}
下述程序運(yùn)行后輸出結(jié)果是
A.2
B.1
C.0
D.3
學(xué)生答案:B
參考答案:D
6、定義如下變量:
intn=10
則下列循環(huán)的輸出結(jié)果是
while(n>7)
printf("%d\n",n);
)
A.1098
B.987
C.10987
D.9876
學(xué)生答案:B
參考答案:B
7、以下程序段的輸出結(jié)果是
intx=3;
do
{printf("%3d",x~=2);)
while(!(―x));
A.1
B.30
C.1-2
D.死循環(huán)
學(xué)生答案:C
參考答案:C
8、運(yùn)行以下程序后,如果從鍵盤上輸入6514<回車),則榆出
結(jié)果為
main()
(
intm,n;
printf("Enterm,n:");
scanf("%d%d",&m,&n);
while(m!=n)
(
whiIe(m>n)m-=n;
whiIe(n>m)n-=m;
)
printf("m=%d\n",m);
)
A.ni—3
B.m=2
C.m=1
D.m=0
學(xué)生答案:A
參考答案:C
9、以下程序的輸出結(jié)果是
main()
{inti,k,a[10],p[3];
k=5;
for(i=0;i<10;i++)a[i]=i;
for(i=0;i<3;i++)p[i]=a[i*(i+1)];
for(i=0;i<3;i++)k=k+p[i]*2;
printf("%d\n",k);
}
A.20
B.21
C.22
D.23
學(xué)生答案:B
參考答案:B
10、執(zhí)行語句:for(i=1;i++<4;)后;變量i的值是()
A.3
B.4
C.5
D.不定
學(xué)生答案:C
參考答案:C
11、執(zhí)行語句:for(i=1;i++<4;)后;變量i的值是
A.3
B.4
C.5
D.不定
學(xué)生答案:B
參考答案:C
12、以下程序的輸出結(jié)果是
{in
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)一年級(jí)數(shù)學(xué)兩位數(shù)加減一位數(shù)質(zhì)量檢測(cè)例題大全附答案
- Unit5Daily Activities Part B(說課稿)2024-2025學(xué)年閩教版英語四年級(jí)上冊(cè)
- 2025年中職教師讀書心得體會(huì)(3篇)
- 2025年度家電產(chǎn)品綠色設(shè)計(jì)開發(fā)合同范本
- 2025年度建筑合同環(huán)境保護(hù)與可持續(xù)發(fā)展合同
- 2025年度會(huì)員賬號(hào)轉(zhuǎn)讓與用戶協(xié)議變更合同模板
- 2025年度建筑工程安全風(fēng)險(xiǎn)評(píng)估與整改合同標(biāo)準(zhǔn)模板
- 2025年企業(yè)勞務(wù)合同經(jīng)典版(2篇)
- 2025年義務(wù)植樹活動(dòng)工作總結(jié)模版(二篇)
- 2025年人力部門個(gè)人工作總結(jié)(2篇)
- 2024時(shí)事政治考試題庫(基礎(chǔ)題)
- 2024山西文旅投資集團(tuán)招聘117人公開引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 小學(xué)校本課程教材《趣味數(shù)學(xué)》
- 干細(xì)胞療法推廣方案
- (2024年)電工安全培訓(xùn)(新編)課件
- mil-std-1916抽樣標(biāo)準(zhǔn)(中文版)
- 《社區(qū)康復(fù)》課件-第七章 腦癱患兒的社區(qū)康復(fù)實(shí)踐
- 城鄉(xiāng)環(huán)衛(wèi)一體化內(nèi)部管理制度
- 廣匯煤炭清潔煉化有限責(zé)任公司1000萬噸年煤炭分級(jí)提質(zhì)綜合利用項(xiàng)目變更環(huán)境影響報(bào)告書
- 小學(xué)數(shù)學(xué)六年級(jí)解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
評(píng)論
0/150
提交評(píng)論