![c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第1頁](http://file4.renrendoc.com/view11/M01/27/05/wKhkGWWPoxSAK8vhAAIZC2bA1qs951.jpg)
![c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第2頁](http://file4.renrendoc.com/view11/M01/27/05/wKhkGWWPoxSAK8vhAAIZC2bA1qs9512.jpg)
![c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第3頁](http://file4.renrendoc.com/view11/M01/27/05/wKhkGWWPoxSAK8vhAAIZC2bA1qs9513.jpg)
![c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第4頁](http://file4.renrendoc.com/view11/M01/27/05/wKhkGWWPoxSAK8vhAAIZC2bA1qs9514.jpg)
![c基礎(chǔ)練習(xí)題及解答細(xì)節(jié)全解_第5頁](http://file4.renrendoc.com/view11/M01/27/05/wKhkGWWPoxSAK8vhAAIZC2bA1qs9515.jpg)
版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國兒童游戲行業(yè)市場運營現(xiàn)狀及投資規(guī)劃研究建議報告
- 高性能儲能系統(tǒng)采購合同
- 年產(chǎn)1萬噸罐頭、50噸果膠可行性研究報告建議書
- 關(guān)于簽訂可行性研究報告委托合同的請示
- 文化傳媒節(jié)目制作合同
- 裝修半包合同
- 二零二四年品牌銷售顧問團(tuán)隊建設(shè)合同3篇
- 二零二四年度互聯(lián)網(wǎng)企業(yè)文員招聘與網(wǎng)絡(luò)安全合同3篇
- 二零二四年度醫(yī)藥產(chǎn)品研發(fā)合同
- 二零二四年度農(nóng)業(yè)科技項目履約保函合同范本3篇
- 2024年山東省泰安市高考語文一模試卷
- 全國助殘日關(guān)注殘疾人主題班會課件
- TCL任職資格體系資料HR
- 《中國古代寓言》導(dǎo)讀(課件)2023-2024學(xué)年統(tǒng)編版語文三年級下冊
- 五年級上冊計算題大全1000題帶答案
- 工程建設(shè)行業(yè)標(biāo)準(zhǔn)內(nèi)置保溫現(xiàn)澆混凝土復(fù)合剪力墻技術(shù)規(guī)程
- 液壓動力元件-柱塞泵課件講解
- 人教版五年級上冊數(shù)學(xué)脫式計算100題及答案
- 屋面細(xì)石混凝土保護(hù)層施工方案及方法
- 2024年1月山西省高三年級適應(yīng)性調(diào)研測試(一模)理科綜合試卷(含答案)
- 110kv各類型變壓器的計算單
評論
0/150
提交評論