n%i==0在c语言作用,扬大C语言上机题0.doc

扬大C语言上机题0

设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,。

#includevoid hailstones(int n ){int j,i=1;printf("Hailstones generated by %d\n",n);while(n>1){for(j=0;j<6;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)==1&&value(i)==1&&value(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;elsereturn 0;getch();}

如果一个数及该数的反序数都是素数,则称该数为可逆素数。例如17是素数,17的反序数71也是素数,因此17便是一个可逆素数。编程要求:(1)编写函数以下程序中,函数int f(int m,int n,int a[]),其功能是在[m,n]区间内查找所有可逆素数并将这些素数依次保存到a指向的数组中,函数返回a数组中可逆素数的数目。(2)编写main函数,声明一个足够大的一维数组,并从键盘上输入2个正整数m和n(m

#include#includeint 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(n>0){ 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;i

整数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(;x>0;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指向的一维数组中,函数返回[

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值