C++题库大全Word文件下载.docx
《C++题库大全Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++题库大全Word文件下载.docx(136页珍藏版)》请在冰豆网上搜索。
c3<
c4<
return0;
}
方法二:
stdio.h>
{charc;
while((c=getchar())!
='
\n'
{
c+=4;
if(c>
c-=26;
printf("
%c"
c);
}
第2题:
输入圆的半径和圆柱的高,依次输出圆周长、圆面积、圆球表面积、圆柱体积(以空格分隔,π取3.14)。
1.5
3
9.42
7.065
28.26
21.195
{floatr,h,c,s1,s2,v;
r>
h;
c=3.14*r*2;
s1=3.14*r*r;
s2=4*3.14*r*r;
v=s1*h;
c<
"
"
s1<
s2<
v;
第3题:
输入一个华氏温度,要求输出摄氏温度。
公式为:
c=5/9*(F-32)。
100
37.7778
{floatc,f;
scanf("
%f"
&
f);
c=5*(f-32)/9;
printf("
第4题:
有一分段函数如下,请编写程序,输入x值,输出y值。
-2
14.5
1
0.393654
6
0.848872
math.h>
{floatx,y;
x);
if(x<
0)
y=3*x*x-5/x;
elseif(x<
5)
y=1/(2+cos(x));
else
y=sqrt(sin(x)+1);
y);
第5题:
输入3个整数,输出其中最大数。
132
3
{inta,b,c,max;
cin>
a>
b>
c;
max=a;
if(max<
b)
max=b;
c)
max=c;
cout<
max;
第6题:
计算表达式ax3+bx2+cx+d的值。
输入x,a,b,c,d,输出计算结果。
2.23456
68.304
{floatx,a,b,c,d,e;
x>
c>
d;
e=a*x*x*x+b*x*x+c*x+d;
e;
第7题:
计算表达式的值。
输入a,b,c,d,e,输出计算结果。
12345
0.347826
{floata,b,c,d,e,y;
d>
y=a*b/(c/d+e);
y;
第8题:
输入两个整数,将它们交换后输出。
12
21
{inta,b,c;
b;
c=a;
a=b;
b=c;
a<
第9题:
输入三角形的三条边长a,b,c(要求能构成三角形),求三角形面积。
3.24.45.6
7.02624
{floata,b,c,p,s;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
s;
第10题:
输入大写字母,输出对应的小写字母。
B
b
{chara;
a;
a=a+32;
}
第11题:
古代数学问题"
鸡兔同笼"
。
鸡与兔共a只,鸡与兔的总脚数为b,输入a,b,求鸡兔各几只。
310
12
{inta,b,c,d;
c=(4*a-b)/2;
d=(b-2*a)/2;
第12题:
输入一个四位数,将其加密后输出。
方法是将该数每一位的数字加9,然后除以10取余作为该位上的新数字,最后将千位上的数字和十位上的数字互换,组成加密后的新四位数。
1368
5207
{inta,g,s,b,q,a1;
g=a%10;
s=(a/10)%10;
b=(a/100)%10;
q=(a/1000)%10;
g=(g+9)%10;
s=(s+9)%10;
b=(b+9)%10;
q=(q+9)%10;
a1=g+q*10+b*100+s*1000;
a1;
第13题:
0.5
15
34
x;
1)
y=x;
if(x>
=1&
&
x<
10)
y=2*x-1;
=10)
y=3*x-11;
第14题:
输入一个不多于5位的正整数,要求分3行输出以下信息,第1行输出它是几位数;
第2行从高位到低位依次输出每一位数字(以空格分隔,下同);
第3行从低位到高位依次输出每一位数字。
32100
5
32100
00123
40
2
4
0
04
{intm,g,s,b,q,w,ws;
m;
ws=log10(m)+1;
g=m%10;
s=m/10%10;
b=m/100%10;
q=m/1000%10;
w=m/10000;
ws<
endl;
switch(ws)
{case5:
w<
;
case4:
q<
case3:
b<
case2:
s<
case1:
g;
g<
w;
break;
q;
}
return1;
{intn,ws,i,p,n1;
n;
ws=(int)log10(n)+1;
//n的位数
p=(int)pow(10,ws-1);
n1=n;
\n"
for(i=1;
i<
=ws;
i++)
n/p%10<
p/=10;
n%10<
n/=10;
第15题:
输入五级制成绩(A~E),输出相应的百分制(0~100)区间。
要求用switch语句。
五级制对应的百分制成绩区间为:
A(90~100)、B(80~89)、C(70~79)、D((60~69))、E(0~59)。
80~89
{charg;
switch(g)
case'
A'
:
90~100"
B'
80~89"
C'
70~79"
D'
60~69"
E'
0~59"
return0;
第16题:
输入三角形的三条边a、b、c,如果能构成三角形,求三角形面积和周长,如果不能构成三角形则输出Error。
4.55.66.7
12.487516.8
1
23
Error
{floata,b,c,d,e,s;
if((a+b)<
=c||(b+c)<
=a||(a+c)<
=b)
{cout<
Error"
{d=a+b+c;
e=d/2;
s=sqrt(e*(e-a)*(e-b)*(e-c));
第17题:
编写程序,输入一个数,判断其是否是3或7的倍数,分4种情况输出:
是3的倍数但不是7的倍数时输出1,不是3的倍数但是7的倍数时输出2,是3的倍数也是7的倍数时输出3,不是3的倍数也不是7的倍数时输出4。
21
3
{inta;
if(a%3==0)
if(a%7==0)
cout<
3;
else
1;
2;
4;
第18题:
企业发放的奖金根据利润提成。
利润P低于或者等于10万元时,奖金可提成10%;
利润P高于10万,低于20万时(100000<
P<
=200000<
span>
),其中10万元按照10%提成,高于10万元的部分,可提成7.5%;
200000<
=400000时,其中20万元仍按上述办法提成(下同),高于20万元的部分按照5%提成;
400000<
=600000<
时,高于40万元的部分按照3%提成;
600000<
=1000000<
时,高于60万元的部分按照1.5%提成;
P>
1000000时,超过100万的部分按照1%提成,从键盘输入当月利润P,求应发放奖金总数。
234000
19200
{floatp,b;
p;
if(p<
=100000)
b=p*0.1;
elseif(p<
=200000)
b=10000+(p-100000)*0.075;
=400000)
b=10000+7500+(p-200000)*0.05;
=600000)
b=10000+7500+10000+(p-400000)*0.03;
=1000000)
b=10000+7500+10000+6000+(p-600000)*0.015;
b=10000+7500+10000+6000+6000+(p-1000000)*0.01;
第19题:
输入收入salary,输出应交的个人所得税tax。
计算公式:
tax=rate*(salary-850),其中rate是税率,与收入有关。
2000.5
115.05
{floatsalary,tax;
salary;
if(salary<
=850)
tax=0;
elseif(salary<
=1350)
tax=(salary-850)*0.05;
=2850)
tax=(salary-850)*0.1;
=5850)
tax=(salary-850)*0.15;
tax=(salary-850)*0.2;
tax;
第20题:
编写程序计算某年某月的天数。
输入年份year和月份month,输出该月份的天数。
20122
29
{inty,m;
y>
if(m!
=2)
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
31;
30;
if((y%4==0&
y%100!
=0)||(y%400==0))
29;
28;
第21题:
一个表达式x()y==z的值为真,其中x,y,z都是整数。
括号内可能出现的运算符包括:
+、-、*、/、%,请根据输入的x,y,z的值,输出括号内应填写的运算符(数据保证只有一个运算符满足条件)。
292123415
+
{intx,y,z;
z;
if(x+y==z)
+"
if(x-y==z)
-"
if(x*y==z)
*"
if(x/y==z)
/"
if(x%y==z)
%"
第22题:
输入两个整数m和n,判断m能否被n整除,若不能整除,输出NO,否则输出YES。
63
YES
{intm,n;
m>
if(m%n==0)
YES"
NO"
第23题:
-1
-1.84147
6.5
23204.8
12
0.048737
if(x<
y=x*x+2/x+sin(x);
elseif(x<
y=2*x*x*x*x*x-cos(x);
y=1/sqrt(3*x*x-11);
第24题:
输入坐标系中三个点A、B、C的坐标,要求:
①判断这三个点能否构成一个三角形,如果不能构成三角形,则输出“No”,否则,输出“Yes”。
如果能构成三角形②求△ABC的面积;
③如果△ABC是直角三角形,则输出“Right”;
如果是锐角三角形,则输出“Acute”;
如果是钝角三角形,则输出“Obtuse”。
001020
NO
00
30
YES
Right
#include<
{floata,b,c,d,s,p,t,x1,y1,x2,y2,x3,y3;
x1>
y1>
x2>
y2>
x3>
y3;
a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
b=sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
c=sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
if(a<
d=b;
b=a;
a=d;
d=c;
if(a>
=b+c)
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
t=(c*c+b*b-a*a)/2*b*c;
if(t==0)
Right"
elseif(t<
Obtuse"
else
Acute"
第25题:
输入年份year,判断是否是闰年,若不是,输出NO,否则输出YES。
2012
{intyear;
year;
if(year%4==0&
year%100!
=0||year%400==0)
第26题:
设计一简易计算器,计算两个正整数a、b的和、差、积、商和余数。
输入格式为:
aopb,其中,a、b为要计算的两个正整数,op为算术运算符(包括+、-、*、/、%),输出计算的结果。
3+5
8
{inta,b;
charop;
op>
switch(op)
+'
a+b;
-'
a-b;
*'
a*b;
/'
a/b;
%'
a%b;
第27题:
输入两个正整数m和n,编写程序求其最大公约数和最小公倍数。
1525
575
{intm,n,m1,n1,r;
m1=m;
n1=n;
r=m%n;
while(r!
=0)
m=n;
n=r;
r=m%n;
n<
m1*n1/n;
第28题:
输出所有大于给定数n的“水仙花数”,n由键盘输入。
所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。
例如,153是一个“水仙花数”,因为153=13+53+33。
100
153370371407
{intn,g,s,b;
for(n++;
1000;
n++)
g=n%10;
s=(n/10)%10;
b=(n/100)%10;
if(n==g*g*g+s*s*s+b*b*b)
第29题:
判断一个数是否为“水仙花数”,如果是则输出YES,否则输出NO。
153
YES
YES"
第30题:
一个数恰好等于它的因子之和,这个数就称为“完数”。
例如,6的因子为1、2、3,并且6=1+2+3,因此6是“完数”。
编写程序找出小于给定数n的所有“完数”,n由键盘输入。
1000
628496
#i