C循环控制结构练习题Word文件下载.docx

上传人:b****2 文档编号:5242047 上传时间:2023-05-04 格式:DOCX 页数:39 大小:32.49KB
下载 相关 举报
C循环控制结构练习题Word文件下载.docx_第1页
第1页 / 共39页
C循环控制结构练习题Word文件下载.docx_第2页
第2页 / 共39页
C循环控制结构练习题Word文件下载.docx_第3页
第3页 / 共39页
C循环控制结构练习题Word文件下载.docx_第4页
第4页 / 共39页
C循环控制结构练习题Word文件下载.docx_第5页
第5页 / 共39页
C循环控制结构练习题Word文件下载.docx_第6页
第6页 / 共39页
C循环控制结构练习题Word文件下载.docx_第7页
第7页 / 共39页
C循环控制结构练习题Word文件下载.docx_第8页
第8页 / 共39页
C循环控制结构练习题Word文件下载.docx_第9页
第9页 / 共39页
C循环控制结构练习题Word文件下载.docx_第10页
第10页 / 共39页
C循环控制结构练习题Word文件下载.docx_第11页
第11页 / 共39页
C循环控制结构练习题Word文件下载.docx_第12页
第12页 / 共39页
C循环控制结构练习题Word文件下载.docx_第13页
第13页 / 共39页
C循环控制结构练习题Word文件下载.docx_第14页
第14页 / 共39页
C循环控制结构练习题Word文件下载.docx_第15页
第15页 / 共39页
C循环控制结构练习题Word文件下载.docx_第16页
第16页 / 共39页
C循环控制结构练习题Word文件下载.docx_第17页
第17页 / 共39页
C循环控制结构练习题Word文件下载.docx_第18页
第18页 / 共39页
C循环控制结构练习题Word文件下载.docx_第19页
第19页 / 共39页
C循环控制结构练习题Word文件下载.docx_第20页
第20页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C循环控制结构练习题Word文件下载.docx

《C循环控制结构练习题Word文件下载.docx》由会员分享,可在线阅读,更多相关《C循环控制结构练习题Word文件下载.docx(39页珍藏版)》请在冰点文库上搜索。

C循环控制结构练习题Word文件下载.docx

 

2.从键盘上输入一个正整数n,判断是否是素数?

法1:

#include<

iomanip>

