【精选】扬大C语言上机题.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【精选】扬大C语言上机题

设n。是一个给定的正整数。对于i=0,1,2,6……,定义:若nI是偶数,则nI+1=nI/2; 若nI是奇数,则nI+1=3nI+1;若nI是1,则序列结束。编写一个void hailstones(int n),其功能是显示有n产生的所需要的序列。按每行6个数输出该数列中的所有数。编写main函数,在main函数中定义一个整型变量n,。 #includestdio.h void hailstones(int n ) {int j,i=1; printf(Hailstones generated by %d\n,n); while(n1) {for(j=0;j6;j++) {printf(%d\t,n); if(n==1)break; if (n%2==0)n/=2 ; else n=3*n+1; i++ ;} printf(\n); } printf(Number of hailstones generated:%d,i); } main() { int n; scanf(%d,n); hailstones(n); getch(); } 编写程序,找出满足条件的整数 m 在(11,999)之间 m,m2,m3均为回文数。 设计函数int value(long m)判断m是否为回文数。若是,返回值为1,否则为0.编写main函数,求出(11,999)内满足的数。 void main() { long int m,i,j; for(m=11;m=999;m++) {i=m*m; j=m*m*m; if(value(m)==1value(i)==1value(j)==1) printf(%ld\n,m);} getch(); } int value(long m) { long a=0,k; k=m; while(m) {a=a*10+m%10; m=m/10;} if(a==k) return 1; else return 0; getch(); } 如果一个数及该数的反序数都是素数,则称该数为可逆素数。例如17是素数,17的反序数71也是素数,因此17便是一个可逆素数。编程要求: (1)编写函数以下程序中,函数int f(int m,int n,int a[]),其功能是在[m,n]区间内查找所有可逆素数并将这些素数依次保存到a指向的数组中,函数返回a数组中可逆素数的数目。 (2)编写main函数,声明一个足够大的一维数组,并从键盘上输入2个正整数m和n(mn),调用函数f,输出调用结果。 #includestdio.h #includemath.h int p(int n) { int i,j=sqrt(n); for(i=2;i=j;i++) if(n%i==0) return 0; return 1; } int convert(int n) { int m=0; while(n0) { m=m*10+n%10; n=n/10; } return m; } int f(int m,int n,int a[]) { int i,j=0; for(i=m;i=n;i++) if(p(i)p(convert(i))) a[j++]=i; return j; } main() { int i,n,a[50]; n=f(50,150,a); for(i=0;in-1;i++) printf(%d,,a[i]); printf(%d,a[n-1]); getch(); } 整数145有一个奇怪的特性:145=1!+4!+5!。 编程要求: (1) 编写函数int facsum(long x),其功能是判断长整型数x是否具有上述特性,如具有上述特性则返回值1,否则返回值0。 (2) 编写main(),在1~2000000内寻找具有此特性的数,并将满足该特性的数输出。 long fac(int x) { long int y=1; for(;x0;x--)y*=x; return y; } int facsum(long x) { long sum=0; long y; y=x; while(y) { sum+=fac(y%10);y/=10;} if(sum==x)return 1; else return 0;} main() { long i; for(i=1;i=200000;i++) if(facsum(i)) printf(%12ld,i); getch(); } 1. 请编写函数int primecount(int a[],int m,int n),其功能是:找出[m,n]内的所有质数并依次将它们存储到a指向的一维数组中,函数返回[m,n]内质数的个数。编写main函数,声明一个长度为100的一维数组a,从键盘上

文档评论(0)

tazhiq2 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档