实验2 控制结构Word格式文档下载.docx
《实验2 控制结构Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《实验2 控制结构Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
![实验2 控制结构Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-12/13/8b35742a-98fe-48c3-8344-37798876e6f9/8b35742a-98fe-48c3-8344-37798876e6f91.gif)
=90)
ThedegreeisA"
elseif(score>
=80)
cout<
ThedegreeisB"
=70)
ThedegreeisC"
=60)
ThedegreeisD"
else
ThedegreeisE"
}
elsecout<
YourinputisWrong!
return0;
2、输入一个年份,判断是否为闰年。
(提示:
闰年应该是能被4整除不能被100整除,或者能被400整除的年份)
voidmain()
intyear;
Pleaseinputtheyear:
year;
if((year%4==0&
year%100!
=0)||(year%400==0))
year<
isaleapyear!
isnotaleapyear!
(截图程序在上面)
3、某商店五一购物打折。
每位顾客一次购物:
①满1000元,打九折;
②满2000元,打八折;
③满3000元,打七折;
④满4000元,打六折;
⑤5000元,打五折;
编写程序,输入购物款,输出实收款。
iostream.h>
{
intmoney;
Plaseinputmoney="
;
money;
if(money>
=1000)
switch(money/1000)
{
case1:
money="
money*0.9<
break;
case2:
money*0.8<
case3:
money*0.7<
case4:
money*0.6<
default:
money*0.5<
}
money<
4.运输公司对用户计算运费。
路程(s)越远,每公里运费越低。
标准如下:
s<250km没有折扣
250≤s<5002%折扣
500≤s<10005%折扣
1000≤s<20008%折扣
2000≤s<300010%折扣
3000≤s15%折扣
设每公里每吨货物的基本运费为p(price的缩写),货物重为w(wright的缩写),距离为s,折扣为d(discount的缩写),则总运费f(freight的缩写)的计算公式为:
f=p*w*s*(1-d)。
编程输入基本运费、货物重、托运距离,输出用户需交的总运费。
floatp,w,s,f;
请输入基本费用,货物重和托运距离:
p>
w>
s;
if(s<
250)
需交的总运费f="
p*w*s<
elseif(s>
=250&
s<
500)
p*w*s*(1-0.02)<
元"
=500&
1000)
p*w*s*(1-0.05)<
=1000&
2000)
p*w*s*(1-0.08)<
=2000&
3000)
p*w*s*(1-0.1)<
=3000)
p*w*s*(1-0.15)<
5、编写程序由键盘输入年、月,输出该年该月的天数。
intyear,month,day;
boolleap;
Inputyearandmonth:
year>
month;
if((year%400==0)||(year%4==0&
=0))
leap=true;
leap=false;
month=(month%13==0?
1:
month%13);
switch(month)
case5:
case7:
case8:
case10:
case12:
{
day=31;
break;
}
case6:
case9:
case11:
day=30;
if(leap)
day=29;
else
day=28;
break;
days:
day<
6、设计一个计算器程序,能完成简单的+、-、*、/、%运算。
inta,b,c;
请输入任意两个数;
a>
b;
if(a-b!
c=((a+5)%b+5)/5-5;
c="
c<
c=a=b="
a<
7从键盘输入任意多个整数(-999为结束标志),计算其中正数之和。
intx,y,sum=0;
请输入数据:
x;
for(;
x!
=-999;
)
if(x>
0)
y=x;
sum+=y;
else(x<
0&
=-999);
继续输入数据:
cin>
sum="
sum<
8、求1+22+42+62……+502的值。
inti=0,sum=1,s;
while(i<
=50)
s=i*i;
sum=sum+s;
++i,++i;
9.编程序打印出2~99之间的所有素数,每输出5个数即换行。
inti,n,k=0;
for(n=2;
n<
=99;
n++)
for(i=2;
i<
=n/2;
i++)
if(n%i==0)
break;
if(i>
n/2)
'
\t'
k++;
if(k%5==0)
cout<
10、编写程序打印如下乘法九九表
⑴
iomanip.h>
inti,j;
for(i=1;
=9;
setw(4)<
i;
=36;
-'
for(i=1;
for(j=1;
j<
j++)
i*j;
⑵
=i;
⑶
inti,j,n;
for(n=1;
"
for(j=i;
11、编程序打印一个如图3-2所示的数字金字塔:
iomanip>
inti,j,k,z;
=9-i;
for(k=1;
k<
k++)
setw
(2)<
k;
for(z=i-1;
z>
=1;
z--)
z;
}return0;
12、编写程序打印如图3-1所示蝶形图形。
BBBBBBBBBBBBBBBBBBBBB"
BBBBBBBBBBBBBBB"
BBBBBBBBB"
BBB"
13、编程求方程ax2+bx+c=0的解,其中的a,b,c由键盘输入。
cmath>
floatx1,x2;
请输入a,b,c的值:
b>
c;
if(a==0&
b!
x1=x2=float(c)/b;
x1=x2="
x1<
elseif((a!
=0)&
(b*b-4*a*c>
x1=(-b+sqrt(b*b-4.0*a*c))/(2*a);
x2=(-b-sqrt(b*b-4.0*a*c))/(2*a);
x1="
\t"
x2="
x2<
没有实数根!
return0;
14、编写程序用公式:
计算e的近似值。
直到最后一项小于给定的精度。
math.h>
floatn=1,sum=0,m=1,x;
intk,j=1;
请输入精确的位数:
while(m>
=x)
sum+=m;
n++;
for(k=1;
=n;
j*=k;
m=1.0/j;
15、译密码。
为使电文保密,往往按一定规律将电文转换成密码,收报人再按约定的规律将其译回原文。
例如,可以按以下规律将电文变成密码:
将字母A变成字母E,a变成e,即变成其后的第4个字母,W变成A,X变成B,Y变成C,Z变成D。
见图3.20。
字母按上述规律转换,非字母字符不变。
如"
Wonderful!
转换为"
Asrhivjyp!
。
输入一行字符,要求输出其相应的密码。
#include<
intmain()
{charc;
while((c=getchar())!
='
\n'
{if((c>
a'
&
c<
z'
)||(c>
A'
Z'
))
{c=c+4;
if(c>
+4||c>
)c=c-26;
cout<
return0;
}
16、编程完成课本69页第3题的⑵、⑷、⑸、⑺、⑻、⑼、⑾
(2)
for(intn=100;
=200;
if(n%3!
=0&
n%7!
(4)
constintcock=20,hen=33,chick=100;
intj,k;
for(j=0;
=hen;
for(k=0;
=chick;
if((5*(100-j-k)+3*j+k/3)==100&
k%3==0&
j+k<
=100)
cout<
鸡翁、鸡婆、鸡锥各有:
100-j-k<
return0;
(5)
for(inti=0;
26;
char('
+i);
for(i=0;
-i);
(7)
longn,rn(0);
n;
10;
if(n>
rn=rn*10+n%10;
n=n/10;
rn<
(8)
inttmp,n,rn(0);
tmp=n;
if(tmp>
{rn=rn*10+tmp%10;
tmp=tmp/10;
}else
if(n==rn)
Palindromenumber!
Notapalindromenumber!
(9)
doublePI(0);
for(inti=1;
1.0/(i*2)>
1e-8;
PI=PI+1.0/(i*2-1)*(i%2?
-1);
PI=PI*4;
steps:
\tPI="
PI<
(11)
intweight,distance,fee;
Inputweightanddistance:
weight>
distance;
if(weight<
=15)
fee=5;
elseif(weight<
=30)
fee=9;
=45)
fee=12;
fee=14+distance/1000;
fee=15+distance/1000;
fee="
fee<
17、编程求解。
若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少条母牛。
(选作题)
intyear,sum,n;
Theyearis"
for(n=1;
=year;
if(n<
4)
sum=1;
elseif(n<
8)
sum++;
sum+=n-6;
After"
years,thecows'
ssnmare:
\n"
18、有一对兔子,从第三个月起每个月生一对兔子,小兔子从第三个月起每个月又生一对兔子,假设所有兔子都不死,编程序计算每个月的兔子是多少对(求20个月)。
(不会)