voidf(intn){

intk=sqrt(n),i;

for(i=2;

i<

=k;

i++)

if(n%i==0)break;

if(i>

=k+1)cout<

n<

是素数"

<

elsecout<

不是素数"

f(n);

法2;

#include<

boolf(intn){

intk=sqrt(n),i;

for(i=2;

=k+1)return1;

elsereturn0;

if(f(n))cout<

3.26.2017

boolf2(intn)

{intk=sqrt(n),i;

for(i=2;

i<

=k;

i++)

if(n%i==0)return0;

if(i>

=k+1)return1;

1

}intmain()

{intn;

while

(1)

{cin>

n;

if(n==0)break;

if(f2(n))cout<

"

是素数!

endl;

system("

return0

3.编写程序,输入一个整数,求该整数的各位数字和。

intt=0;

i=i/10)

t=i%10+t;

n的各位数字和为:

f(n)<

法二:

intf(intn)

{

if(n<

10)returnn;

elsereturn(n%10+f(n/10));

}

intf3(intn)

{n=abs(n);

if(n<

10)returnn;

elsereturn((n%10)+f3(n/10));

cout<

f3(n);

return0;

3.编写程序,输入一个整数,求该整数的各位数字的乘积。

法一:

elsereturn((n%10)*f(n/10));

n=abs(n);

法二:

i=i/10)

t=t*(i%10);

intf4(intn)

elsereturn((n%10)*f3(n/10));

f4(n);

4.编写程序,输入一个整数,求该整数的各位数字的平方和。

t=t+(i%10)*(i%10);

}法二:

10)returnn*n;

elsereturn(n%10)*(n%10)+f(n/10);

3.27.2017intf4(intn)

if(n<

10)returnn*n;

if(n>

10)return(n%10)*(n%10)+f4(n/10);

f4(n)<

5.编写程序,输入一个整数,求该整数的各位上的数字是否包含数字5,若有则输出是第几位有含数字5.

voidf(intn)

intj=0;

j++;

if(i%10==5)cout<

j<

包含5的位置i为:

f(n);

}3.27.2017

voidf5(intn,intm)

{for(inti=n,j=0;

i>

0;

i=i/10,j++)

if(i%10==m){cout<

第"

j+1<

位"

{intn,m;

n>

m;

f5(n,m);

6.编写程序输出一个平行四边行。

注:

边长为10个*号

voidu()

inti=0;

for(inti=1;

=10;

{

cout<

setw(i);

for(intj=1;

j++)

cout<

'

*'

}

3.27.2017

voidf6()

{for(intj=0;

j<

10;

j++)

{cout<

setw(20+j);

for(inti=0;

cout<

'

}}

f6();

8.编程计算:

的前20项的和。

doublef(doublen)

if(n>

0){

if(n==1)return1;

elsereturnn/(2*n-1)+f(n-1);

3.27.2017

doublef7(doublen)

{inti;

0){

if(n==1)return1;

elsereturn(n/(2*n-1))+f7(n-1);

{doublen,m;

cin>

f7(n);

9.编写一程序,输入一个正整数,统计该数中含数字5的个数。

usingnamespacestd;

if(i%10==5)j++;

}cout<

包含5的个数为:

10.编写程序,输出所有含数字5且为77倍数的四位数。

voidJ(){

for(inti=1000;

=9999;

if(i%77==0){

intm=i;

for(m;

m>

m=m/10)

if(m%10==5){cout<

break;

}

}intmain()

{J();

System(“pause”);

11.编写一程序,输入一个正整数n,求大于等于n的最小素数。

intx,b,i,m,k;

请输入一个整数:

x;

b=sqrt(x);

=b;

if(x%i==0)break;

=b+1)cout<

x<

else

for(m=x;

m++){

k=sqrt(m);

for(i=2;

if(m%i==0)break;

if(i>

=k+1)

{cout<

m<

break;

}system("

intn,k,m,i,j;

for(i=n;

i++){

for(j=2;

j*j<

i;

if(i%j==0)break;

if(j*j>

=i){

break;

}

12.从键盘输入一个小于15的正整数,计算其阶乘。

13.编程计算1!

+2!

+3!

+.....+n!

n从键盘输入。

intsum2(intn)

{intsum=0,t=1;

for(intj=1;

=n;

{t=1;

for(inti=1;

=j;

t=t*i;

sum=sum+t;

returnsum;

while

(1){

sum="

sum2(n)<

14.从键盘上输入一个正整数m,找出1000至10000之间所有各位数字之和等于m的数。

如输入32,则有9869满足要求。

因为9869各位上数字之和等于32。

voidf(intm)

inti;

for(i=1000;

10000;

intsum=0;

for(intj=i;

j>

j=j/10){sum=sum+j%10;

if(sum==m){cout<

intn,m;

15.已知xxz+yzz=532,求所有可能的x,y,z的值

for(intx=0;

=9;

x++){

for(inty=0;

y<

y++){

for(intz=0;

z<

z++){

intk=x*10+x*100+z+y*100+z*10+z;

if(k==532)cout<

return0;

16.编程从键盘中随机输入若干整数,统计其中正整数、0、负整数数的个数。

当输入整数100000时结束输入。

voidmain()

intn=0,m=0,k=0,c=0;

while(n!

=100000){

cout<

cin>

0)k++;

elseif(n==0)m++;

elseif(n<

0)c++;

正整数的个数是:

k<

负整数的个数是:

0的个数是:

17.编写一程序,输入一个正整数n,求小于等于n的最大素数。

18.求100~999中的。

所谓水仙花数是指一个三位数,它的每位数字的立方之和等于该数。

例如,因为153=13+53+33,所以153为水仙花数。

for(i=100;

=999;

intj,sum=0;

j=i;

while(j)

intk=j%10;

sum=sum+k*k*k;

j=j/10;

}if(sum==i)cout<

sum<

19.求1000之内的所有完数。

所谓完数是指一个数恰好等于它的所有因子之和。

例如,6=1+2+3,所以6为完数。

20.编一程序显示如下图案:

*

***

*****

*******

*********

21.编一程序显示如下图案:

A

ABC

ABCDE

for(inti=1;

=n;

i++){

setw(20-i);

for(intj=0;

2*i-1;

chart='

A'

+j;

t;

f(3);

21.根据π/4=1-1/3+1/5-1/7+…求π的近似值,直到最后一项的值小于0.000001为止。

22.猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,发现只剩一个桃子了,求猴子第一天究竟摘了多少个桃子?

23.编程序模拟剪刀,石头和纸游戏。

游戏规则为:

剪刀剪纸,石头砸剪刀,纸包石头.玩游戏者从键盘上输入s(表示剪刀)或R(表示石头)或P(表示纸),要求两个游戏者交替输入,计算机给出输赢的信息。

24.编写程序输出菲波那切数列的前20项。

即前两项为1,以后每一项为前两项之和。

25.打印九九乘法表。

26.若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛?

27.编写程序,输入一个整数,求该整数是几位数?

并输出最高位数字。

intx=0,j=0;

i=i/10){

if(x<

i%10)x=i%10;

returnx;

28.从键盘上输入一个正整数n,求出5位数中各位数字之和等于n的所有素数,每行按6个素数输出。

(错误)

voidf(intm,intn,intk)

intl=0;

for(inti=m;

ints=0;

j>

j=j/10)

s=s+j%10;

if(s==k){

intt,z=sqrt(i);

for(t=2;

t<

t++)

if(i%t==0)break;

if(t>

=k+1){

l++;

if(l%6==0)cout<

f(10000,99999,43);

(正确)

voidfoundPrime(intn)

intk=0;

for(inti=100

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2