美文网首页程序员
五道程序算数题

五道程序算数题

作者: 秘校同下 | 来源:发表于2016-06-03 11:37 被阅读379次

此文写于2013年5月20日。

全部为当初在学校自己写的,尤为对于在校学生,认真看是能看懂的。

题目1:古希腊人认为因子的和等于它本身的数是一个完全数(自身因子除外),例如28的因子是1、2、4、7、14,且1+2+4+7+14=28,则28是一个完全数,编写一个程序求2-1000内的所有完全数。

#include "stdio.h"

#include "math.h"

main()

{

int mymath,i,inputmath,a,b;

for(i=2;i<=1000;i++)

{

inputmath=1;

b=sqrt(i);

for(mymath=2;mymath<=b;mymath++)

{

if(i%mymath==0)

{

a=i/mymath;

inputmath=inputmath+a+mymath;

}

}

if(inputmath==i)

{

printf("%d\t",inputmath);

}

}

}

题目2:一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称数是多少?

#include "stdio.h"

#include "math.h"

main(

{

long i,a[6],b,c;

for(i=95860;i<1000000;i++)

{

if(i<100000)

{

a[0]=i/10000;

a[1]=i/1000%10;

a[2]=i/100%10;

a[3]=i%100/10;

a[4]=i%10;

b=a[4]*10000+a[3]*1000+a[2]*100+a[1]*10+a[0];

if(b==i)

{

c=(i-95859)/2;

printf("新的对称数是:%d\n",i);

printf("速度:%d\n",c);

break;

}

}

}

}

题目3:自守数是指一个数的平方的尾数等于该数自身的自然数。例如:

25^2=625 76^2=5776 9376^2=87909376

请求出200000以内的自守数

参考结果:

0 1 5 6 25 76 376 625 9376 90625 109376

#include "stdio.h"

#include "math.h"

main()

{

long i,a;

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

{

if(i<10)

{

a=i*i%10;

if(i==a)

{

printf("%ld\t",i);

}

}

else if(i<100)

{

a=i*i%100;

if(i==a)

{

printf("%ld\t",i);

}

}

else if(i<1000)

{

a=i*i%1000;

if(i==a)

{

printf("%ld\t",i);

}

}

else if(i<10000)

{

a=i*i%10000;

if(i==a)

{

printf("%ld\t",i);

}

}

else if(i<100000)

{

a=i*i%100000;

if(i==a)

{

printf("%ld\t",i);

}

}

else

{

a=i*i%1000000;

if(i==a)

{

printf("%ld\t",i);

}

}

}

}

题目4:一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码顺序正好相反,求这个三位数。

#include "stdio.h"

main()

{

int i,a,b,x[3],c,y[3],d,e;

for(i=81;i<500;i++)

{

e=i;

for(a=0;a<3;a++)

{

x[a]=e%7;

e=e/7;

}

b=x[2]*100+x[1]*10+x[0];

for(d=0;d<3;d++)

{

y[d]=b%9;

b=b/9;

}

c=y[0]*100+y[1]*10+y[2];

if(x[2]==y[0]&&x[1]==y[1]&&x[0]==y[2])

{

printf("%d\t%d\t%d\n",x[2],x[1],x[0]);

printf("%d\t%d\t%d\n",y[2],y[1],y[0]);

printf("%d\n",c);

break;

}

}

}

题目5:带分数

100 可以表示为带分数的形式:100 = 3 + 69258 / 714

还可以表示为:100 = 82 + 3546 / 197

注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。

类似这样的带分数,100 有 11 种表示法。

题目要求:

从标准输入读入一个正整数N (N<1000*1000)

程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。

注意:不要求输出每个表示,只统计有多少表示法!

例如:

用户输入:

100

程序输出

11

再例如:

用户输入:

105

程序输出:

6

#include "stdio.h"

int charnum(int i,int j,int k)

{

int a,x[10],f;

for(f=0;f<10;f++)

{

x[f]=0;

}

while(i)

{

a=i%10;

x[a]++;

if(x[a]>1)

{

return 0;

}

i=i/10;

}

while(j)

{

a=j%10;

x[a]++;

if(x[a]>1)

{

return 0;

}

j=j/10;

}

while(k)

{

a=k%10;

x[a]++;

if(x[a]>1)

{

return 0;

}

k=k/10;

}

if(x[0]>0)

{

return 0;

}

for(f=1;f<10;f++)

{

if(x[f]==0)

{

return 0;

}

}

return 1;

}

void main()

{

int n,i,j,k,count;

printf("请输入n:");

scanf("%d",&n);

count=0;

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

{

for(k=1;k<=9999;k++)

{

if(i!=k)

{

j=(n-i)*k;

if(charnum(i,j,k)==1)

{

count++;

printf("\n%d=%d+%d/%d",n,i,j,k);

}

}

}

}

printf("\n%d的带分数的表示法有%d种\n",n,count);

}

相关文章

  • 五道程序算数题

    此文写于2013年5月20日。 全部为当初在学校自己写的,尤为对于在校学生,认真看是能看懂的。 题目1:古希腊人认...

  • 算数题

    今天上午老师让我们做数学题,由于我自己的算的很仔细,所以没有错题。这让我知道了,在做数学题是一定要认真仔细,...

  • 算数题

    一穗普通的苞米大概有多少粒? 哈哈,还会简便算法呢 苞米

  • 有没有入门VUE,就看这份自测题了♨

    精选的四十五道vue自测题,每五道题公布一次答案。 一、 html js 问号处应该填入什么,才能使得 span ...

  • 日记

    今天我写了一张试卷,数学五道题。

  • 边做题边总结

    下个月,我就要参加考试,最近刷的题真是让我信心大搓,五道题错三个,甚至五道题错四个,有种要放弃的感觉,做着还真是费...

  • 补作业

    今天我吃完晚饭,妈妈对我说:明天要交每日五道题。我一想我的每日五道题,还有好几天没有写完,我就赶紧跑回书房做作...

  • 数学转化后进生之路(一)

    今天进行计算摸底测试,二十五道题,小数乘法五道,小数除法五道,分数加减法九道,分数乘除法六道,测出来的结果不尽...

  • 日记

    今天写了打印的卷子,一页习字,数学五道题。

  • 孩子做题只做会的,不做不会的,怎么办?

    小青吐槽最近辅导妹妹小佳,小佳总是喜欢做她会做的算数题,不喜欢做不会做的规律题。妈妈一直让她做算数题,做对...

网友评论

    本文标题:五道程序算数题

    本文链接:https://www.haomeiwen.com/subject/hankdttx.html