第一范文网 - 专业文章范例文档资料分享平台

c语言上机实验题

来源:用户分享 时间:2025/5/25 21:24:47 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

41, 43 59, 61 71, 73

#include #include int prime(int i) {int k;

for(k=2;k

int twinborn(int a[][2],int m,int n) { int k=0,i;

for(i=m;i<=n-2;i+=1) if(prime(i)&&prime(i+2)) a[k][0]=i,a[k][1]=i+2,k++; return k; }

main()

{ int a[100][2],m,n,i;

printf(\ scanf(\ m=twinborn(a,m,n); for(i=0;i

printf(\ getch(); }

15.以下程序欲实现从键盘输入一个较大的整数n(n>=6),然后验证6到n之间的所有偶数都可以分解为两个质数之和。但程序有些错误,请改正这些错误以达到要求的功能。

【含有错误的源程序】

#include \void main() {

int k,j,n,limit; do

printf(\ scanf(\ while(limit<6);

for(n=6;n<=limit;n+=2) for(k=3;k<=n/2;k+=2) if(prime(k)) { j=n-k;

if(prime(j))

{ printf(\ continue; } } }

int prime(int m) {

int g,h; h=sqrt(m); for(g=2;g<=h;g++) if(m%g==0)

return 0;

else

return 1;

}

#include \#include void main()

{ int k,j,n,limit; do

{printf(\ scanf(\ while(limit<6);

for(n=6;n<=limit;n+=2) {for(k=3;k<=n/2;k+=2) {if(prime(k)) { j=n-k;

if(prime(j))

{ printf(\ continue; } } }

}getch(); }

int prime(int m) {

int g,h; h=sqrt(m); for(g=2;g<=h;g++) if(m%g==0) return 0; return 1; }

16.请编写程序,找出满足如下条件的整数m:(1)该数在[11,999]之内;(2) m、m2、m3

均为回文数。例如m=11,m2=121,m3=1331,11、121、1331皆为回文数,故m=11是满足条件的一个数。请设计函数int value(long m),其功能是判断m是否是回文数,如是,该函数返回值1,否则返回值0。编写main函数,求出[11,999]内满足条件的所有整数。

#include int value(long m); void main() {

long m,n;

for(n=11;n<=999;n++) {m=n;

if(value(m)) m=n*n;

if(value(m)) m=n*n*n; if(value(m)) printf(\ } getch(); }

int value(long m) { long a=0,b; b=m; while(m) {

a=a*10+m; m=m/10; }

if(a==b) return 1; return 0; }

54. 请编写函数int palindrome(long *a,long m,long n),其功能是找出[m,n]内的所有回文数(回文数:顺读倒读其值都相同的数,例如12321),函数返回[m,n]内回文数的个数。编写main函数,声明一个长度为1000的长整型数组a,从键盘输入长整型数m和n,用a、m、n作为实在参数调用函数palindrome,将结果数组输出至屏幕,并输出符合条件数的个数。例如,若m=100 n= 500,则输出结果为: 101 111 121 131 141 151 161 171 181 191 202 212 222 232 242 252 262 272 282 292 303 313 323 333 343 353 363 373 383 393 404 414 424 434 444

454 464 474 484 494 count=40

#include

int palindrome(long *a,long m,long n) {

long x,y,i=0,k;

for(x=m;x<=n;x++) { k=0; y=x; while(y)

{k=k*10+y; y=y/10;} if(k==x) a[i++]=x; }

return i; }

main() {

long a[1000],m,n,i,count; printf(\

scanf(\ count=palindrome(a,m,n); for(i=0;i

printf(\ if((i+1)%5==0) printf(\ }

printf(\ getch(); }

17. 请按要求编写程序。编程要求:

(1)编写函数long Fibonacci(int n),其功能是:求Fibonacci数列中大于t 的最小的一个数,函数返回该数。下列数列为Fibonacci数列:1,1,2,3,5,8,13,21,……,即从第3项开始,每一项均为前两项的和。

(2)编写main函数,从键盘上输入一个整数t,用t作为实在参数调用Fibonacci函数,并输出调用结果。

例如,当t=1000时,输出为1597。 #include

long Fibonacci(long int n); main()

搜索更多关于: c语言上机实验题 的文档
c语言上机实验题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c8z5ap9wwtp99g5n14c0q_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top