版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1.每個(gè)C程序都必需有且僅有一個(gè)main函數(shù)。
2.C語言程序開發(fā)到執(zhí)行通常要經(jīng)過6個(gè)階段即編輯、預(yù)處理、編譯鏈接、加載和執(zhí)行。
3.軟件是程序,以及開發(fā)、運(yùn)用和維護(hù)所須要的全部文檔。
4.國標(biāo)中規(guī)定:“計(jì)算機(jī)程序是依據(jù)具體要求產(chǎn)生的適合于計(jì)算機(jī)處理的指令序列。
5.程序設(shè)計(jì)語言依據(jù)書寫形式,以及思維方式的不同一般分為低級(jí)語言和高級(jí)語兩大類
6.C語言是由函數(shù)組成的。
7.C語言的函數(shù)可分為主函數(shù)main、標(biāo)準(zhǔn)庫函數(shù)和自定義函數(shù)。
8.一個(gè)函數(shù)是由兩部分組成的,即:函數(shù)首部和函數(shù)體。
9.編譯是將C語言所編寫的源程序翻譯成機(jī)器代碼,也稱為建立目標(biāo)代碼程序的過程。
10.程序是由某種程序設(shè)計(jì)語言編制出來,體現(xiàn)了編程者的限制思想和對(duì)計(jì)算機(jī)執(zhí)行操作的
要求。不同的任務(wù)功能,就會(huì)需求不同的軟件程序,如:限制計(jì)算機(jī)本身軟硬件協(xié)調(diào)工作
,并使其設(shè)備充分發(fā)揮效力,便利用戶運(yùn)用的系統(tǒng)軟件程序,稱為操作系統(tǒng);而為辦公自動(dòng)
化(OA)、管理信息系統(tǒng)(MIS)、人工智能、電子商務(wù)、網(wǎng)絡(luò)互聯(lián)等等應(yīng)用而開發(fā)的軟件程
序,統(tǒng)稱為應(yīng)用軟件一。
11.機(jī)器語言是以二進(jìn)制代碼形式表示的機(jī)器基本指令的集合,是計(jì)算機(jī)系統(tǒng)唯一不須要翻
譯可以干脆識(shí)別和執(zhí)行的程序設(shè)計(jì)語言。
12.與機(jī)器語言相比,運(yùn)用匯編語言來編寫程序可以用一助記符_來表示指令的操作碼和操對(duì)
象,也可以用標(biāo)號(hào)和符號(hào)來代替地址、常量和變量。
13.在編譯程序之前,凡以一#開頭的代碼行都先由預(yù)處理程序預(yù)處理。
14.C程序的執(zhí)行均是由執(zhí)行一main函數(shù)起先。
15.函數(shù)體即為包含在{}內(nèi)的部分。它分為申明部分一和為完成功能任務(wù)由若干個(gè)C語句
組成的執(zhí)行部分。
16.C語言程序中一條簡潔語句是以乂或分號(hào)一字符作為結(jié)束符的。
17.C語言是結(jié)構(gòu)化、一模塊化一的程序設(shè)計(jì)語言。
18.由于計(jì)算機(jī)硬件不能干脆識(shí)別高級(jí)語言中的語句,因此,必需經(jīng)過“—翻譯一程序”,將
用高級(jí)語言編寫的程序翻譯成計(jì)算機(jī)硬件所能識(shí)別的機(jī)器語言程序方可執(zhí)行。
19.用高級(jí)語言編寫的程序需翻譯成計(jì)算機(jī)硬件所能識(shí)別的機(jī)器語言程序方可執(zhí)行。所以
說,用高級(jí)語言進(jìn)行程序設(shè)計(jì),其編程效率高,便利易用,但一執(zhí)行速度.沒有低級(jí)語言高。
20.第一個(gè)系統(tǒng)體現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì)思想的教學(xué)工具語言是.PASCAL語言。
其次章常量、變量和表達(dá)式
1.以16位計(jì)算機(jī)為例,若定義longinta;則變量a占0個(gè)字節(jié)的內(nèi)存空間。
2.以16位計(jì)算機(jī)為例,若定義doublea;則變量a占_4個(gè)字節(jié)的內(nèi)存空間。
3.以16位計(jì)算機(jī)為例,若定義longdouble;則變量a占10個(gè)字節(jié)的內(nèi)存空間。
4.在_32位機(jī),int型占4個(gè)字節(jié)。
5.C語言的數(shù)據(jù)類型有:基本數(shù)據(jù)類型、構(gòu)造數(shù)據(jù)類型、枚舉類型、指針型、空類型
6.在C語言中,基本數(shù)據(jù)類型有:.int、float、double,char
7.整型常量046轉(zhuǎn)換為十進(jìn)制數(shù)等于38
8.整型常量054轉(zhuǎn)換為十進(jìn)制數(shù)等于44。
9.整型常量0x125轉(zhuǎn)換為十進(jìn)制數(shù)等于293
10.整型常量0x7C轉(zhuǎn)換為十進(jìn)制數(shù)等于124
11.整型常量39轉(zhuǎn)換為八進(jìn)制等于047
12.實(shí)數(shù)473.468寫成規(guī)范化指數(shù)形式,則應(yīng)為4.734680e+002。
13.實(shí)數(shù)0.0453寫成規(guī)范化指數(shù)形式,則應(yīng)為4.530000e-002
14.將0x123轉(zhuǎn)換為二進(jìn)制等于100100011
15.字符'A'表示成十六進(jìn)制等于\x4皿1H。
16.在C語言中,稱代表常量的標(biāo)識(shí)符為符號(hào)常量一。
17.C語言中是用編譯預(yù)處理叮囑#define來定義符號(hào)常量
18.在C語言中,以反斜杠符(\)開頭,后跟字符的字符序列,稱之為轉(zhuǎn)義字符常量,主
要用來表示限制及不行見的字符或者一些圖形符號(hào)
19.語句printf("\106")執(zhí)行的結(jié)果輸出是F
20.語句printf(“b”)執(zhí)行的結(jié)果輸出是b_。
21.語句printf("\\b")執(zhí)行的結(jié)果輸出是\b_?
22.語句printf("\102")執(zhí)行的結(jié)果輸出是B
23.若有charchl;chl='a'+4;則語句printf("%c",x)的輸出結(jié)果為e。
24.字符串常量"Hello,everyone!”占據(jù)的內(nèi)存空間為一16個(gè)字節(jié)
25.字符串常量"Hello,Bob!”占據(jù)的內(nèi)存空間為11個(gè)字節(jié)
26.十進(jìn)制整型常量由0~9個(gè)數(shù)據(jù)組成,但不能以0起先,沒有小數(shù)部分
27.十六進(jìn)制常量由0~9和A~F_組成
28.unsignedlong類型常量通常以U為后綴
29.實(shí)型常量通常有小數(shù)形式和—指數(shù)形式兩種表達(dá)方式
30.C語言中是用編譯預(yù)處理叮囑#include來包含其他源文件
31.為了表示字符串的結(jié)束,系統(tǒng)自動(dòng)在字符串的最終加一個(gè)"\0",但不被輸出
32.C語言中.其值可被變更的量稱為變量,它具有三個(gè)基本要素:變量名,變量類型和變量值
33.C語言規(guī)定,變量的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線組成,且不能以一數(shù)字開頭。
34.在16位機(jī)中,sizeof("hello\n")等于7
35.在16位機(jī)中,printf(“\位機(jī)o\”")等于"hello".
36.字符變量在內(nèi)存中占用1個(gè)字節(jié)的存儲(chǔ)空間。
37.若有定義intx=27,y=6;則表達(dá)式x/y的值為4。
38.若有定義intx=47,y=8;則表達(dá)式x%y的值為7
39.若有定義charchl="A',ch2,ch3;執(zhí)行ch2=chl++;ch3=++chl;printf("chl=%c,ch2=%
c",chl,ch2);則輸出為chl=C,ch2=A
40.若有定義charchl='A',ch2,ch3;執(zhí)行ch2=chl++;ch3=++chl;printf("ch2=%c,ch3=%
c",ch2,ch3);則輸出為ch2=A,ch3=C。
41.若有定義inti=5,j,k;執(zhí)行j=i--;k=--i;printf("i=%d,j=%d\n",i,j);則輸
出為i=3,j=5
42.表達(dá)式(int)(13.7+25.6)A%5的值是4
43.表達(dá)式3.6-72+1.2+5%3的值是4.800000。
44.表達(dá)式54%10/2+4.0*(狎的值是7.000000?
45.若定義intx;doubleb=5.45;執(zhí)行x=b后,則x的值為5
46.若定義inty;charc='A';執(zhí)行y=c后,則y的值為65
47.若定義inta=8;floatb=2.5;則a/(int"b)的值為4
48.若a=5,則執(zhí)行a*=7-3語句后,a的值是20
49.若inta=l,b=0,c=4,d=2;則表達(dá)式(a>b?a:b)&&(c-d)的值為1
50.已知a=0,表達(dá)式a=l?b=l:b=0;執(zhí)行后,b的值是1
51.若定義intm=7,n=12;則表達(dá)式n%=m-m%5的值是2
52.若定義inta=8;floatb=4.5;執(zhí)行a*=a/=a-b后,a的值為4
53.inta=2;!a++的值為0
54.inta=0;!a++&++a的值為0
55.inta=7;floatb=4.5;則printf("%d",a*=a/=a-b)的值為4
56.intk=7;floata=2.5,b=4.7;則表達(dá)式a+k%3*(int)(a+b)%羽的值為2.500000
的值為
57.ftdefineMax(a,b)(((a)-(b))&0x80000000)?(a):(b),inta=2,b=6;printf("%d\n”,Max(a,b))2
58.在32位機(jī)中,inta=4,b=7;printf(“%0x”,a-b)的值為fffffffd
59.intx,y,z;x=y=2;z=3;y=x++-l;printf("%d,%d”,x,y)的值為:3,1
60.inti=2,j;printf(“%d",j=i<l)的值為:0
第三章依次結(jié)構(gòu)
一.填空
1.C語言的語句可分5類,它們是:限制語句,表達(dá)式語句、函數(shù)語句、符合語句和空語句。
2.常用于字符輸入的函數(shù)為:getchar()o
3.常用于字符輸出的函數(shù)為:putchar()
4.常用于字符串輸入的函數(shù)為gets()
5.常用于字符串輸出的函數(shù)為puts()
6.格式輸入函數(shù)的一般形式為:scanf(“格式限制字符串”,地址表列);
7.格式輸出函數(shù)的一般形式為:printf(“格式限制字符串”,輸出表列);。
8.printf和scanf是標(biāo)準(zhǔn)的庫函數(shù),它們的函數(shù)原型在頭文件stdio.h一中。
9.有charch,則從鍵盤給ch賦值的格式輸入語句為:scan”"%c",&ch);
10.假如要輸出字符串常量"HelloWord!”,則格式輸出語句為:printf("%s”,HelloWord!);
或者:printf(HelioWord!w);(,
11.設(shè)有定義:longx=-123456L;,請(qǐng)寫出能夠正確輸出變量x值的語句printf("x=%ld\n",x);
12.若有inta,b;,想通過scanf("%d%d",&a,&b);輸入語句給a賦于1,給b賦于2,則從鍵
盤輸入數(shù)據(jù)的形式是12或者1
2
13.若有inti,j;scanf("i=%d,j=%d";&i,&j);,要求給i賦:L0,給j賦20,則應(yīng)當(dāng)從鍵盤
輸入i=10,j=20?
14.已知i、j、k為int型變量,若從鍵盤輸入:1,2,3〈回車〉,使i的值為1、j的值為2、
k的值為3,請(qǐng)寫出正確的輸入語句scanf("%d,%d,%d",&i,&j,&k);
有若想
15.intm,n,p;scanf("m=%dn=%dp=%d",&m;&n;&p);printf("%d%d%d\n",m,n,p);
從鍵盤上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是
m=123n=456p=789
16.有inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf("\na=%d,b=%f,c=
%f\n",a,b,c);,若運(yùn)行時(shí)從鍵盤上輸入9876543210c回車〉,則程序的輸出結(jié)果是_a=98,
b=765.000000,c=4321.000000
17.有intm=0256,n=256;則printf("%o%o\n",m,n);的輸出結(jié)果是256400
18.有intx=102,y=012;,則printf("%2d,%2d\n”,x,y);的輸出結(jié)果是102,10
19.有定義和語句:inta;charc=10;floatf=100.0;doublex;a=f/=c*=(x=6.5);
則printf("%d%d%3.1f%3.1f\n",a,c,f,x);的輸出結(jié)果是1651.56.5,
20.若有定義和語句:intm=0xabc,n=0xabc;m-=n;則printf("%o\n",m);的輸出結(jié)果是0
21.若有intm=32,n=032;,則printf("%d,%x\n",m,n);執(zhí)行后輸出結(jié)果是32,la
22.若有inta=1234;,則printf("%2d\n",a);的輸出結(jié)果是1234
23.若變量已正確說明為float類型,要通過語句scanf("%f%f%f”,&a,&b,&c);給a賦于1
0.0,b賜予22.0,c蜴予33.0,不正確的輸入形式是B。
A)10〈回車>22〈回車>33〈回車〉B)10Q22Q33.0〈回車〉
C)10.0<回車〉22,033.0<回車〉D)1022c回車〉33c回車〉
24.若有intx=3,y=l;則printf("%d%d\n",x++,y+2);的輸出結(jié)果是33
25.若有定義和語句:doubled;floatf;longI;inti;i=f=l=d=2O/3;則printf("%
d%ld%f%f\n",i,l,f,d);的輸出結(jié)果是(小數(shù)點(diǎn)后只寫一位)666.06.0。
26.以下說法中正確的是Do
A)//define和printf都是C語句
B)#define是C語句,而printf不是
C)printf是C語句,但#define不是
D)ftdefine和printf都不是C語句
27.若有intk=17;,則printf("%d,%o,%x\n”,k,k,k);的輸出結(jié)果是17,21,11
28.以下敘述中正確的是C.
A)輸入項(xiàng)可以是一個(gè)實(shí)型常量,如:scanW胴f'^S);
B)只有格式限制,沒有輸入項(xiàng),也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scakf("a=%d,b=%d");
C)當(dāng)輸入數(shù)據(jù)時(shí),必需指明變量地址,例如:scanf("%f",&f);
29.若有定義和語句:intu=010,v=0xl0,w=10;則printf("%d,%d,%d\n",u,v,w);輸出結(jié)果是
8,16,10
30.若有inta=l,b=4,c=2;floatx=10.5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*l.?/c+
x;,則printf("%f\n",z);的輸出結(jié)果是13.700000
31.若有inta=2,c=5;,則printf("a=%%d,b=%%d\n",a,c);的輸出結(jié)果是a=%d,b=%d
32.有charc;intn=100;floatf=10;doublex;x=f*=n/=(c=50);則printf("%d%f\
n”,n,x);的輸出結(jié)果是_220.000000
有若
33.inti=O,j=O,k=O;scanf("%d%*d%d"/&i,&j;&k);printf("%d%d%d\n",i,j,k);
從鍵盤輸入:102030〈回車>。輸出結(jié)果是10300。
34.若有inta,b,c;a=25;b=025;c=0x25;,則printf("%d%d%d\n",a,b,c);的輸出結(jié)果
是一252137_o
35.有以下語句段
intnl=10,n2=20;printf("nl=%d\nn2=%d”,nl,n2);
要求按以下格式輸出nl和n2的值,每個(gè)輸出行從第一列起先,請(qǐng)?zhí)羁铡?/p>
nl=10n2=20
36.若有語句inti=-19,j=i%4;則printf("%d\n",j);的輸出結(jié)果是-3
o37.有inta=0;a+=(a=8);則printf("%d\n",a);的輸出結(jié)果是16
38.有inta=l,b=2;a=a+b;b=a-b;a=a-b;則printf("%d,%d\n”,a,b);的輸出結(jié)果是
2,1
39.Wunsignedshorta=65536;intb;,則printf("%d\n",b=a);的輸出結(jié)果是0
40.語句printf("\10289\n");的數(shù)據(jù)結(jié)果為:B89
第四章選擇結(jié)構(gòu)
1.在if,while,case,do,else等關(guān)鍵字中,用于選擇結(jié)構(gòu)的有().
2.已知a=1;那么if(a=2)printf("%d",2);elseprintf("%d",1);的輸出結(jié)果是
().
3.已知chara='A';那么if(a>65)printf("%s","bigger");elseprintf("%s"
,"smaller");的輸出結(jié)果是().
4.表示“xeyNz”的C語言表達(dá)式是()o
5.在C語言中,用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語句有()語句和()語句
6.推斷兩個(gè)浮點(diǎn)型變量x和y是否相等一般用:if(<le-6)
7.設(shè)有程序段:t=6;a=7;b=8;if(a=b)t=a;,這段程序執(zhí)行后,t的結(jié)果是()
8.設(shè)a=l,b=2,c=3,d=4,則表達(dá)式:a>b?a:c>d?a:d的結(jié)果為()。
9.表達(dá)式98&&8&&31&&(98-匕')的值為()。
10.若inta=3;則表達(dá)式(a>2)&&!('D'>69)的值為()?
二.閱讀程序?qū)懡Y(jié)果
1.#include<stdio.h>
voidmain()
(
intx,y,t;
x=7;y=9;if(x<y)
{t=x;x=y;y=t;}
printf("%d,%d\n",x,y);
}
2.include<stdio.h>
voidmain()
(
intx=l,a=2zb=3;
switch(x)
(
case1:a-;break;
case2:b++;break;
case3:a++;b++;
}
printf("\na=%d/b=%d\n"/a/b);
)
3.#include<stdio.h>
voidmain()
{
charchi='E';
if(chl>='A')
chl++;
else
chl+=32;
printf("chl=%c\n",chi);
)
4.#include<stdio.h>
voidmain()
(
intxzy,t;
x=5;y=3;
if(x>y)
(
t=x;x=y;y=t;}
printf(”%d,%d\n”,x,y);
}
5.#include<stdio.h>
intmain()
(
inta,b,c,m;
printf("Enterthreeintegers:");
scanf("%d%d%d"/&a,&b/&c);
if(a<=b)
m=a;
else
m=b;
if(c<m)
m=c;
,,
printf(m=%d\n"zm);
return0;}
輸入:212223c回車〉
6.#include<stdio.h>
intmain()
(
,,
charchl='a/ch2='B'/ch3=E';
if(chl>ch2)
if(ch2>ch3)ch3++;
else
-ch3;
printf("ch3=%c\n",ch3);
return0;
}
7.#include<stdio.h>
intmain()
(
floatx,y;
scanf("%f",&x);
switch((int)x/10){
case0:y=1.0;printf("y=%f\n"/y);break;
case1:y=2*x+l;printf("y=%f\n",y);break;
case2:y=3*x*x+2;printf("y=%f\n"/y);break;
default:
printf("Nodefinition.\n");
}
return0;}
輸入:15.3〈回車〉
8.#include<stdio.h>
intmain()
'
charchl='A'zch2='B;
switch(chl)
(
case'A1:
switch(ch2){
case'B':printf("Good!\n");break;
case'A':printf("Better!\n");break;
)
case'B':printf("Best!\n");break;
)
return0;
)
9.include<stdio.h>
voidmain()
(
floatscore;
score=100;
if(score<60)printf("E\n");
else
switch((int)score/10)
{case10:
case9:printf(nA\n");
case8:printf("B\n");
case7:printf("C\n");break;
case6:printf("D\n");break;
default:printf("Error\n");
)
)
10.#include<stdio.h>
voidmain()
(
inti=0,a=2;if(i==0)
printf(“**”);
else
printf("$$”);
printf(…);
)
11.#include<stdio.h>
voidmain()
(
intm=10zn=0,p=4,q=20;if(m)
if(n)
q=15-m;
else
q=25+m;
elseif(p)
q=q+P;
printf(//q=%d\n,,,q);
}
12.#include<stdio.h>
voidmain()
(
inta=lzb=0;switch(a)
(
case1:switch(b)
(
case0:printf("**O**");break;
casel:printf("**l**");break;
)
case2:printf("**2**H);break;
)
)
13.#include<stdio.h>
intmain()
(
inta=2,b=7,c=5;
switch(a>0){
case1:switch(b<0){
case1:printf("@H);break;
case2:printf("!H);break;
}
case0:switch(c==5){
case1:printf("*");break;
default:printf("#");break;
)
default:printf("&");
}
printf("\n");
return0;
)
14.#include<stdio.h>
intmain()
(
inta=0,b=Lc=0,d=20;if(a)d=d-10;elseif(!b)
if(!c)d=15;elsed=25;printf(,,d=%d\n",d);
return0;}
15.#include<stdio.h>
intmain()
{inta=l;switch(a){
case0:printf("**0**");break;
casel:printf("**l**");break;
case2:pnntf(H**2**");break;
)
return0;}
16.#include<stdio.h>
intmain()
{intx,y;
scanf("%d”,&x);
y=x>12?x+10:x-12;printf("%d\n"zy);
return0;}
輸入:12c回車〉
17.#include<stdio.h>
intmain()
(
floatx,y;
charop;
doubler;
scanf("%c%f%f",&op,&x,&y);
switch(op)
{caser=x+y;break;
caser=x-y;break;
caser=x*y;break;
caser=x/y;break;
)
printf("%.lf",r);
return0;}
輸入:3.5〈回車〉
18.include"stdio.h"
voidmain()
(
inta=7;if(a>911a<10)a=a^;else
a=a%3;printf("a=%d"za);
)
19.#include<stdio.h>
voidmain()
(
inta=20;switch(a%3){
case0:printf("O");
case1:printf("l");
case2:printf("2");
default:printf("3");
}
printf(*'4");
)
20.#include<stdio.h>
voidmain()
(
inta=2,b=5,c=8/t;
if(a<b){t=a;a=b;b=t;}
if(b<c){t=b;b=c;c=t;}
if(a<b){t=a;a=b;b=t;}
print,”%d,%d\n",a++,-c);
)
三.補(bǔ)充程序
1.依據(jù)輸入字符的ASCII碼來判別字符的類別。由ASCII碼表可知ASCII值小于32的為限制
字符。在“0”和“9”之間的為數(shù)字,在和“Z”之間為大寫字母,在“a”和“z”
之間為小寫字母,其余則為其它字符。
#include"stdio.h"
#include"string.h"
intmain()
(
charc;
printf("inputacharacter:");
___________c=getchar();__________________________________
if(c<32)printf(HThisisacontrolcharacter\nH);
(c>=O&&c<=9)_________________________________
printf("Thisisadigit\n");
elseif(c>='A'&&c<=Z)
printf("Thisisacapitalletter\n");
elseif(c>=,a'&&c<='z,)
printf(HThisisasmallletter\nu);
printf("Thisisanothercharacter\n");
return0;}
2.計(jì)算器程序。用戶輸入運(yùn)算數(shù)和四則運(yùn)算符,輸出計(jì)算結(jié)果.
#include"stdio.h"
intmain()
{
floata,b;
printf("inputexpression:a+(-,*,/)b\n");
,
scanf("%f%c%f',&a,&c/&b);
switch(c)
(
caseprintf("%f\n",a+b);______________________________________________
caseprintf("%f\n“,a_b);break;
caseprintf("%f\n",a*b);break;
case;break;
default:printf("inputerror\n");
)
return0;}
3.輸入三個(gè)整數(shù),輸出最大數(shù)和最小數(shù)(注:max總是記錄最大數(shù),而min總是記錄最小數(shù)).
#include"stdio.h"
intmain()
{
inta,b,c,max,min;
printf("inputthreenumbers:");
scanf("%d%d%d",&a,&b,&c);
if(a>b)
)
else
{max=b;min=a;}
max=c;
if(min>c)
printf(,,max=%d\nmin=%d,,,max,min);
return0;}
4.#include,,stdio.h"
intmain()
(
inta;
printf("inputintegernumber:");
scanf("%d",&a);
casel:printf("Monday\nn);break;
_______________________________________________printf(HTuesday\n");break;
case3:printf("Wednesday\n");break;
case4:printf("Thursday\n");_______________________________________________
case5:printf("Friday\n");break;
case6:printf("Saturday\n");break;
case7:printf("Sunday\n");break;
_______________________________________________pnntf(Herror\n");
)
return0;}
5.推斷a>b、a<b、a=b或aWb四種關(guān)系。
#includeustdio.h"
intmain()
(
inta,b;
printf("pleaseinputazb:");
scanf("%d%d"/&a,&b);
_______________________________________________printf("A=B\n");
_______________________________________________printf("A>B\n");
_______________________________________________printf("A<B\n");
_______________________________________________printf(”A#B\n“);
return0;}
6.依據(jù)以下函數(shù)關(guān)系,對(duì)輸入的每個(gè)x值,計(jì)算出相應(yīng)的y值。
0x<0
x0<=x<10
1010<=X<20
y=
error20<=x<30
0.5xx+2030<=x<40
2其它
#includenstdio.hH
intmain()
{
intx,c,m;
floaty;
scanf(〃%d〃,&x);
___________________________________________c=-l;else
c=;
switch(c)
(
case-1:y=0;break;
case0:y=x;break;
case1:y=10;break;
case2:
case3:y=-0.5*x+20;;
default:y=-2;
}
if(c!=2)printf("y=%ry);
printf("error!w);
return0;}
找出三個(gè)數(shù)中的最小數(shù),并推斷該數(shù)是否等于
x,y,zbo
#include"stdio.h"
intmain()
(
intx=4,y=5,z=8,b;
intu,v;
scanfC%d';&b);
u=x<y?;
v=u<z?;
ifprint"”最小數(shù)等于b!\n");
_______________________________________________printf("最小數(shù)不等于b!\n");
return0;
8.輸入兩個(gè)運(yùn)算數(shù)x,y和一個(gè)運(yùn)算符號(hào)。p,輸出該運(yùn)算結(jié)果的值,例如輸入3+5/得到結(jié)果
8
.#include"stdio.h"
intmain()
(
floatx,y,r;
charop;
scanf("%f,%c,%f,&x,&op,&y);
switch(op)
(
caser=x+y;;
_______________________________________r=x-y;break;
case'*':;break;
_______________________________________r=x/y;break;
}
printf(H%f",r);
return0;
9.找出a,b,c三個(gè)數(shù)中的最大數(shù),并推斷該數(shù)是否等于x。
#include"stdio.h"
intmain()
(
inta=8,b=4/c=12,x;
intu,v;
scanf(〃%d〃,&x);
u=a<b?;
v=u<c?;
ifprintf("最大數(shù)等于x!\n");
_______________________________________________printf("最大數(shù)不等于x!\n");
return0;
)
五.編程一
1.求分段函數(shù)
'1(x<0)
y='2x(l<x<5)
?石@>5)的值,輸入*值,輸出結(jié)果。
2.從鍵盤上輸入一個(gè)數(shù)x,計(jì)算并輸出下列分段函數(shù)y的值。
-Xx<0
sinx0<x<l
y
x310<x<20
未定義苴戶
<strong>八J</strong>
3.某運(yùn)輸公司運(yùn)費(fèi)計(jì)算時(shí)依據(jù)運(yùn)輸距離打折計(jì)算,折扣的計(jì)算方法如下:
0<250
2%250Vs<800
discount=<
5%800Vs<1500
8%s>1500
(其中,discount表示折扣,S表示運(yùn)輸距離)
編寫一完整程序,輸入運(yùn)輸距離,統(tǒng)計(jì)運(yùn)費(fèi)并輸出。每公里的運(yùn)費(fèi)通過符號(hào)常量定義為2
.4.編程輸入一元二次方程的三個(gè)系數(shù),求解一元二次方程的實(shí)根,無實(shí)根時(shí)不用求虛根,
給出相應(yīng)提示信息即可。
5.給定三條邊,推斷其是否能構(gòu)成三角形,若能構(gòu)成,推斷其是等腰三角形、等邊三角形
、直角三角形還是一般三角形。
6.從鍵盤輸入一個(gè)三角形的三條邊,推斷是否能組成三角形,若能組成三角形,則輸出它
的面積。
7.從鍵盤輸入一個(gè)百分制的學(xué)生成果,輸出其對(duì)應(yīng)的分?jǐn)?shù)等級(jí),其中90?100為A,80?89
為B,70?79為C,60?69為D,60以下為E。
8.編寫一個(gè)程序,從鍵盤輸入三個(gè)整數(shù)給a,b,c,然后交換它們中的數(shù),把a(bǔ)中原來的值
給b,把b中原來的值給c,把c中原來的值給a。
9.輸入一個(gè)字符,推斷其是否為英文字母,若是英文字母,則將其大小寫進(jìn)行轉(zhuǎn)換,若不
是英文字母,則不變。
10.給定三個(gè)整數(shù)型x,y,z,輸出三個(gè)數(shù)中的最大值和最小值。
解答:
1.#include"stdio.h"
include"math.h"
voidmain()
{
floatx,y;
printf("inputx\n");
scanf(”%f”,&x);
if(x<0)y=l;elseif(x<=5)y=2*x;
else
y=sqrt(x);
,,
printf(x=%5.1fy=%8.3f\n"zx,y);
)
2.#include"stdio.h"
include"math.h"
voidmain()
(
floatx,y;
printf("inputx\n");
scanf(”%f”,&x);
if(x>20||x>l&&x<10){
printf("無定義\n“);
return;
)
if(x<0)y=-x;
elseif(x<=l)y=sin(x)+x;
elseif(x>=10&&x<=20)y=x*x*x;
printf(Hx=%5.1fy=%8.3f\nH,x,y);
)
3.#include"stdio.h"
include"math.h"
#defineprice2.5
voidmain()
(
floatdiscount,cost,s;
printf("inputdistance\n");
scanf("%f",&s);
if(s<250)discount=0;elseif(s<800)discount=0.02;elseif(s<1500)discounts.05;
else
discount=0.08;cost=s*(l-discount)*price;
printf("distance=%5.1f;cost=%5.1f\n",s/cost);
)
4?/*功能:求一元二次方程的解。*/
include"math.h"
include"stdio.h"
main()
{floatazbzc,disc,xl,x2;scanf("%f,%f,%f”,&a,&b,&c);
disc=b*b-4*a*c;
if(disc==0)
printf(“xl=x2=%7.2f\n”,-b/(2*a));/*輸出兩個(gè)相等的實(shí)根*/
elseif(disc>0){xl=(-b+sqrt(disc))/(2*a);/*求出兩個(gè)不相等的實(shí)根*/
x2=(-b-sqrt(disc))/(2*a);
printf("xl=%7.2f,x2=%7.2f\n",xl,x2);
)
else
print一無實(shí)根\n“);
)
5.#include"stdio.h"
voidmain()
{
floata,b,c;
printf("輸入三條邊:\n");
scanf("%f%f%f"/&a/&b/&c);
if(a+b>c&&a+c>b&&b+c>a)
{if(a==b&&b==c)
printf("等邊三角形\n“);
elseif(a==b||b==c||c==a)
printf("等腰三角形\n“);
elseif(a*a==b*b+c*c||b*b==a*a+c*c||c*c==b*b+a*a)
printf("直角三角形\n");
)
else
printf("不能構(gòu)成三角形\n");
)
6.#include"stdio.h"
#include"math.h"
voidmain()
(
floata,b,c,s,area;
printf("輸入三條邊:\n");
scanf("%f%f%f",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a)
{s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%7.2f\n",area);
)
else
printf("不能構(gòu)成三角形\n“);
)
7.#include<stdio.h>
voidmain()
(
intscore;
chard;
printf("lnputscore\n");
H
scanf("%dz&score);
if(score>100||score<0){printf("dataerror!\n");
return;
)
switch(score/10){case10:case9:d='A';break;
case8:d='B';break;
case7:d=,C';break;
case6:d='D';break;
default:d='E';break;
}
printf("score=%3ddengji=%c\n”,score,d);
)
8.#include<stdio.h>
voidmain()
{
inta,b,c,t;
printf("lnputazb,c\n");
scanf("%d%d%d",&a,&b/&c);
t=a;
a=b;
b=c;
c=t;
,,,
printf('a=%d;b=%d;c=%d;\n/a/b/c);
)
9.#include<stdio.h>
voidmain()
(
charcl,c2;printf("lnputaletter:");
cl=getchar();
if(cl>='a,&&cl<='z,)
elseif(cl>='A'&&cl<=Z)
cZ^l+'a'-'A';
else
("原字符:轉(zhuǎn)換后為:
c2=cl;printf%c%c\n",cl,c2);
)
10.
#include<stdio.h>
voidmain()
(
inta,b,c,max,min;
printf("lnputa,b,c\n");
scanf("%d%d%d",&a,&b,&c);
max=a;min=a;
if(b>max)max=b;
elseif(b<min)min=b;
if(c>max)max=c;
elseif(c<min)min=c;
printf("a=%d;b=%d;c=%d;\n"/a/bzc);
printf("max=%d;min=%d\n"/max/min);
)
第五章循環(huán)結(jié)構(gòu)
一.填空
1.C語言中供應(yīng)了三種循環(huán)限制語句,它們是:()、do-whHe語句、()。
2.break語句在C程序中只能出現(xiàn)在兩種場合:一是用于()語句中,二是用于()
語句中。
3.以下程序段中的語句printf("***”)要執(zhí)行5次,請(qǐng)?jiān)诳瞻滋幪钊牒线m的數(shù)?
for(i=l;i<=();i=i+2)printf("***”);
4.定義intk=10;執(zhí)行語句while(k<20)k+=1;后,k的值為()。
5.在循環(huán)限制結(jié)構(gòu)中break語句的作用是()。
6.在循環(huán)限制結(jié)構(gòu)中continue語句的作用是:()。
7.若已知inta⑸⑸;并在運(yùn)行過程中a數(shù)組已經(jīng)賦值;要打印次對(duì)角線元素,在空白處
填入合適的值/表達(dá)式;
for(i=0;i<5;i++)
for(j=();j>=0;j-)
printf("%5d",a[i][j]);
8.執(zhí)行完語句sum=0;for(i=0;i<10;i++){if(i%5==0)sum+=i;
sum=()o
9.在運(yùn)用while語句中須要留意,為了防止“死循環(huán)”的發(fā)生,在循環(huán)體中確定要有
()語句。
10.do-while語句中,推斷循環(huán)條件在(),執(zhí)行循環(huán)體在()。(填“先””后
二.閱讀程序?qū)懡Y(jié)果
1.Include<stdio.h>
voidmain()
intnumber,digit;
number=1234;while(number!=0)
(
digit=number%10;
printf("%d",digit);
number=number/10;
)
)
2.#include<stdio.h>
#defineN5
voidmain()
(
inti;
for(i=l;i<N;i++)
printf("%d\n"/i*i);
)
3.#include<stdio.h>
voidmain()
(
inti,s,x;
s=0;x=15;for(i=l;i<=5;i++)
if(x%i==0)s=s+i;
printf("i=%d/s=%d\n"/i/s);
)
4.#include<stdio.h>
voidmain()
{
intcounter=l;while(counter<=5)
printf("%d\n"zcounter);
counter++;
)
)
5.#include<stdio.h>
intmain()
{
inti,sum,m,a;
sum=0;m=5;for(i=0;i<=3;i++)
(
scanf("%dH,&a);
if(a>m)
sum+=a;
}
,
printf('sum=%d\n"/sum);
return0;}
輸入:21083〈回車〉
6.#inc
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年高校博士研究生教師職務(wù)聘任合同范本3篇
- 二零二五年度跨境電子商務(wù)代理銷售合同6篇
- 二零二五年空壓機(jī)行業(yè)市場推廣與銷售合同3篇
- 二零二五年度儲(chǔ)煤場煤炭儲(chǔ)備與智能物流服務(wù)合同3篇
- 2024版土地貸款反擔(dān)保合同范本3篇
- 二零二五年度特殊環(huán)境搬遷及環(huán)保措施合同3篇
- 二零二五版跨境擔(dān)保居間交易合同細(xì)則2篇
- 展會(huì)國際物流合同(2篇)
- 二零二五版代駕服務(wù)租賃合同范本(含車輛使用限制條款)2篇
- 二零二五版快遞駕駛員職業(yè)發(fā)展規(guī)劃與聘用合同3篇
- 公共政策分析 課件 第8章政策評(píng)估;第9章政策監(jiān)控
- 人教版八年級(jí)上學(xué)期物理期末復(fù)習(xí)(壓軸60題40大考點(diǎn))
- 企業(yè)環(huán)保知識(shí)培訓(xùn)課件
- 2024年度管理評(píng)審報(bào)告
- 暨南大學(xué)《微觀經(jīng)濟(jì)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)藥銷售合規(guī)培訓(xùn)
- DB51-T 5038-2018 四川省地面工程施工工藝標(biāo)準(zhǔn)
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案
- GB/T 12723-2024單位產(chǎn)品能源消耗限額編制通則
- 2024年廣東省深圳市中考英語試題含解析
- GB/T 16288-2024塑料制品的標(biāo)志
評(píng)論
0/150
提交評(píng)論