c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第1頁
c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第2頁
c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第3頁
c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第4頁
c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

“C++程序設(shè)計”實驗一簡單的C++程序

1、編寫簡單的屏幕輸出程序:

[過程]

①首先在資源管理器中,在用戶盤(硬盤)創(chuàng)建自己的文件夾,例如可以以

自己的學(xué)號為名建立文件夾。

②進(jìn)入VisualC++開發(fā)環(huán)境,新建C++源文件,存放在上一步建立的文件夾

中。打開源文件編輯窗口,輸入以下源代碼:

#include<iostream.h>

voidmain()

(

cout<<“……”;//省略號處是想要輸出到屏幕上的內(nèi)容,可以隨意編輯。

③保存文件后單擊“編譯compile”按鈕3(快捷鍵Ctrl+F7),在出現(xiàn)的

對話框中單擊“是

④若沒有錯誤,繼續(xù)單擊“連接build”按鈕3(快捷鍵F7)。若沒有錯

誤則繼續(xù)單擊“執(zhí)行execute”按鈕!(快捷鍵Ctrl+F5),查看程序運行結(jié)果。

#include<iostream.h>

voidmain()

{

cout?"Hell。:-)\n";//省略號處是想要輸出到屏幕上的內(nèi)容。

)

2、將兩個數(shù)交換后輸出。

[分析]交換兩個數(shù),一般方法是用一個中間變量,經(jīng)過幾次賦值實現(xiàn)。

#include<iostream.h>

voidmain()

(

doublea,b,temp;

coutvv”請輸入任意兩個數(shù)(以空格間隔輸入):7/此語句是顯示輸入提示

cin?a?b;//此語句是將用戶輸入的兩個數(shù)依次保存到a、b兩個變量中

cout?"a="?a<<""<<"b="?b?endl;//此語句是輸出a、b兩個變量的值

temp=a;〃此語句是將變量a的值賦給變量temp,“="稱為賦值號

……;//完成省略號處的語句,將變量b的值賦給變量a

……;//完成省略號處的語句,將變量temp的值賦給變量b

……;//完成省略號處的語句,再次輸出變量的值,觀察其值是否交換了

#include<iostream.h>

voidmain()

doublea,b,temp;

coutvv”請輸入任意兩個數(shù)(以空格間隔輸入)://此語句是顯示輸入提

cin?a?b;//此語句是將用戶輸入的兩個數(shù)依次保存到a、b兩個變量中

cout?"a="?a<<""<<"b="?b?endl;//此語句是輸出a、b兩個變量

的值

temp=a;〃此語句是將變量a的值賦給變量temp,“="稱為賦值號

a=b;//完成省略號處的語句,將變量b的值賦給變量a

b=temp;//完成省略號處的語句,將變量temp的值賦給變量b

cout?"a="?a<<""v<"b="vvbvv“\n";//完成省略號處的語句,再

次輸出變量的值,觀察其值是否交換了

3.使用cout對象,在輸出窗口上顯示如下的圖形:

/*

/*X

XX

xxxxxxxxxxxxxx

XX

\*X

Pressanykeytocontinue

提示:在C++的字符常量中,?個反斜線字符是7,

#include<iostream.h>

voidmain()

(

cout?"\t/***\\"?endl;

cout?"/*"?endl;

cout?"/*\t\tX\tX"?endl;

cout?"|*\t\tX\tX"?endl;

cout?"|*\tXXXXXXXXXXXXXX"?endl;

cout?"|*\t\tX\tX"?endl;

cout?"\\*\t\tX\tX"?endl;

cout?"\\*"?endl;

cout?'W*7"?endl;

4?根據(jù)注釋補充下面的程序中省略號處的語句,運行程序,并理解其語句

及輸出的含義:

#include<iostream.h>

voidmain()

{……;〃定義一個整型變量a

……;//定義一個字符型變量b

b=//給變量b賦值為字符言

……;〃將變量b的值賦給變量a

cout?tla=M?a?endl;〃輸出變量a的值

……;〃輸出變量b的值

}

#include<iostream.h>

voidmain()

{inta;//定義一個整型變量a

charb;//定義一個字符型變量b

b='a';//給變量b賦值

a=b;//將變量b的值賦給變量a

cout?"a="vvavvendl;〃輸出變量a的值

cout?"b="vvbvvendl;〃輸出變量b的值

實驗二C++數(shù)據(jù)類型、操作符、表達(dá)式和語句

提示:每題建立一個C++源文件。當(dāng)完成一個題目后,使用菜單“文件”一〉“關(guān)閉工作區(qū)”,

再新建C++源文件做下一個題目。

1.在程序中定義整型變量乂上似、雙精度實數(shù)型變量y_double、字符型變

量m_char和布爾型變量n_bool,并請用戶輸入x_int、y_double和m_char三

個奏量的值,之后給變量n_bool賦值為(m_char>x_int),輸由■并觀察

(x_int/y_double)^(y_doub1e-m_char)以及n_bool的值,理解這些輸出的含

義。

例如:輸入111

#include<iostream.h>

voidmain()

{

intx_int;

doubley_double;

charm_char;

booln_bool;

coutvv"請輸入一個整數(shù)、一個實數(shù)和一個字符:

cin?x_int?y_double?m_char;

n_bool=m_char>x_int;

cout?x_int?7'?y_double?'='?x_int/y_double?endl;

cout?y_double?'-'?m_char?'='?y_double-m_char?encll;

cout?"n_bool="?n_bool?endl;

2.輸出一個字符(這個字符可以是在程序開始賦值,或由用戶輸入)的前

驅(qū)字符(ASCII編碼表上該字符前面的字符)、后繼字符(ASCII編碼表上該字

符后面的字符)及其ASCII碼值。

#include<iostream.h>

voidmain()

{

charqianqu,zifu,houji;

cout<〈"請輸入一個字符:";

cin?zifu;

qianqu=zifu-1;

houji=zifu+1;

cout?qianqu?''?zifu?''?houji?endl;

cout?int(qianqu)?''?int(zifu)?''?int(houji)?endl;

)

3.編寫程序:根據(jù)用戶輸入的球的半徑值,分別計算球的表面積、體積和

質(zhì)量,并輸出計算結(jié)果。

[提示]假設(shè)用戶輸入的球的半徑的單位是米,球的密度為7.8kg/nA球的表

4

面積的計算公式為s=4加2,球的體積的計算公式為u=2加3。其中”的值使

3

用3.14即可。

#include<iostream.h>

voidmain()

(

constdoublepi=3.14,midu=7.8;

doublebanjing,bmianji,tiji,zhiliang;

cout?"請輸入球的半徑值(米):

cin?banjing;

bmianji=4*pi*banjing*banjing;

tiji=bmianji*banjing/3;

zhiliang=tiji*midu;

coutvv"該球的表面積為"vvbmianji

平方米,體積為

vv"立方米,質(zhì)量為"vvzhiliangvv"千克。\n";

)

4.讓用戶輸入一個秒數(shù),編程實現(xiàn)將它轉(zhuǎn)換成小時、分鐘、秒來表示。例

如輸入7278秒,則輸出:2小時1分18秒。

#include<iostream.h>

voidmain()

intzongm,shi,fen,miao;

coutvc"請輸入一個秒數(shù):";

cin?zongm;

if(zongm>0)

shi=zongm/3600;

fen=zongm%3600/60;

miao=zongm%60;

coutvvshivv"小時,"

<<fen<<"分,"

?miao?"#\n";

)

實驗三分支選擇語句的應(yīng)用

提示:每題建立一個C++源文件。當(dāng)完成一個題目后,使用菜單“文件”一〉“關(guān)閉工作空

間”,再新建C++源文件做下一個題目。

1.用戶輸入兩個整數(shù)X和y,問:y是否是x的倍數(shù)?

編程輸出回答“是”或“不是”。

#include<iostream.h>

voidmain()

{

intx,y;

cout?"pleaseinputxandy:

cin?x?y;

if(y%X==O)

coutvvyv〈"是"v<x?"的倍數(shù)。\n";

else

coutvvyvc"不是"v<xvv"的倍數(shù)。\n";

)

2.編寫程序求解如下分段函數(shù)。

「X2-162,X<12

y=4x+30,12=<x<=70

L100,x>70

#include<iostream.h>

voidmain()

(

doublex,y;

coutvv”請輸入自變量x的值:";

cin?x;

if(x<12)y=x*x-162;

elseif(x<=70)y=x+30;

elsey=100;

cout?"y="?y?endl;

3.單位編排活動小組,30歲及以下的分在第一組,40歲的分在第二組,50

歲以上的分在第三組,其余年齡的分在第四組。假設(shè)王五輸入了自己的年齡,保

存在變量age中,那么他應(yīng)該分在第幾組?編程求解并輸出答案。

#include<iostream.h>

voidmain()

(

intage;

cout<〈"請輸入年齡:

cin?age;

if(age>=20&&age<70)

(

if(age<=30)

coutvv”應(yīng)分至第一組。\n";

elseif(age==40)

coutvv"應(yīng)分至第二組。\n";

elseif(age>50)

coutvv"應(yīng)分至第三組。\n";

else

coukv"應(yīng)分至第四組。\n";

else

cout<<"輸入年齡不合理!\n";

4.根據(jù)用戶輸入的整數(shù)(1~7代表星期一~星期日),編程輸出星期這一天

對應(yīng)的英文或中文名稱。例如,用戶輸入3,則輸出應(yīng)顯示為“Wednsday”或

“星期三”。

#include<iostream.h>

voidmain()

(

inta;

cout<<"請輸入星期(1~7)

cin?a;

switch(a){

case1:cout?"Monday\n";break;

case2:cout?"Tuesday\n";break;

case3:cout?"Wednesday\n";break;

case4:cout?"Thursday\n";break;

case5:cout?"Friday\n";break;

case6:cout?"Saturday\n";break;

case7:cout?"Sunday\n";break;

default:cout?"error\n";

)

)

5.已知標(biāo)準(zhǔn)體重的計算方法如下:

男性:標(biāo)準(zhǔn)體重(kg)=身高(cm)-100

女性:標(biāo)準(zhǔn)體重(kg)=身高(cm)-105

試編寫程序,由用戶輸入其性別Lm,代表男性,f代表女性)和身高,程

序計算并輸出其標(biāo)準(zhǔn)體重。

#include<iostream.h>

voidmain()

(

charxingbie;

intshengao,tizhong;

coutvv”請輸入性別('nV代表男性,甲代表女性):

cin?xingbie;

if((xingbie==,m')||(xingbie==T))

(

coutvv"請輸入身高(厘米):";

cin?shengao;

if(xingbie=='m')tizhong=shengao-105;

elsetizhong=shengao-100;

coutvv"標(biāo)準(zhǔn)體重為"vvtizhongvv"千克。\n";

6(選做).編程實現(xiàn)如下算術(shù)功能:用戶輸入兩個數(shù)字(可帶小數(shù))及一

個算術(shù)操作符或7'),若輸入的算術(shù)操作符不對,則輸出提示信息

(例如“無效的算術(shù)操作符,無法計算”),否則,即輸出相應(yīng)的算式及結(jié)果。

注意:計算除法時,除數(shù)不能為0。

#include<iostream.h>

voidmain()

(

doublea,b;

charc;

cout<〈"請輸入兩個數(shù)字(可帶小數(shù))和?個操作符(‘+‘、'」、‘*'或

cin?a?b?c;

switch(c)

casecout?a?"+"?b?"="?a+b?endl;break;

casecout?a?"-"?b?"="?a"b?endl;break;

casecout?a?"*"?b?"="?a*b?endl;break;

case

if(b!=O)

cout?a?"/"?b?"="?a/b?endl;

else

coutvv"除數(shù)不能為0!\n";

break;

default:coutvv"無效的算數(shù)操作符,無法計算!\n";

實驗四循環(huán)語句的應(yīng)用

提示:每題建立一個C++源文件。當(dāng)完成一個題目后,使用菜單'‘文件”一〉“關(guān)閉工作空

間”,再新建C++源文件做下一個題目。

1.設(shè)某縣2000年工業(yè)總產(chǎn)值為200億元,如果該縣預(yù)計平均年工業(yè)總產(chǎn)

值增長率為4.5%,那么多少年后該縣年工業(yè)總產(chǎn)值將超500億元?

(參考答案:21年)

#include<iostream.h>

voidmain()

(

doublechanzhi=200;

intnianshu=0;

while(chanzhi<=500)

(

nianshu++;

chanzhi*=1.045;

)

coutvv"經(jīng)過"<vnianshu<<"年后該縣年工業(yè)總產(chǎn)值將超過500億元。\n";

)

2.請在屏幕上顯示N行如圖所示的數(shù)值(即第i行為“i:i2i3w),其

中N是個常量,其值在程序運行之初確定。(要求:用for語句實現(xiàn))

#include<iostream.h>

voidmain()

(

constintN=10;

for(inti=1;i<=N;i++)

cout?i?":\t"?i*i?'\t'?i*i*i?endl;

3.編寫循環(huán)程序,判斷用戶輸入的一個數(shù)是正數(shù)還是負(fù)數(shù),當(dāng)輸入的數(shù)大

于0時,輸出“正數(shù)”;輸入的數(shù)小于0時,輸出“負(fù)數(shù)”;輸入的數(shù)為0時

結(jié)束程序。最后輸出這些數(shù)相加的總和。

(要求:用do-while語句實現(xiàn))

#include<iostream.h>

voidmain()

(

doublex;

do{

coutvv"請輸入一個數(shù):

cin?x;

if(x>0)coutvv"正數(shù)\n";

elseif(x<0)coutvc"負(fù)數(shù)\n";

}while(x!=0);

4.編程求解使不等式12+32+5?+.+n2climit成立的最大n值。其中l(wèi)imit

可以定義為常量或定義為變量。

(實驗數(shù)據(jù):lim計=10時n=1;limit=100時n=7;lim讓=65535時n=71)

#include<iostream.h>

voidmain()

(

intlimit;

coutvv"請輸入limit=";

cin?limit;

intn=1,s=0;

while(s<limit)

(

s+=n*n;

n+=2;

)

coutvv”使該不等式成立的最大n值為:"?(n-4)?endl;

}

5(選做).請用戶輸入20個字符,編程實現(xiàn)將其中的小寫字母轉(zhuǎn)換為大寫

字母后輸出。例如,若用戶輸入“VkQKOMs八Q,mb/;IGa;q",則應(yīng)輸出

“VKQKOMS]\Q,MB/;IGA;Q"。

提示:每一個英文字母的大寫和小寫的ASCII碼相差32。即,若字符型變

量ch中是一個小寫英文字母,則char(ch-32)即其對應(yīng)的大寫英文字母。

#include<iostream.h>

voidmain()

(

charch;

inti;

cout<<"請輸入20個字符:

i=0;

while(i<20)

(

cin?ch;

if(ch>='a'&&ch<='z')cout?char(ch-32);

elsecout?ch;

i++;

}

cout?endl;

}

6(選做).有20只猴子吃掉50個桃子,已知每只公猴能吃5個桃子、每

只母猴能吃4個桃子、每只小猴能吃2個桃子,編程求出這20只猴子中可以有

公猴、母猴、小猴各多少只。(答案:0515或2216)

#include<iostream.h>

voidmain()

(

intgong,mu,xiao;

for(gong=0;gong<=10;gong++)

for(mu=0;mu<=12;mu++)

(

xiao=20-gong-mu;

if(5*gong+4*mu+2*xiao==50)

coukv"公侯"vvgongvv"只,母猴只,小猴"vvxiaov〈"只\n";

實驗五函數(shù)的概念及應(yīng)用

1.編寫一個函數(shù)doublef(doublex),求解如下分段函數(shù)。

r-62(x<0)

JX5-62(0<=X<2)

y=|x-32(2<=x<38)

IJx-2(x>=38)

提示:求嘉的數(shù)學(xué)函數(shù)是pow(x,y),求平方根的數(shù)學(xué)函數(shù)是sqrt(x)o要使

用這些數(shù)學(xué)函數(shù),需要在文件開始添加預(yù)編譯指令#includevmath.h〉。

#include<iostream.h>

#include<math.h>

doublef(double);

voidmain()

(

doublex;

x=-28;

cout?"x="?x<<",y="?f(x)?endl;

x=0;

cout?"x="?x<<",y="?f(x)?endl;

x=1;

cout?"x="?x<<",y="?f(x)?endl;

x=15;

cout?"x="?x<<",y="?f(x)?endl;

x=75;

cout?"x="?x<<",y="?f(x)?endl;

}

doublef(doublex)

(

doubley;

if(x<0)y=-62;

elseif(x<2)y=pow(x,5)-62;

elseif(x<38)y=x-32;

elsey=sqrt(x-2);

returny;

2.對任意給定的兩個正整數(shù)m、n,求$=01!+n!。

要求先自定義一個C++函數(shù),實現(xiàn)求一個正整數(shù)的階乘,即double

jiecheng(intx),再在主函數(shù)中調(diào)用該自定義函數(shù),根據(jù)用戶輸入的整數(shù)m和n,

求出s的值。

#include<iostream.h>

doublejiecheng(int);

voidmain()

(

intm,n;

cout?"請輸入兩個正整數(shù):";

cin?m?n;

if(m>0&&n>0)

cout?m?"!+"?n?"!="?(jiecheng(m)+jiecheng(n))?endl;

else

cout?"您輸入的不是兩個正整數(shù)!\n";

)

doublejiecheng(intn)

{

doubles=1;

for(inti=1;i<=n;i++)

s*=i;

returns;

)

3.編寫一個函數(shù)boolsxh(intn),判斷一個3位正整數(shù)是否是水仙花數(shù),

若是返回true,否則返回false。并在主函數(shù)中使用該函數(shù)找出所有的水仙花數(shù)打

印在屏幕上。

說明:若一個3位正整數(shù)的各位數(shù)字的立方和等于這個整數(shù),則稱之為“水

仙花數(shù)”。例如:153是水仙花數(shù),因為153=1*1*1+5*5*5+3*3*3。

#include<iostream.h>

boolsxh(int);

voidmain()

{

cout?"水仙花數(shù):\n";

for(inti=100;i<1000;i++)

if(sxh(i))cout?i?"

cout?endl;

}

boolsxh(intn)

(

intge=n%10;

intshi=n/10%10;

intbai=n/100;

if(ge*ge*ge+shi*shi*shi+bai*bai*bai==n)

returntrue;

else

returnfalse;

4(選做).編程實現(xiàn),在屏幕上輸出如下所示由X組成的X形圖案。

#include<iostream.h>

voidmain()

(

constintLINE=9;

for(inti=1;i<=LINE;i++)

(

for(intj=1;j<=LINE;j++)

(

if(i==j||i==LINE+1-j)cout?'X';

elsecout?'

)

cout?endl;

}

5(選做).編寫一個函數(shù),實現(xiàn)在屏幕上打印出九九乘法表?;拘Ч?/p>

下圖1,同學(xué)們可自己作進(jìn)一步的美化,如下圖2。

提示:兩層循環(huán)嵌套使用。因?

1234789

圖1

11

2424

36369

481216

481216

10152025

10152025

61218243036

61218243036

7142128354249

7142128354249

8:816243240485664

816243240485664

9:91827364554637281

91827364554637281

#include<iostream.h>

#include<iomanip.h>

voidfirst();

voidsecond();

voidmain()

coutvv"基本九九表:\n\n";

first();

cout?endl;

coutvv"改進(jìn)后的九九表:\n\n";

second();

cout?endl;

)

//基本(圖1)

voidfirst()

inti,j;

for(i=1;i<10;i++)

for(j=1;j<=i;j++)

cout?setw(4)?i*j;

cout?endl;

)

)

//改進(jìn)(圖2)

voidsecond()

inti,j;

cout?setw(5)?T;

for(i=1;i<10;i++)

cout?setw(4)?i;

cout?endl;

for(i=1;i<43;i++)

cout?'-';

cout?endl;

for(i=1;i<10;i++)

cout<<setw(3)?i<<"

forO=1;j<=i;j++)

cout?setw(4)?i*j;

cout?endl;

}

實驗六流程控制語句、函數(shù)的綜合應(yīng)用

1.編寫一個函數(shù)boolsushu(intn),判斷用戶輸入的一個正整數(shù)是否是素

數(shù),若是返回true,否則返回falseo

提示:素數(shù)即質(zhì)數(shù),判斷n是否素數(shù)的方法是:分別用2、3、4、……、n-1去除n,

如果n能被整除,則表明n不是素數(shù),反之是素數(shù)。

說明:1不是素數(shù),2、3、5、7、11、13、。。。。。。等是素數(shù)。

#include<iostream.h>

boolsushu(intn);

voidmain()

(

intx;

coutvv"請輸入一個正整數(shù):

cin?x;

if(x>0)

{

if(sushu(x))coutvvxvv"是素數(shù)'n";

elsecoutvvxvv"不是素數(shù)\n";

}

elsecoutvv"您輸入的不是正數(shù)!\n";

boolsushu(intn)

(

if(n<2)returnfalse;

inti=2;

while(i<n){

if(n%i==O)returnfalse;

i++;

returntrue;

}

2.編寫一個函數(shù)求下式的和:

s=a+aa+aaa+...+aa...a

其中a是1~9中的?個數(shù)字(aaa的含義為100*a+10*a+a),項數(shù)為n,a和

n皆為函數(shù)的參數(shù)。

編寫主函數(shù),調(diào)用上述函數(shù)分別求出a為1時12項的和、a為5時8項的和,

以及a為9時13項的和。

z'C:\DocumentsandSettings

a=17n=1207,s=1.23457e+011

a=5,n=8時,s=6.17284e+007

a=9,n=13時,s=l-llllle+013

Pressanykeytocontinue.

提示:假設(shè)和式中的各項為bO,bl,b2,…bn,則可知bO=a,bl=bOxlO+a,

b2=blxl0+a,......。即每一項由前一項乘以10加a遞推得到。

#include<iostream.h>

doublef(inta,intn);

voidmain()

(

inta=1,n=12;

cout?"a="?a<<",n="?n?"Bt,s="?f(a,n)?endl;

a=5,n=8;

cout?"a="?a<<",n="vvnv<"時,s="?f(a,n)?endl;

a=9,n=13;

cout?"a="?a<<",n="?n?"fft,s="?f(a,n)?endl;

}

doublef(inta,intn)

(

if(a<=0||a>9||n<=0)return0;

inti=0;

doubleb=0,s=0;

while(i<n)

(

b=b*10+a;

s=s+b;

i++;

}

returns;

}

3.編寫函數(shù)一,判斷一個年份是否是閏年,若是返回true,否則返回false。

編寫函數(shù)二,求一個月有多少天,輸入?yún)?shù):年、月;輸出數(shù)據(jù):該月的天數(shù)。

提示:第二個函數(shù)需要調(diào)用第一個函數(shù)判斷是否是閏年,從而確定二月是28天

還是29天。

編寫主函數(shù),調(diào)用上述函數(shù),打印用戶指定的日期(年、月、日)是該年的

第兒天。

#include<iostrearr).h>

boolrunnian(int);

inttianshu(int,int);

voidmain()

(

intnian,yue,ri;

cout?"請輸入日期(年月日):

cin?nian?yue?ri;

if(nian>0&&yue>=1&&yue<=12)

(

if(ri>=1&&ri<=tianshu(nian,yue))

(

ints=ri;

inti=yue-1;

while(i>0)

(

s+=tianshu(nian,i);

i-;

}

cout<<"這是該年第天。\n";

)

else

coutvv"輸入日期有誤!\n";

)

else

cout?"輸入年月不合理!\n";

}

boolrunnian(intn)

(

if(n%4==O&&n%100!=0||n%400==0)

returntrue;

else

returnfalse;

}

inttianshu(intnian,intyue)

(

switch(yue)

(

case1:

case3:

case5:

case7:

case8:

case10:

case12:return31;

case2:

if(runnian(nian))return29;

elsereturn28;

case4:

case6:

case9:

case11:return30;

)

)

4.(選做)編寫一個函數(shù)voidshapeV(intn=5),實現(xiàn)在屏幕上輸出如下所

示由'@'組成的V形圖,其中圖案的層數(shù)根據(jù)參數(shù)n確定,形參n的默認(rèn)值為5。

@@@@@@@@@

@@@@@@@

@@@@@

@@@

@

并編寫如下主函數(shù)測試上述函數(shù)的功能:

voidmain()

(

shapeV();

shapeV(1);

shapeV(11);

)

#include<iostream.h>

voidshapeV(intn=5);

voidmain()

{

shapeV();

shapeV(1);

shapeV(11);

}

voidshapeV(intn)

{

for(inti=1;i<=n;i++){

for(intj=1;j<=2*(n-i)+1;j++)cout?'@';

cout?endl;

)

)

/*從鍵盤上輸入一個三角形中三條邊a、b、c的長度,請利用求面積公式

(其中s=(a+b+c)/2)求出三角形的面積。

*/

ttinclude<iostream.h>

#include<math.h>

voidmainO

(

doublea,b,c,s,area;

cout<〈"請輸入三角形的三條邊:”;

cin?a?b?c;

if(a>0&&b>0&&c>0&&a+b>c&&b+c>a&&c+a>b){

s=(a+b+c)/2;

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

cout?/zarea=*?area?endl;

)

else{

cout<<“輸入有誤:三角形兩邊之和不大于第三邊!”《endl;

)

/*將1-100之間奇數(shù)順序累加存入n中,直到其和等

于或大于200為止

*/

#include<iostreajn.h>

voidmainO

(

intm,n=0;

for(m=l;m<=100&&n<200;m+=2)

n+=m;

cout?z,n=/r?n?endl;

)

/*編程求使不等式1+9+25+49+81+....<1000成立的最大n值。

*/

#include<iostream.h>

voidmainO

(

intn;

for(inti=l,s=0;s<1000;i+=2)

s+=i*i;

n=i-4;

cout?〃使該不等式成立的最大n值為:"?n?endl;

)

/*已知一個正整數(shù)m,求其各位數(shù)字之和,保存到變量s中。

*/

??include<iostream.h>

voidmain()

{

intm,s=0,n;

m=13755218;

while(m!=0)

(

n=m%10;

s+=n;

m=m/10;

}

cout?s?endl;

)

/*有一個數(shù)列,它的第一項為0,第二項為I,以后每一項都是它的前兩項之和,編程

計算出此數(shù)列的第23項*/

#include<iostream.h>

voidmain()

intjieguo;

inta1=0,a2=l,a3;

for(inti=3;i<=23;i++)

(

a3=al+a2;

al=a2;

a2=a3;

)

jieguo=a3;

cout<〈”該數(shù)列第23項為:"<<jieguo〈<endl;

)

/*求多項式1!+2!+3!+……+15!的值并

存入變量out中.

*/

^include<iostream.h>

voidmainO

(

intn=l,s=0;

doubleout=0;

for(inti=l;i<=15;i++)

(

n=n*i;

s+=n;

}

cout?s?endl;

out=s;

)

/*打印水仙花數(shù)及個數(shù)n(水仙花數(shù)是三位數(shù),每

位數(shù)字的立方和等于這個數(shù)本身)

*/

#include<iostream.h>

voidmainO

(

intm,n=0,a,b,c;

for(m=100;m<=999;m++)

a=m/100;

b=m%100/10;

c=m%100%10;

if(m==a*a*a+b*b*b+c*c*c)

n++;

/*定義一個C++函數(shù):分段函數(shù)doublef(double)o

*/

#include<iostream.h>

doublef(d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論