c語(yǔ)言復(fù)習(xí)題答案(49題)_第1頁(yè)
c語(yǔ)言復(fù)習(xí)題答案(49題)_第2頁(yè)
c語(yǔ)言復(fù)習(xí)題答案(49題)_第3頁(yè)
c語(yǔ)言復(fù)習(xí)題答案(49題)_第4頁(yè)
c語(yǔ)言復(fù)習(xí)題答案(49題)_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——c語(yǔ)言復(fù)習(xí)題答案(49題)

一、順序結(jié)構(gòu)程序設(shè)計(jì)========================================1已知三角形的三邊長(zhǎng)為a,b,c,計(jì)算三角形面積的公式為:

1(a?b?c)2要求編寫程序,從鍵盤輸入a,b,c的值,計(jì)算并輸出三角形的面積。

#include#includevoidmain(){

floata,b,c,s,area;

scanf(\s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf(\b=%7.2f,c=%7.2f,s=%7.2f\\n\printf(\}

2編程從鍵盤輸入圓的半徑r,計(jì)算并輸出圓的周長(zhǎng)和面積。#include\#definePi3.14voidmain(){

floatr,c,area;

printf(\請(qǐng)輸入圓的半徑:\scanf(\c=2*Pi*r;area=Pi*r*r;

printf(\該圓的周長(zhǎng)是%.2f,面積是%.2f\\n\}

二、選擇結(jié)構(gòu)程序設(shè)計(jì)==========================================

area=s(s?a)(s?b)(s?c),s=

1從鍵盤任意輸入一個(gè)年號(hào),判斷它是否是閏年。若是閏年,輸出“Yes〞,否則輸出“No〞。已知符合以下條件之一者是閏年:

?能被4整除,但不能被100整除。?能被400整除。#includemain(){intyear,flag;printf(\scanf(\

if((year%4==0/*假使year是閏年,則標(biāo)志變量flag置1*/}else{flag=0;/*否則,標(biāo)志變量flag置0*/}if(flag){

printf(\/*打印“是閏年〞*/}else{printf(\/*打印“不是閏年〞*/}}

2通過(guò)鍵盤輸入一個(gè)字符,判斷該字符是數(shù)字字符、大寫字母、小寫字母、空格還是其他字符。

#includemain(){charch;scanf(\if((ch>=97floatfahr=0,celsius;upper=300;step=20;while(fahrmain(){intm;printf(\scanf(\/*輸入一個(gè)整數(shù)*/if(m>0)/*是否為正數(shù)*/{if(m%2==0)/*是正數(shù),且能被2整除,則是正偶數(shù)*/{printf(\}else/*不能被2整除,則是正奇數(shù)*/{printf(\}}elseif(m#includemain(){

intx;doubley;

printf(\scanf(\/*輸入一個(gè)整數(shù)*/if(x>0){y=exp(-x);/*假使大于0,計(jì)算y=exp(-x)的值*/}

elseif(x==0){y=1;/*x=0,則y=1*/}else{y=-exp(x);/*x#include#defineLIMIT1e-1

main(){floata,b,c;intflag=1;printf(\scanf(\/*輸入三角形的三條邊*//*三角形的基本條件*/if((a+b)>c}if(fabs(a*a+b*b-c*c)2afternoon3nightPleaseenteryourchoice:

操作人員根據(jù)提醒進(jìn)行選擇,程序根據(jù)輸入的時(shí)間序號(hào)顯示相應(yīng)的問(wèn)候信息,選擇1時(shí)顯示\,選擇2時(shí)顯示\,選擇3時(shí)顯示\,對(duì)于其他選擇顯示\,用switch語(yǔ)句編程實(shí)現(xiàn)。#includemain(){charc;printf(\printf(\printf(\printf(\printf(\/*建立相應(yīng)的菜單*/c=getchar();/*輸入選項(xiàng)*/switch(c)/*通過(guò)switch選擇*/{case1:printf(\break;case2:printf(\break;case3:printf(\break;default:printf(\}}

8讀入一個(gè)年份和月份,打印出該月有多少天(考慮閏年),用switch語(yǔ)句編程。#includemain(){intyear,month;printf(\scanf(\/*輸入相應(yīng)的年和月*/switch(month){

case1:case3:case5:case7:case8:case10:case12:printf(\break;case2:if((year%4==0case4:case6:case9:case11:printf(\break;default:printf(\}}

三、循環(huán)結(jié)構(gòu)程序設(shè)計(jì)==========================================1編程計(jì)算1!+2!+3!+4!+…+10!的值。

#includemain(){longterm=1,sum=0;inti;for(i=1;imain(){longterm=0,sum=0;inta,i,n;printf(\scanf(\/*輸入a,n的值*/for(i=1;imain(){doubleterm,result=1;/*累乘項(xiàng)初值應(yīng)為1*/intn;for(n=2;n#includemain(){intn=1;floatterm=1.0,sign=1,sum=0;while(fabs(term)>=1e-4)/*判斷末項(xiàng)大小*/{term=sign/n;/*求出累加項(xiàng)*/sum=sum+term;/*累加*/sign=-sign;/*改變項(xiàng)的符號(hào)*/n++;/*分母加1*/}printf(\}

x3x5x7x95利用泰勒級(jí)數(shù)sin(x)≈x??????,計(jì)算sin(x)的值。要求最終一項(xiàng)的絕對(duì)

3!5!7!9!值小于10-5,并統(tǒng)計(jì)出此時(shí)累加了多少項(xiàng)。#include#includemain(){intn=1,count=1;floatx;doublesum,term;/*由于位數(shù)多,所以定義為雙精度*/printf(\scanf(\sum=x;term=x;/*賦初值*/do{term=-term*x*x/((n+1)*(n+2));sum=sum+term;/*累加*/n=n+2;count++;}while(fabs(term)>=1e-5);printf(\}

6打印所有的“水仙花數(shù)〞。所謂“水仙花數(shù)〞,是指一個(gè)三位數(shù),其各位數(shù)字的立方和等

于該數(shù)本身。例如,153是“水仙花數(shù)〞,由于153=13+33+53。#includemain(){inti,j,k,n;printf(\for(n=100;n#includemain(){inti1,i2,i3,i4,k,n;printf(\scanf(\k=fabs(n);/*取絕對(duì)值*/i1=k/1000;/*分開出千位*/i2=(k-i1*1000)/100;/*分開出百位*/i3=(k-i1*1000-i2*100)/10;/*分開出十位*/i4=k%10;/*分開出個(gè)位*/printf(\}

8三色球問(wèn)題。若一個(gè)口袋中放有12個(gè)球,其中有3個(gè)紅色的,3個(gè)白色的,6個(gè)黑色的,

從中任取8個(gè)球,問(wèn)共有多少種不同的顏色搭配?

五、二維數(shù)組==========================================1輸入5×5階的矩陣,編程實(shí)現(xiàn):

(1)求兩條對(duì)角線上的各元素之和。

(2)求兩條對(duì)角線上行、列下標(biāo)均為偶數(shù)的各元素之積。

#include#defineARR_SIZE10

main(){inta[ARR_SIZE][ARR_SIZE],i,j,n,sum=0;longproduct=1;printf(\scanf(\printf(\for(i=0;i

#defineARR_SIZE11

voidYHTriangle(inta[][ARR_SIZE],intn);voidPrintYHTriangle(inta[][ARR_SIZE],intn);

main(){inta[ARR_SIZE][ARR_SIZE],n;

printf(\n(n

#defineROW2#defineCOL3

/*函數(shù)功能:輸入矩陣元素,存于數(shù)組a中函數(shù)參數(shù):整型數(shù)組a,存放矩陣元素返回值:無(wú)*/

voidInputMatrix(inta[ROW][COL]){inti,j;for(i=0;i

#defineROW2#defineCOL3

/*函數(shù)功能:計(jì)算矩陣相乘之積,結(jié)果存于數(shù)組c中函數(shù)參數(shù):整型數(shù)組a、b,分別存放兩個(gè)待求乘積的矩陣元素整型數(shù)組c,存放矩陣相乘的結(jié)果返回值:無(wú)*/

MultiplyMatrix(inta[ROW][COL],intb[COL][ROW],intc[ROW][ROW]){inti,j,k;for(i=0;iinti,j;for(i=0;i#include

#defineARR_SIZE80

main(){charstr[ARR_SIZE];intlen,i,letter=0,digit=0,space=0,others=0;printf(\string:\gets(str);for(i=0;str[i]!='\\0';i++){if(str[i]>='a'/*統(tǒng)計(jì)英文字符*/elseif(str[i]>='0'/*統(tǒng)計(jì)數(shù)字字符*/elseif(str[i]=='')space++;/*統(tǒng)計(jì)空格*/elseothers++;/*統(tǒng)計(jì)其他字符的個(gè)數(shù)*/}printf(\%d\\n\printf(\%d\\n\printf(\%d\\n\printf(\%d\\n\}

2編寫一個(gè)程序,實(shí)現(xiàn)將字符數(shù)組中的字符串逆序存放的功能。#include#include

#defineARR_SIZE80

voidInverse(charstr[],charptr[]);main(){

chara[ARR_SIZE],b[ARR_SIZE];

printf(\}

/*函數(shù)功能:實(shí)現(xiàn)將字符數(shù)組中的字符串逆序存放函數(shù)參數(shù):字符數(shù)組a,存放源字符串

字符數(shù)組b,存放逆序字符串gets(a);Inverse(a,b);

printf(\

puts(b);

函數(shù)返回值:無(wú)*/

voidInverse(charstr[],charptr[]){

inti=0,j;j=strlen(str)-1;while(str[i]!='\\0'){

ptr[j]=str[i];i++;

j--;

}ptr[i]='\\0';}

3從鍵盤輸入一行字符,統(tǒng)計(jì)其中有多少單詞。假設(shè)單詞之間以空格分開。#includemain(){

gets(str);if(str[0]!=''){}else{}

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

if(str[i]!=''

num=0;num=1;charstr[20];inti,num;

}

}

printf(\

4編寫一個(gè)程序,其功能是刪除字符串s中所出現(xiàn)的與變量c一致的字符。#include

voidSqueeze(chars[],charc);main()

{}

voidSqueeze(chars[],charc){

for(i=j=0;s[i]!='\\0';i++){

if(s[i]!=c){}

s[j]=s[i];j++;

inti,j;

printf(\gets(str);

printf(\c=getchar();Squeeze(str,c);puts(str);charstr[20],c;

}

}

s[j]='\\0';

5不用函數(shù)strcat(),編程實(shí)現(xiàn)字符串連接函數(shù)strcat()的功能,將字符串srcStr連接到字符

串dstStr的尾部。

#include#include

#defineARR_SIZE80

voidMyStrcat(chardstStr[],charsrcStr[]);main(){}

/*函數(shù)功能:將源字符串srcStr中的字符串連接到目的字符串dstStr之后

函數(shù)參數(shù):字符數(shù)組srcStr,存放源字符串printf(\puts(s);MyStrcat(s,t);

printf(\gets(s);

printf(\gets(t);

chars[ARR_SIZE],t[ARR_SIZE];

字符數(shù)組dstStr,存放目的字符串

源字符串srcStr和目的字符串dstStr連接后的字符串也存于此數(shù)組中

函數(shù)返回值:無(wú)*/

voidMyStrcat(chardstStr[],charsrcStr[]){

unsignedinti,j;

i=strlen(dstStr);/*將下標(biāo)移動(dòng)到目的字符串末尾*/for(j=0;jmain(){}/*

函數(shù)功能:判斷參數(shù)是否是素?cái)?shù)

函數(shù)入口參數(shù):number為整型數(shù),要求為正整數(shù)

intn,ret;printf(\scanf(\ret=IsPrimeNumber(n);if(ret!=0){}else{}

printf(\printf(\

函數(shù)返回值:非0值表示是素?cái)?shù),否則不是素?cái)?shù)*/

intIsPrimeNumber(intnumber){}

k2編程計(jì)算組合數(shù)p?Cm?inti;

if(number

unsignedlongFactorial(unsignedintnumber);main(){

do{

unsignedintm,k;doublep;

}/*

printf(\scanf(\

}while(m

intMinCommonMultiple(inta,intb);main(){

returnresult;

for(i=2;i

for(i=1;i

}

char*pEnd;/*指針變量pEnd指向字符串的最終一個(gè)字符*/

len=strlen(pStr);/*求出字符串長(zhǎng)度*/

for(pStart=pStr,pEnd=pStr+len-1;pStarttemp=*pStart;*pStart=*pEnd;*pEnd=temp;

5編程判斷輸入的一串字符是否為“回文〞。所謂“回文〞,是指順讀和倒讀都一樣的字符串。如\,\都是回文。

#include#includemain(){

printf(\gets(str);len=st

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論