




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
C語言課后習(xí)題習(xí)題答案詳解(11級教材)
第1章
1.1填空題
1.1.1應(yīng)用程序ONEFUNC.C中只有一種函數(shù),這個(gè)謳數(shù)H勺名稱是—main。
1.1.2一種函數(shù)由函數(shù)頭和函數(shù)體兩部分構(gòu)成。
1.1.3在C語言中,輸入操作是由庫函數(shù)—scant完畢歐J,輸出操作是由庫函數(shù)_prin1f_完
畢嘰
1.1.4經(jīng)過文字編輯建立的源程序文件的擴(kuò)展名是_.c_;編譯后生成目的程序文件,擴(kuò)展
名是_.obj_;連接后生成可執(zhí)行程序文件,擴(kuò)展名是一?xe_;運(yùn)營得到成果。
1.1.5C語言程序日勺基本單位或者模塊是函數(shù)。
1.1.6C語言程序的語句結(jié)束符是二—。
1.1.7編寫一種C程序,上機(jī)運(yùn)營要經(jīng)過的環(huán)節(jié):。
1.1.8在一種C語言源程序中,注釋部分兩側(cè)II勺分界符分別為」*_和
1.1.9C語言中的標(biāo)識符只能由三種字符構(gòu)成,它們是字母、數(shù)字和下劃線。
且第一種字符必須為字母或下劃線。
1.1.10C語言中的標(biāo)識符可分為關(guān)鍵字、預(yù)定義標(biāo)識符和顧客標(biāo)識符3類。
1.2選擇題
1.2.1一種C程序的執(zhí)行是從(A)。
A)本程序的main函數(shù)開始,到main函數(shù)結(jié)束
B)本程序文件的J第一種函數(shù)開始,到本程序文件的最終一種函數(shù)結(jié)束
C)本程序H勺main函數(shù)開始,到本程序文件H勺最終一種函數(shù)結(jié)束
D)本程序文件的第一種函數(shù)開始,到本程序main函數(shù)結(jié)束
1.2.2如下論述不正確的是(C)。
A)一種C源程序可由一種或多種函數(shù)構(gòu)成
B)一種C源程序必須涉及一種main函數(shù)
C)在C程序中,注釋闡明只能位于一條語句的背面
D)C程序的基本構(gòu)成單位是函數(shù)
1.2.3C語言要求:在一種源程序中,main函數(shù)的位置(C)。
A)必須在程序的開頭B)必須在系統(tǒng)調(diào)用的庫函數(shù)H勺背面
C)能夠在程序的任意位置D)必須在程序口勺最終
1.2.4C編譯程序是(A)o
A)將C源程序編譯成H的程序U勺程序
B)一組機(jī)器語言指令
C)將C源程序編譯成應(yīng)用軟件
D)C程序的機(jī)器語言版本
1.2.5要把高級語言編寫的源程序轉(zhuǎn)換為目的程序,需要使用(D)。
A)編輯程序B)驅(qū)動(dòng)程序C)診療程序D)編譯程序
1.2.6如下論述中正確的是(C)。
A)C語言比其他語言高級
B)C語言能夠不用編譯就能被計(jì)算機(jī)辨認(rèn)執(zhí)行
C)C語言以接近英語國家日勺自然語言和數(shù)學(xué)語言作為語言日勺體現(xiàn)形式
1.2.7D)C語言出現(xiàn)的最晚,具有其他語言時(shí)一切優(yōu)點(diǎn)
1.2.8如下論述中正確的是(A)。
A)C程序中注釋部分能夠出FI前程序中任意合適的地方
B)花括號“{”和“}”只能作為函數(shù)體的定界符
C)構(gòu)成C程序的基本單位是函數(shù),全部函數(shù)名都能夠由顧客命名
1.2.9D)分號是C語句之間n勺分隔符,不是語句的部分
1.2.10如下論述中正確的是(B)。
A)C語言的源程序不必經(jīng)過編譯就能夠直接運(yùn)營
B)C語言中的每條可執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制H勺機(jī)器指令
C)C源程序經(jīng)編譯形成H勺二進(jìn)制代碼能夠直接運(yùn)營
D)C語言中的函數(shù)不能夠單獨(dú)進(jìn)行編譯
1.2.11用C語言編寫的代碼程序(B)。
A)可立即執(zhí)行B)是一種源程序
C)經(jīng)過編譯即可執(zhí)行D)經(jīng)過編譯解釋才干執(zhí)行
1.2.12如下論述中正確的是(C)o
A)在C語言中,main函數(shù)必須位于程序的最前面
B)C語言時(shí)每行㈡只能寫一條語句
C)C語言本身沒有輸入輸出語句
1.2.13D)在對一種C程序進(jìn)行編譯的過程中,能夠發(fā)覺注釋中H勺拼寫錯(cuò)誤
下列4組選項(xiàng)中,均不是C語言關(guān)鍵字的選項(xiàng)是(A)。
A)defineB)getcC)includeDJwhile
IFcharscantgo
typeprintfcasepow
下列4組選項(xiàng)中,均是C語言關(guān)鍵字的選項(xiàng)是(B)。
A)autoB)switchC)signedD)if
enumtypedefunionstruct
includecontinuescanttype
C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線3種字符構(gòu)成,且第一種字符(C)。
A)必須為字母B)必須為下劃線
C)必須為字母或下劃線D)能夠是字母、數(shù)字和下劃線中任一種字符
1.3編程題
參照本章例題,編寫一種C程序,要求輸出如下字符。
WelcometoExpo2023!
Shanghai2023
#inchide<stdio.h>
voidmain()
printf(木*木***木*木東*木*木*木*木木***木**本*******木木*******木*木**木*木*木********木*木***
*木木***\n“);
printfC4WelcometoExpo2023!\n");
printf("Shanghai2O23\n’');
printf("*****^*木本木本木東*木*木*木*木木***木******水***木木木******木*木木********************
*木木***\n'')?
設(shè)計(jì)一程序,輸入3個(gè)整數(shù),計(jì)算并顯示輸出這3個(gè)整數(shù)之和。
#include<stdio.h>
voidniain()
inta,b,c;
printf(44inputa,b,c:\n");
scanf("%d%d%d",%a,%b,%c);
printf(44thcsumofa,b,cis%5d\n,,,a+b+c);
I
第2章
2.1填空題
2.1.1C程序中數(shù)據(jù)有常量和變量之分,其中,用一種標(biāo)識符代表一種常量的,稱
為符號常量。。語言要求在程序中對用到歐J全部數(shù)據(jù)都必須指定其數(shù)據(jù)類型,
對變量必須做到先定義,后使用。
2.1.2C語言中,用關(guān)鍵字float定義單精度實(shí)型變量,用關(guān)鍵字double定義雙精度實(shí)
型變量,用關(guān)鍵字char定義字符型變量。
2.1.3在C語言中,以16位PC機(jī)為例,一種char型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為
1;一種int型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為2,則int型數(shù)據(jù)的取值范圍為
-32768-32767。一種float型數(shù)據(jù)在內(nèi)存中所占I向字節(jié)數(shù)為4;一種double
型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為8。單精度型實(shí)數(shù)的有效位是6-7
位,雙精度型實(shí)數(shù)的有效位是15-16位。
2.1.4設(shè)C語言中口勺一種基本整型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),若欲將整數(shù)135791正確無
誤地寄存在變量a中,應(yīng)采用的類型闡明語句是longinta=15791;。
2.1.5C的字符常量是用單引號括起來的1個(gè)字符,而字符串常量是用雙引號括
起來口勺字符序列。
2.1.6C語言中,用開頭的字符序列稱為轉(zhuǎn)義符。轉(zhuǎn)義符“\n”日勺功能是回車換行;
轉(zhuǎn)義符“\r”的功能是回車。
2.1.7若有定義:charc='\010’;則變量c中涉及U勺字符個(gè)數(shù)為1。
2.1.8負(fù)數(shù)在計(jì)算機(jī)中是以補(bǔ)碼形式表達(dá)。
2.1.9C語言中,&作為雙目運(yùn)算符是表達(dá)的是按位與,而作為單FI運(yùn)算符時(shí)表達(dá)I向
是取地址。
2110在C語言的賦值體現(xiàn)式中,賦值號左邊必須是變量。
自增運(yùn)算符++、自減運(yùn)算符-,只能用于變量,不能用于常量或體現(xiàn)式。++和--的結(jié)合
方向是“自右左至左
若a是int型變量,則執(zhí)行下面體現(xiàn)式后a時(shí)值為2。
a=25/3%3
寫出卜.列數(shù)所相應(yīng)H勺其他進(jìn)制數(shù)(D相應(yīng)十進(jìn)制,B相應(yīng)二進(jìn)制,o相應(yīng)八進(jìn)制,H
相應(yīng)十六進(jìn)制)
32D=100000B=40o=20H
75D=1001011B=113o=4BH
2.1.11假設(shè)己指定i為整型變量,f為float變量,d為double型變量,e為long型變量,有
式子10+宣+i*fde,則成果為double型。
若有定義:intx=3,y=2;floata=2.5,b=3.5;則下面體現(xiàn)式時(shí)值為10
(x+y)%2+(int)a/(int)b
2.1.125/3時(shí)值為1,5.0/3口勺值為1.6666670
2.1.13若有如下定義,intm=5,y=2;則執(zhí)行體現(xiàn)式y(tǒng)+=y-=m*=y后的y值是-16。
2.1.14若a是int型變量,則體現(xiàn)式(a=4*5,a+2),a+6的值為26。
若x和n均為int型變量,且x的)初值為12,n的初值為5,則執(zhí)行體現(xiàn)式x%=(n%=2)
后x曰勺值為:0。
若有定義語句:inte=1,f=4,g=2;floatm=10.5,n=4.0,k;,則執(zhí)行體現(xiàn)式
k=(e+f)/g+sqrt((doublein)*1.2/g+m后k時(shí)值是13.7?
2.2選擇題
2.2.1逗號體現(xiàn)式”(a=3*5,a*4),a+15用勺值是(C)。
A>15B)60C)30D)不擬定
2.2.2若有如下定義和語句:
charc1='a',c2=T;
printf("%d,%c\n",c2-c1,c2-,a'+,B,);
則輸出成果是:(D)
A)2,MB)5,!C)2,ED)5,G
2.2.3sizeof(float)是(B)。
A)一種雙精度地體現(xiàn)式B)一種整型體現(xiàn)式
C)一種函數(shù)調(diào)用D)一種不正當(dāng)?shù)捏w現(xiàn)式
若有如下定義,則能使值為3的體現(xiàn)式是(D)。
intk=7,x=12;
A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)
在C語言中,要求運(yùn)算數(shù)必須是整型H勺運(yùn)算符是(A)。
A)%B)/c)<D)
下面4個(gè)選項(xiàng)中,均是正當(dāng)整型常量口勺選項(xiàng)是(A)6
A)160B)-OxcdfC)-01D)-0x48a
-Oxffff01a986,0122e5
011Oxe0668Ox
下面4個(gè)選項(xiàng)中,均是不正當(dāng)浮點(diǎn)數(shù)H勺選項(xiàng)是(B)(,
A)160.B)123C)-.18D)-e3
0.122e4.2123e4.234
E3.e50.01e3
2.2.4下面正確的字符常量是(C)o
A)"C"B)"\\"C)'W'D)”
在C語言中,inhchar和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)(D)。
A)由顧客自己定義B)均為2個(gè)字節(jié)
C)是任意的D)由所用機(jī)器的機(jī)器字長決定
假設(shè)全部變量均為整型,則體現(xiàn)式(a=2,b=5,b++,a+b)后x的值為(B)4
A)7B)8C)6D)2
假設(shè)全部變量均為整型,則體現(xiàn)式x=(i=4,j=16,k=32)后xl均值為(C)。
A)4B>16C)32D)52
若有代數(shù)式,則正確的C語言體現(xiàn)式是(D)。
A)fabs(x*3+log(x))B)fabs(pow(x,3)+log(x))
C)abs(pow(x,3.0)+log(x))D)fabs(pow(x,3.0)+log(x))
設(shè)變量n為float類型,m為int類型,則如下能實(shí)現(xiàn)將n中的數(shù)值保存小數(shù)點(diǎn)后兩位,
第三位進(jìn)行四舍五入運(yùn)算時(shí)體現(xiàn)式是(B).
A)n=(n*100+0.5)/100.0B)m=n*100+0.5,n=m/100.0
C)n=n*100+0.5/100.0D)n=(n/100+0.5)*100.0
2.2.5如下不正確的論述是(D)?
A)在C語言中,逗號運(yùn)算符的優(yōu)先級最低
B)在C語言中,APH和aph是兩個(gè)不同的變量
C)若a和b類型相同,在執(zhí)行了賦值體現(xiàn)式a=b后b中的值將放入a中,而b中及I
值不變
2.2.6D)當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對于整型變量只能輸入整型數(shù)值,對于實(shí)型變量
只能輸入實(shí)型數(shù)值
2.2.7如下正確的J論述是(D)o
A)在C語言中,每行中只能寫一條語句
B)若a是實(shí)型變量,C程序中允許賦值a=10,所以實(shí)型變量中允許寄存整型數(shù)
C)在C程序中,不論是整數(shù)還是實(shí)數(shù),都能被精確無誤地表達(dá)
D)在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符
2.3編程題
編寫一程序,求出給定半徑「的圓的面積和周長,并輸出計(jì)算成果。其中,r
時(shí)值由顧客輸入,用實(shí)型數(shù)據(jù)處理。
#include<stdio.h>
#definePI3.14159
voidmain()
(
floatr,c,s;
printf(Minputthe半徑");
scanf("%f",&r);
c=2*PI*r;
s=PI*r*r;
printf("周長為%5.2f,面積為%5.2f\n”,c,s);
)
已知華氏溫度和攝氏溫度之間H勺轉(zhuǎn)換關(guān)系是:C=5/9*(F-32)。編寫一程序,將
顧客輸入的華氏溫度轉(zhuǎn)換為攝氏溫度,并輸出成果。
#include<stdio.h>
voidmain()
(
floatc,f;
printf("inputthe華氏溫度");
scanf("%f",&f);
c=5.0/9*(f-32);
printff華氏溫度為%5.2f,攝氏溫度為%5.2f\n”,f,c);
)
習(xí)題三
3.1填空題
3.1.1程序的三種基本構(gòu)造是隨仁、選擇、循環(huán)。
3.1.2執(zhí)行(a=3.0+5,a*4),a+=-6;變量a及體現(xiàn)式的值分別為2.0,2.0
3.1.3卜.列語句被執(zhí)行后日勺執(zhí)行成果是「\abc\def。
inta=1;
printf("%d\\%s\\%s”,a,"abc","def');
3.1.4getchar()函數(shù)的作用是從鍵盤上接受?種字符。
運(yùn)營如下程序后,顧客輸入I23456abc,輸出成果為123,45,6。
voidmain()
{inta,b;
charc;
scant("%3d%2d%3c';&a,&b,&c);
printf("%d,%d,%c",a,b,c);
)
3.1.5下面程序的輸出成果是1112。
#include<stdio.h>
voidmain()
{inti=10;
{/*inti=20;*/
i++;
printf("%d”,i++);
)
printf("%d\n",i);
)
下面程序運(yùn)營后,從鍵盤輸入30,則程序日勺輸出成果是
a=31,Ha=11,Oa=37。
voidmain()
{inta;
scant&a);
a++;
w,
printf(a=%d1Ha=%x,Oa=%o\a,a,a);
}
3.1.6下面程序的輸出成果是a=-3
b=D'
“END”o
voidmain()
{inta,b=68;
a=-3;
printf('Ya=%d\n\tb=\'%c\'\n\"end\”\n”,a,b);}
3.1.7下面程序的輸出成果是成果7000000。
#include<stdio.h>
#include<matn.h>
main()
{inta=1,b=4,c=2;
floatx=10.5,y=4.0,z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
)
下面程序運(yùn)營后,若輸入a=2,b=3
成果是X1=6.U。
x2=0.67°
voidmain()
{floata,b,x1,x2;
scanf(Ma=%f,b=%f,&a,&b):
x1=a*b;
x2=a/b;
printf(Hx1=%5.2f\nx2=%5.2f\n",x1,x2);
)
3.2選擇題
3.2.1指出下面正確的輸入語句是(B)。
A)scant(*,a=b=%d',,&a,&b);B)scanf(,,a=%d,b=%r,&m,&f);
C)scanf("%3c”,c);D)scanf(M%5.2f;&f);
3.2.2執(zhí)行scanf("%d%c%r,&a,&b,&c)語句,若輸入1234al2f56則變量a,b,c啊直為
(C)o
A)a=1234b=,a,c=12.56B)a=1b=2c=341256
C)a=1234b=,a,c=12.0D)a=1234b='a12'c=56.0
3.2.3執(zhí)行scanf("a=%d,b=%d",&a,&b)語句,若要使變量a和b的值分別為3和4,則
正確的輸入措施為(C)。
A)3,4B)a:3b:4C)a=3,b=4D)34
3.2.4設(shè)b=1234,執(zhí)行printf(',%%d@%d',,b)語句輸出成果為:(D)。
A)1234B)%1234C)%%d@1234D)%d@1234
若x是int型變量,y是float型變量,所用scant語句為
scanf("x=%d,y=%f",&x,&y);正確日勺輸入操作是(A)。
A)x=10,y=66.6<0$>B)1066.6v回車)
C)10v回車>66.6v回車>D)x=10〈回車>y=66.6〈回車〉
3.2.5設(shè)a,b均是int型變量,則如下不正確的函數(shù)調(diào)用為(D)。
A)getchar();B)putcharfMOS*);
C)scanf("%d,%2d”,&a,&b);D)putcharCV);
3.2.6下列程序的執(zhí)行成果是(C)o
#include<stdio.h>
voidmain()
{inta=5;
floatx=3.14;
a*=x*(,E,-'A,);
printf(H%An,,,(float)a);}
A)62.800000B)62C)62.000000Dl63.000000
3.2.7若輸入2.50,下列程序的執(zhí)行成果是(A)o
voidmain()
{floatr,area:
scant("%f”,&r);
printf(Karea=%f\nM,area=1/2*r*r);}
A)UB)3.125C)3.13D)程序有錯(cuò)
3.3編程題
編寫程序,從鍵盤上輸入2個(gè)整數(shù)給變量a和b,互換a、b值然后輸出。
〃參照程序
include<stdio.h>
voidmain()
{inta,b,temp;
scanf("%d%dn,&a,&b);
printf("\n互換前:a=%d,b=%d\n",a,b);
temp=a;a=b;b=temp;
printf("互換后:a=%d,b=%d\n",a,b);
)
試編寫一種程序,任意輸入一種小寫字母,分別按八進(jìn)制、十進(jìn)制、十六進(jìn)制、
字符格式輸出。
〃參照程序:
#include<stdio.h>
voidmain()
{charc;
printf(”請輸入1個(gè)小寫字母:\n”);
scanf("%c",&c);
printf("八進(jìn)制:%o\n十進(jìn)制:%d\n",c,c);
printf(“十六進(jìn)制:%x\n字符:%c\n",c,c);
)
輸入一種華氏溫度,要求輸出攝氏溫度,輸出要有文字闡明,取2位小數(shù)。公式
為:
〃參照程序:
#include<stdio.h>
voidmain()
{floatc,f;
printf(“請輸入一種華氏溫度:\n");
c=5.0/9*(132);
printf(“華氏溫度F=%.2f\n",f);
printf(“攝氏溫度c=%.2f\n,\c);
設(shè)圓半徑r=3,圓柱高h(yuǎn)=4,求圓周長、圓面積、圓球表面積、圓球體積、圓
柱體積。用scanf輸入數(shù)據(jù),輸出計(jì)算成果,輸出時(shí)要求有文字闡明,取小數(shù)點(diǎn)后2位數(shù)
字。請編程序。
〃參照程序:
#include<stdio.h>
#definePI3.1415926
voidmain()
{floatr,h,c,sl,s2,vl,v2;
printf(“請輸入圓半徑,圓柱高:");
scanf(u%f,%f\&r,&h);
c=2*PI*r;sl=PI*r*r;s2=4*PI*r*r;
vl=4/3*PI*r*r*r:v2=sl*h:
printf(t4r=%.2f,h=%.2f\n,,,r,h);
printf(“圓周長=%.2f,圓面積二%.2f\n”,sl,s2);
printf(“圓體積=%.2f,圓柱體積二%.2f\n”,vl,v2);
}
習(xí)題四
4.1填空題
4.1.1表達(dá)條件:10vxv100或xvO的C語言體現(xiàn)式是10<x&&x<100||x<0。
4.1.2若要求在if后一對圓括號中表達(dá)a不等于0的關(guān)系,則能正確表達(dá)這一關(guān)系的體
現(xiàn)式為a。
4.1.3若已知a=10,b=20,則體現(xiàn)式!avb的I值為!。
4.1.4當(dāng)a=3,b=2,c=1時(shí),體現(xiàn)式f=a>b>c曰勺值是0。
415設(shè)y為int型變量,請寫出描述“y是奇數(shù)”的體現(xiàn)式y(tǒng)%2!=0。
4.1.6設(shè)x,y,z為int型變量,請寫出描述“x或y中有一種不不小于z”日勺體現(xiàn)式
x<z&&y>=z||x>=z&&y<z。
已知a=7.5,b=2,c=3.6,體現(xiàn)式a>b&&c>a||a<b&&!c>b時(shí)值是1。
假設(shè)a=5,b=2,c=4,如下體現(xiàn)式的值依次為:o
(1)a%b*c&&c%b*a
(2)b%c*a&&a%c*b
(3)a%b*c||c%b*a
(4)b%c*a||a%c*b
假設(shè)a=3,b=4,c=5,x=0,y=0,如下各體現(xiàn)式時(shí)值依次為0,1,1,0,1。
(1)a+b>c&&b==c
(2)a||b+c&&b-c
(3)!(a>b)&&!c||1
(4)?(x=a)&&(y=b)&&0
(5)?(a+b)+c-1&&b+c/2
兩次運(yùn)營下面的程序,假如從鍵盤上分別輸入6和4,輸出的成果是7和5。
voidmain()
{intx;
scanf("%d”,&x);
if(x++>5)
printf("%d”,x);
else
printf("%d\n”,x--);}
4.2.1選擇題:
設(shè)a為整型變量,不能正確體現(xiàn)數(shù)學(xué)關(guān)系:10vav15日勺C語言體現(xiàn)式是(A)。
A)W<a<i5B)a==l1||a==l2||a==l3||a==i4
C)a>10&&a<15D)!(a<=10)&&!(a>=15)
在如下一組運(yùn)算符中,優(yōu)先級最高日勺是(C)o
A)<=B)=C)%D)&&
設(shè)a,b,c都是int型變量,且a=3,b=4,c=5,則下面體現(xiàn)式中,值為0的體現(xiàn)式是
D)。
A)'a'&&'b'B)a<=bC)c||+c&&b-cD)!((a<b)&&!c||1)
在C語言的if語句中,用作判斷的體現(xiàn)式為(D)o
A)關(guān)系體現(xiàn)式B)邏輯體現(xiàn)式C)算術(shù)體現(xiàn)式D)任意體現(xiàn)式
在如下運(yùn)算符中,優(yōu)先級最高II勺運(yùn)算符是(B)o
A)<=B)/C)!=D)&&
假設(shè)全部變量均為整型,體現(xiàn)式(a=2,b=5,a>b?a++:b++,a+b)的值是(B)),
A)7Bi8C)9D)2
在C語言中,能代表邏輯值“真用勺是(D)。
A)trueB)不小于0的I數(shù)C)非0整數(shù)D)非0H勺數(shù)
在如卜運(yùn)算符中,優(yōu)先級最高的)運(yùn)算符是(A)o
A)!B)=C)+D)||
4.2.2邏輯運(yùn)算符兩側(cè)運(yùn)算對象的數(shù)據(jù)類型(D)。
A)只能是0或1B)只能是0或非0正數(shù)
C)只能是整型或字符型數(shù)據(jù)D)能夠是任何類型的數(shù)據(jù)
4.2編程題
編寫一種C程序,要求從鍵盤輸入一種整數(shù),判斷該整數(shù)是否能夠被17整除。(解析:
當(dāng)該數(shù)與17的余數(shù)為零時(shí),即能夠被17整除。)
〃參照程序
include<stdio.h>
voidmain()
(
inta;
printf(“請輸入一種整數(shù):”);
scanf("%d",&a);
if(a%17==0)
p「intf("%d能被17整除
else
printf(M%d不能被17整除\n”,a);
)
編寫一種C程序,計(jì)算并顯示由下列闡明擬定H勺一周薪水。假如工時(shí)不不小
于40,則薪水按每小時(shí)8元計(jì);不然,按320元加二超出40小時(shí)部分的每小時(shí)12元。
(解析:一周工時(shí)數(shù)為鍵盤輸入,顯示其相應(yīng)薪水為輸出。)
〃參照程序
#include<stdio.h>
voidmain()
(
floata,wage;
printf(“請輸入工時(shí)數(shù):");
scanf(H%f;&a);
if(a<0)printfC'error!,1);
else
{if(a<40)wage=a*8;
elsewage=320+(a-40)*12;
printf("周薪水=%.1f元\n”,wage);
)
)
編寫一種C程序,要求從鍵盤輸入三個(gè)整數(shù)a,b,c,輸出其中最大U勺數(shù)。(解
析:求極值問題。設(shè)置一種變量max總是保存兩數(shù)比較時(shí)較大的那個(gè)值。詳細(xì)措施如卜.:
先將aH勺值賦給max,假如max<b則將b的I值賦給max,然后再用max與c進(jìn)行比較,
假如max<c則將c時(shí)值賦給max,這么能使max總是保存最大H勺值。最終輸出max。)
〃參照程序
#include<stdio.h>
voidmain()
{
inta,b,cmax;
printf(“請輸入三個(gè)整數(shù):”);
scanfC'%d%d%d”,&a,&b,&c);
if(a>b)max=a;
elsemax=b;/*max=a>b?a:b;*/
if(c>ma>:)max=c;/*max=max>c?max:c;*/
printf("最大值max=%d\n,,,max);
)
編寫一種C程序,要求從鍵盤輸入三個(gè)整數(shù)x,y,z,請把這三個(gè)數(shù)由小到大輸
出。(解析:排序問題。想措施把三個(gè)數(shù)進(jìn)行調(diào)換,使得最小時(shí)數(shù)放到x變量里,最大的
數(shù)放在z變量里。詳細(xì)措施如下:先將x與y進(jìn)行比較,假如x>y則將x與y的值進(jìn)行
互換,然后再用x與z進(jìn)行比較,假如x>z則將x與z時(shí)值進(jìn)行互換,這么能使X最小;
然后將y與z比較,棄將較小時(shí)值保存在y里而較大的值放在z里。最終,依次輸出X、
y、Zo)
〃參照程序
include<stdio.h>
voidmain()
(
intx,y,z,a;
printf(uinput3integer:\n");
scanf("%d,%d,%d”,&x,&y,&z);
if(x>y)/*使x<=y*/
{a=x;x=y;y=a;}
if(x>z)〃使x<=z*/
{a=x;x=z;z=a;}
if(y>z)/*使y<=z7
{a=z;z=y;y=a;}
print1(4<\nx=%d,y=%d,z=%d\n",x,y,z);
)
編寫一種C程序,要求從鍵盤輸入一種不多于5位的正整數(shù)x,要求輸出:一、它是
幾位數(shù):二、逆序打印出各位數(shù)字,例如:原數(shù)為789,應(yīng)輸出987。(解析:該問
題口勺關(guān)鍵是分解出每一位上口勺數(shù)字:
a=x/10000;/*分解出萬位上的數(shù)字*/
b=x%10000/1000;/*分解出千位上的數(shù)字*/
c=x%1000/100;/*分解出百位上的數(shù)字*/
d=x%100/10;/*分解出十位上的數(shù)字*/
e=x%10;/*分解出個(gè)位上的數(shù)字*/
經(jīng)過檢測各數(shù)字是否為零,便可懂得x是幾位數(shù),例如:if(a)則x是5位數(shù)。)
〃參照程序
#include<stdio.h>
voidmain()
{longx;inta,b,c,d,e;
printf("\ninputx:");scanf("%ld",&x);
e=x%10;c=x/10%10;c=x/100%10;b=x/1000%10;a=x/10000;
if(x>=1E+5||x<=0)
printi("Outofrange!\n");
else
{if(a>3)printf("5位數(shù),反序數(shù)字是:%d%d%d%d%d\n",e,d,c:b,a);
elseif(b>0)printf("4位數(shù),反序數(shù)字是:%d%d%d%d\n",e,d,c,b);
elseif(c>0)printf(M3位數(shù),反序數(shù)字是:%d%d%d\n",e,d,c);
elseif(d>0)printf("2位數(shù),反序數(shù)字是:%d%d\n”,e,d);
elseprintf("1位數(shù),數(shù)字是:%d\n",e);
}
)
編寫一種C程序,要求從鍵盤輸入兩個(gè)數(shù),并根據(jù)提醒輸入的數(shù)字,選擇對這兩
個(gè)數(shù)的I運(yùn)算,并輸出相應(yīng)運(yùn)算成果。要求提醒為:
1.作加法;
2.做乘法;
3.做除法:
(解析:可使用switch語句,以提醒輸入H勺數(shù)字為根據(jù),作分支構(gòu)造設(shè)計(jì),使
得提醒輸入1時(shí),將兩數(shù)之和輸出;提醒輸入2時(shí),將兩數(shù)之積輸出;提醒輸入3時(shí),將
兩數(shù)之商輸出--注意,除數(shù)不可為零口勺檢測與提醒。)
〃參照程序
include<stdio.h>
voidmain()
{floatop1,op2;intsign;
printf("請輸入兩個(gè)操作數(shù):ab\n");
scanf("%f%f",&op1,&op2);
prints請選擇進(jìn)行的I運(yùn)算(1,2,3,4):\n");
printf("1:+\nu);
printf("2:An");
printf("3:*\n");
printf("4:An");
printf("您選擇:");
scanf("%dH,&sign);
switch(sign)
{case1:printf("\n%f+%f=%f\n",op1,op2,op1+op2);break;
case2:printf("\n%f-%f=%f\n",op1,op2,op1-op2);break;
case3:printf("\n%f*%f=%f\nH,op1,op2,op1*op2);break;
,,
case4:if(op2){printf("\n%f/%f=%f\n,op15op2,op1/op2);break;}
else{printf("\n除數(shù)不能為0\n°);break;}
default:printf("\n您選擇的運(yùn)算不對\n");
)
)
習(xí)題五
5.1填空題
5.1.1C語言三個(gè)循環(huán)語句分別是while語句,dowhile語句和for語句。
5.1.2至少執(zhí)行一次循環(huán)體的循環(huán)語句是dowhile.
5.1.3循環(huán)功能最強(qiáng)的循環(huán)語句是
下面程序段是從健盤輸入口勺字符中統(tǒng)計(jì)數(shù)字字符日勺個(gè)數(shù),用換行符結(jié)束循環(huán)。請?zhí)?/p>
填空。
intn=0,c;
c=getchar();
while(c!^\n)
{if(c>='0'&&cv='9‘)n++;
c=getchar();}
在執(zhí)行如下程序時(shí),假如鍵盤上輸入:ABCdef〈回車),則輸出為abcDEF。
#include<stdio.h>
{charch;
while((ch=getchar())!='\n')
{if(ch>='A'&&ch<=,Z,)ch=ch+32;
elseif(ch>=,a'&&ch<=,z,)ch=ch-32;
printf("\n");}
卜.面程序的功能是用輾轉(zhuǎn)相除法求兩個(gè)正整數(shù)的最大公約數(shù),請?zhí)羁铡?/p>
#include<stdio.h>
voidmain()
{intr,m,n;
scanf("%d,%d',&m,&n);
if(m<n){r=m;m=n;n=r}
r=m%n;
while(r){m=n;n=r;r=m%n;)
printf("%d'n",n);
)
當(dāng)運(yùn)營如下程序時(shí),從鍵盤輸入“right?v問車〉”,則下面程序的運(yùn)營成果是
sjhiuo
#include<stdio.h>
voidmain()
{charc;
while((c=getchar())!=,?t)putchar(++c);
)
5.1.4下面程序的運(yùn)營成果是一s=254.
#include<stdio.h>
voidmain()
{inta,s,n,count;
a=2;s=0;n=1;count=1;
while(count<=7){n=n*a;s=s+n;++count;}
printf(Hs=%dB,s);}
執(zhí)行下面程序段后,k的值是36o
k=1;n=263;
do{k*=n%10;n/=10;}while(n);
5.1.5下面程序的運(yùn)營成果是-10°
#include<stdio.h>
voidmain()
{inti;
for(i=100;i>=0;i-=10);
printf("%d\n”,i);}
5.1.6下面程序使循環(huán)結(jié)束的條件式i==O.
#include<stdio.h>
voidmain()
{inti;
for(i=250;i;i-=5)
printf(',%d\n,,,i);
}
5.1.7如下程序輸出成果為x=-1,v=21.
#include<stdio.h>
voidmain()
{intx,y;
for(x=30,y=0;x>=10,y<20;x-,y++)
x/=2,y+=2;
printf(Hx=%d,y=%d\n",x,y);
下面程序日勺功能是計(jì)算1-3+5-7+...-99+100/V直,請?zhí)羁铡?/p>
#include<stdio.h>
voidmain()
{inti,t=1,s=0;
for(i=1;i<=101;i+=2)
{t=t*i:s=s+t;t=-t/i;}
printf("%d\n”.s);
)
5.1.8下面程序的運(yùn)營成果是二二。
#include<stdio.h>
voidmain()
{inti,j=4;
for(i=j;i<2*j;i++)
switch(i/j)
{case0:
case1:printf("*");break;
case2:printf("#");}
)
5.1.9下面程序的輸出成果是i=6,k=4。
#include<stdio.h>
voidmain()
{inti,j,k=19;
while(i=k-1)
{k-=3;
if(k%5==0){i++;continue;}
elseif(k<5)break;
i++;
)
printf(Hi=%d,k=%d\n",ik);
)
5.2選擇題
設(shè)有程序段:intk=10;while(k=0)k=k-1則下面描述正確的是(C)。
A)while循環(huán)執(zhí)行10次B)循環(huán)時(shí)無限循環(huán)
C)循環(huán)體語句一次也不執(zhí)行D)循環(huán)體語句執(zhí)行一次
有如下程序:
#include<stdio.b>
voidmain(){while(putchar(getchar())!='?');}
當(dāng)輸入“china?”時(shí),程序的執(zhí)行成果是(D)o
A)chinaB)dijobC)dijiob?D)china?
5.2.1語句while(!E);中時(shí)體現(xiàn)式!E等價(jià)于(A)。
A)E==0B)E!=1C)E!=0D)E==1
5.2.2下面程序段的運(yùn)營成果是(A)。
a=1;b=2;c=2;
while(a<b<c)
{t=a;a=b;b=t;c-}
printf(K%d,%d,%d",a,b,c);
A)1,2,0B)2,1,0C)1,2,1D)2,1,1
5.2.3下面程序段的輸出成果是(C)。
intn=0;
while(n++<=2);printf("%d”,n);
A)2B)3C)4D)有語法錯(cuò)誤
下面程序的功能是將從鍵盤輸入的一對數(shù),由小到大排序輸出。當(dāng)輸入一
對相等數(shù)時(shí)結(jié)束循環(huán),請選擇填空。
#include<stdio.h>
voidmain()
{inta,b,t;
scanf(4,%d,%d",&a,&b);
while(B)
{if(a>b)
{t=a;a=b;b=t;}
printf(%d,%d\n,,,a,b);
scanf('4%d,%d,,,&a,&b);
)
A)!a=bB)a!=bC)a==
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勇氣戰(zhàn)勝困難的鑰匙記事作文6篇
- 2025安徽固鎮(zhèn)縣連城鎮(zhèn)招聘村級后備人才3人考前自測高頻考點(diǎn)模擬試題附答案詳解(突破訓(xùn)練)
- 2025-2026學(xué)年黑龍江省雞西市某中學(xué)高二上學(xué)期開學(xué)考試英語試卷(解析版)
- 2025年河北衡水市第三人民醫(yī)院招聘見習(xí)人員49名考前自測高頻考點(diǎn)模擬試題及答案詳解(各地真題)
- 2025黑龍江齊齊哈爾市富裕縣富海鎮(zhèn)招聘公益性崗位人員2人模擬試卷及答案詳解(考點(diǎn)梳理)
- 2025年河北外國語學(xué)院人才招聘考前自測高頻考點(diǎn)模擬試題及答案詳解參考
- 2025貴州省計(jì)量測試院參加第十三屆貴州人才博覽會(huì)引才4人模擬試卷及答案詳解(有一套)
- 2025河南省水利廳廳屬事業(yè)單位招聘47人模擬試卷及答案詳解一套
- 江蘇省常州市2024-2025學(xué)年高三上學(xué)期1月期末質(zhì)量調(diào)研地理試題(解析版)
- 2025湖北襄陽市中醫(yī)醫(yī)院(襄陽市中醫(yī)藥研究所)招聘急需專業(yè)技術(shù)人才55人考前自測高頻考點(diǎn)模擬試題附答案詳解(模擬題)
- 初中九年級化學(xué)課件元素周期表“衡水賽”一等獎(jiǎng)
- 投標(biāo)貨物質(zhì)量標(biāo)準(zhǔn)的詳細(xì)描述
- 《大學(xué)生軍事理論教程》第五章
- 中國建筑色卡
- 北師大九年級物理上冊 (組裝電路)簡單電路 課件
- 2023年普通高中學(xué)業(yè)水平合格性考試音樂試卷
- 第八章世紀(jì)美國政治思想
- 起重機(jī)司機(jī)Q2(限橋式起重機(jī))題庫題庫(1727道)
- 木質(zhì)纖維素的生物分解及其轉(zhuǎn)化技術(shù)
- 冠寓運(yùn)營管理手冊正式版
- GB/T 39473-2020北斗衛(wèi)星導(dǎo)航系統(tǒng)公開服務(wù)性能規(guī)范
評論
0/150
提交評論