第五章 循环结构程序设计编程题(参考答案).pdf下载分享

资料简介

本资料包含了C语言中循环结构的经典编程题目及其参考答案,适合初学者和进阶学习者使用。内容涵盖了基本的for循环应用,如输出特定范围内的整数、字符以及计算数学序列等。通过这些练习,学习者可以加深对循环控制语句的理解,并提高解决实际问题的能力。每道题目都附有详细的代码实现,便于理解和模仿。

  • 文件名称:第五章 循环结构程序设计编程题(参考答案).pdf

  • 文件类型:PDF文档

  • 文件标签:C语言、编程练习、循环结构

第五章 循环结构程序设计编程题(参考答案).pdf下载分享

百度网盘下载

内容预览

第五章

循环结构程序设计 
1 . 用for 循环语句编程输出1 ~20 之间的所有整数,两数之间以
空格分隔。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i ;  

for(i =1 ; i <=20; i ++)  

pri ntf("%d ", i ) ;  

pri ntf("\n") ;  
}  
2. 用for 循环语句编程输出20~1 之间的所有整数,两数之间以
空格分隔。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i ;  

for(i =20; i >=1 ; i --)  

pri ntf("%d ", i ) ;  

pri ntf("\n") ;  
}  
3. 用for 循环语句编程输出A~Z 之间的所有字符,两字母之间以
空格分隔,要求一行输出8 个字符。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

char c;  

for(c=' A' ; c<=' A' +25; c++)  

{ 

putchar(c) ;  

pri ntf(" ") ;  

}  
}  
4. 输出1 00~200 之间所有能被3 和7 整除的数(每行输出4 个数)。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i , j=0;  

for(i =1 00; i <=200; i ++)  

{ 

i f(i %21 ==0)  

{  j++;  

pri ntf("%1 2d", i ) ;  

i f(j%4==0)  pri ntf("\n") ;  

}  

}  
}  
5. 输出1 至1 000 之间所有满足用3 除余2、用5 除余3、用7 除
余2 的数(要求每行只输出5 个数)。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i , j=0;  

for(i =1 ; i <=1 000; i ++)  

{ 

i f((i %3==2) &&(i %5==3) &&(i %7==2) )  

{  j++;  

pri ntf("%1 2d", i ) ;  

i f(j%5==0)  pri ntf("\n") ;  

}  

}  
}  
6. 先读入一个正整数n,然后计算并显示前n 个偶数的和。例如
n 为5,则求2+4+6+8+1 0 的值,即sum=30。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i , n, sum=0;  

pri ntf("Pl ease enter an i nteger n: ") ;  

scanf("%d", &n) ;  

for(i =1 ; i <=n; i ++)  

sum+=(2*i ) ;  

pri ntf("sum=%d\n", sum) ;  
}  
7. 计算S=1 +1 /2+1 /3+1 /4+…+1 /200 的值并输出。 

#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i ;  

fl oat S=0. 0;  

for(i =1 ; i <=200; i ++)  

S=S+1 . 0/i ;  

pri ntf("S=%f\n", S) ;  
}  
8. 计算1 -3+5-7+…-99+1 01 的值。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i , sum=0;  

for(i =0; i <=50; i ++)  

{ 

i f(i %2==0)  sum+=2*i +1 ;  

el se sum-=2*i +1 ;  

}  

pri ntf("sum=%d\n", sum) ;  
}  
9. 输入6 个整数并显示其平均值。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt num, sum=0, i ;  

fl oat avg;  

pri ntf("Pl ease enter 6 i ntegers: ") ;  

for(i =1 ; i <=6; i ++)  

{ 

scanf("%d", &num) ;  

sum+=num;  

}  

avg=sum/6. 0;  

pri ntf("avg=%f\n", avg) ;  

}  
1 0. 输出Fi bonacci 数列的前几项,直到该项的值大于1 0000 为
止(
每行输出
5
项
)
。
Fi bonacci
数列
为
1 , 1 , 2, 3, 5, 8, 1 3, 21 , 34,…。即第一项和第二项为1 ,其他项为
前两项之和。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt f1 =1 , f2=1 , f3=2, i =3;  

pri ntf("%d\t%d\t%d\t", f1 , f2, f3) ;  

whi l e(f3<=1 0000)  

{ 

f1 =f2; f2=f3;  

f3=f1 +f2;  

pri ntf("%d\t", f3) ;  

i ++;  

i f(i %5==0)  pri ntf("\n") ;  

}  
}  
1 1 . 输出1 0000 至99999 中所有的回文数(回文数是指从左到右
读与从右到左读都一样的正整数,如1 1 , 22, 3443, 94349 等)。 
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

l ong i ;  

i nt ge, shi , qi an, wan, k=0;  

for(i =1 0000; i <=99999; i ++)  

{ 

ge=i %1 0;  wan=i /1 0000;  

shi =i /1 0%1 0;  qi an=i /1 000%1 0;  

i f(ge==wan&&shi ==qi an)  

{ 

k++;  

pri ntf("%1 2d", i ) ;  

i f(k%5==0)  pri ntf("\n") ;  

}  

}  
}  
1 2. 找出所有“水仙花数”。所谓水仙花数是指一个三位数,其各
位数字立方和等于该数本身。例如,1 53 是水仙花数,因为
1 53=1 ^3+5^3+3^3.  
#i ncl ude<stdi o. h> 
voi d mai n()  
{ 

i nt i , ge, shi , bai ;  

for(i =1 00; i <=999; i ++)  

{ 

ge=i %1 0;  

shi =i /1 0%1 0;  

bai =i /1 00;  ...

百度网盘下载