C++编程练习题及答案docWord文件下载.docx
- 文档编号:17004568
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:35
- 大小:24.95KB
C++编程练习题及答案docWord文件下载.docx
《C++编程练习题及答案docWord文件下载.docx》由会员分享,可在线阅读,更多相关《C++编程练习题及答案docWord文件下载.docx(35页珍藏版)》请在冰豆网上搜索。
n++;
if(m>
n)
System.out.println(m);
else
System.out.println(n);
3.编程,求全部水仙花数。
所谓水仙花数是指一个三位数,其各位数字立方的和等于该数。
如:
153=13+53+33。
publicclassProg3{
inta,b,c;
for(a=1;
a<
=9;
a++)
for(b=0;
b<
b++)
for(c=0;
c<
c++)
if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)
System.out.println(a*100+b*10+c);
}
4.请编制程序判断输入的正整数是否既是5又是7的整倍数。
若是,则输出yes;
否则输出no。
publicclassProg4{
inti=cin.nextInt();
if(i%5==0&
i%7==0)
System.out.print("
yes"
);
no"
5.请编程实现:
对于给定的一个百分制成绩,输出相应的五分制成绩。
设:
90分以上为‘A’,80—89分为‘B’,70—79分为‘C’,60—69分为‘D’,60分以下为‘E’。
publicclassProg5{
intm=cin.nextInt();
=60&
m<
=69)
D"
if(m>
=70&
=79)
System.out.print("
C"
if(m>
=80&
=89)
System.out.print("
B"
else
if(m>
=90)
System.out.print("
A"
else
E"
6.输入一行字符,将其中的字母变成其后续的第3个字母,输出。
例:
a→d,x→a;
y→b;
编程实现。
publicclassProg6{
char[]zimu=newchar[]{'
a'
'
b'
c'
d'
e'
f'
g'
h'
i'
j'
k'
l'
m'
n'
o'
p'
q'
r'
s'
t'
u'
v'
w'
x'
y'
z'
};
for(intj=0;
j<
j++)
for(inti=0;
29;
{
if(str.charAt(j)==zimu[i])
{
System.out.println(zimu[i+3]);
break;
}
}
7.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词.例如:
1转换成Monday,7转换成Sunday.
publicclassProg7{
请输入任意一个1~7之间的整数\n"
if(m==1)
Monday"
else
if(m==2)
Tuesday"
if(m==3)
Wensday"
if(m==4)
Thuesday"
if(m==5)
Friday"
else
if(m==6)
System.out.print("
Saturday"
else
Sunday"
8.输入三角形的三边a,b,c,判断能否构成三角形.若能,计算面积.
publicclassProg8{
请输入三个整数\n"
inta=cin.nextInt();
intb=cin.nextInt();
intc=cin.nextInt();
if(a+b<
c||a+c<
b||c+b<
a)
不能构成三角形\n"
intl=a+b+c;
System.out.print(l);
9.编程序,输入a,b,c,求方程ax2+bx+c=0的解。
publicclassProg9{
if(a==0)
System.out.println(-c/b);
elseif(b*b-4*a*c>
=0)
doublex1=(-b+Math.pow(1/2,b*b-4*a*c))/(2*a);
doublex2=(-b-Math.pow(1/2,b*b-4*a*c))/(2*a);
System.out.println(x1);
System.out.print(x2);
elseSystem.out.print("
无解"
10.计算出前20项fibonacci数列,要求一行打印5个数.
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
如果所有兔都不死,那么一年以后可以繁殖多少对兔子?
我们不妨拿新出生的一对小兔子分析一下:
第一个月小兔子没有繁殖能力,所以还是一对;
两个月后,生下一对小兔总数共有两对;
三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是三对;
……
依次类推可以列出下表:
经过月数
1
2
3
4
5
6
7
8
9
10
11
12
幼仔对数
13
21
34
55
89
144
成兔对数
233
总体对数
377
publicclassProg10{
intn=cin.nextInt();
inta=0,b=1,c=1;
if(n==1){System.out.println(a);
System.out.println(b);
System.out.println(c);
for(inti=2;
=n;
a=b;
b=c;
c=a+b;
System.out.println("
幼崽数"
+a+"
成年兔子书"
+b+"
总数"
+c);
11.输出100~10000之间个位数为3的所有素数。
publicclassProg11{
for(inti=103;
10000;
i=i+10)
{
booleanflag=true;
for(intj=2;
i/2;
if(i%j==0)
{flag=false;
break;
if(flag==true){System.out.println(i);
}
12.百钱买百鸡问题:
公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种买法.
publicclassProg12{
intm=0;
for(inta=0;
100;
for(intb=0;
for(intc=0;
if(5*a+3*b+1/3*c==100&
a+b+c==100)
m++;
一百元买一百只鸡有"
+m+"
种买法"
13.请编制程序要求输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。
publicclassProg13{
请输入两个整数\n"
if(a*a+b*b>
100)
System.out.print(a*a+b*b);
System.out.print(a+b);
14.编程实现:
对键盘输入的任意一个四位正整数,计算各位数字平方和。
2345,则:
计算22+32+42+52
publicclassProg14{
请输入任意一个四位正整数\n"
intsum=0;
sum=(a/1000*a/1000)+((a/100)%10*(a/100)%10)+((a/10%100%10)*(a/10%100%10))+((a%10)*(a%10));
System.out.print(sum);
15.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程.
publicclassProg15{
intm=0,sum=1020;
do{
sum=sum/2-2;
m++;
}while(sum>
=0);
System.out.print(m+"
天以后能卖完"
16.编程,输出200以内所有完全平方数C(满足C2=A2+B2)及其个数.
publicclassProg16{
for(intC=1;
C<
200;
C++)
for(intA=1;
A<
=200;
A++)
for(intB=1;
B<
B++)
if(A*A+B*B==C*C)
{System.out.println(C);
A=201;
B=201;
m++;
个数为:
"
+m);
17.设N是一个四位数,它的9倍恰好是其反序数(例如:
123的反序数是321),编程,输出所有满足条件的N。
packageeasy;
publicclassThe17{
staticlongs,M;
for(longN=1009;
N<
=1109;
N=N+10){
M=9*N;
s=0;
while(M>
0){
s=s*10+M%10;
M=M/10;
if(N==s)
System.out.println(s);
18.编程,输出555555的约数中最大的三位数。
publicclassThe18th{
doublea=555555;
longb=0;
//long[]yueShu=newlong[555555];
for(longi=1;
=555555;
i++){
if(a%i==0&
i>
99&
1000){
while(i>
b){
b=i;
System.out.println(b);
19.编程,输出所有个位数为6且能被31整除的五位数及其个数。
publicclassThe19th{
for(longi=10006;
=99996;
i=i+10){
if(i%31==0){
System.out.println(i);
20.编写程序,输入两个整数,和+、-、*、/、%之中的任意一个运算符,输出计算结果.
//importjava.util.InputMismatchException;
publicclassThe20th{
staticScannercin=newScanner(System.in);
Scannercin1=newScanner(System.in);
intd1,d2;
Stringstr=newString("
d1=cin.nextInt();
d2=cin.nextInt();
//System.out.println(d1);
//System.out.println(d2);
str=cin1.nextLine();
//System.out.println(str);
//System.out.println(str.charAt(0));
switch(str.charAt(0)){
case'
+'
:
{
System.out.println(d1+d2);
break;
-'
System.out.println(d1-d2);
*'
System.out.println(d1*d2);
/'
System.out.println(d1/d2);
}
/*staticintadd(inta,intb){
returna+b;
staticintsub(inta,intb){
returna-b;
staticintmultiply(inta,intb){
returna*b;
staticintdivide(inta,intb){
return(int)(a/b);
}*/
21.计算:
1+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n),n由键盘输入。
publicclassThe21th{
doublesum=0,div=0;
for(inti=1;
div=div+i;
System.out.println("
1/"
+div);
sum=sum+1/div;
System.out.println(sum);
22.编程计算:
1*2*3+3*4*5+…+99*100*101的值.
publicclassThe22th{
longsum=0;
i+2<
=101;
i=i+2){
sum=sum+i*(i+1)*(i+2);
二、比较简单问题:
1.编一个函数GCD,求两个无符号整数的最大公约数。
主函数输入两个正整数m和n,调用GCD,求出m和n的最大公约数和最小公倍数.并输出。
packagemoreEasy;
publicclassThe1th{
System.out.println(m+"
和"
+n+"
的最大公约数为:
+GCD(m,n));
的最小公倍数为:
+m*n/GCD(m,n));
publicstaticintGCD(inta,int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 编程 练习题 答案 doc
![提示](https://static.bdocx.com/images/bang_tan.gif)