C语言编程题:求出100—1000之间的所有各位数字之和为奇数的完全平方数(完全平方数的定义为:1

C语言编程题:求出100—1000之间的所有各位数字之和为奇数的完全平方数(完全平方数的定义为:121=11*11,则121是个完全平方数)

我想知道我编译的对吗!? 望指导。

第1个回答  2014-01-06
你的思路应该是没问题的,这种方法肯定能统计出来。但是个人觉得不太高效。给你另一种思路吧:100开方是10,而31*31=961<1000,32*32=1024>1000,所以由此可以得出100-1000内的可能满足上述条件的数就应该在(10,31]这个范围内的数的平方数中找,这样的话我们只用遍历21个数而不至于去遍历你那种思路中的900+的数。然后接下来就可以判断这些数的平方中哪些是奇数即满足条件。追问

恩,谢谢建议!

追答

给个采纳呗

追问

#include
int main( )
{
int i=10;
printf("100~1000的完全平方数为:\n");
for(i=10;i<32;i++)
{
printf("%d ",i*i);
}
return 0;
}

这样写,按你的思路来! 有编写错误吗

我已采纳其他的了!

追答

好吧- -,你没有判断各位数加和是否是奇数

追问

for 语句后面+一个
i=i*i
if(i%2=1)
printf(”%d",i);
else
break;

追答

不是,我说的不是那个意思,人不是说要判断每一位的加和为奇数吗,你这是判断那个数是不是奇数

追问

如果奇数*奇数 结果肯定为奇数啊! 假如循环中任意一数被我 对2取余 为基数, 然后就直接输出那个数就是啊! 感觉没问题了啊

我忘题了, 题目理解错了

我想到了!在if语句后面用

i=(int)squrt(i)*(int) squrt(i);
printf("%d",i);
else
continue

这样可行吗?

单词打错,改sqrt( )

追答

不太理解你这写法,不过你就把你之前纸上写的取个、十、百位的那几句加上去就行了

追问

加哪!?

第2个回答  2014-01-06
我看了你的程序,给你做个小的修改,首先你很厉害!!
1,.if判断那里有错,if((a+b+c)%2==1)
2.你不能这么判断完全平方根 你得先定义一个int 变量 写成
x*x==i 这样的表达式
3.把上面两个条件用&&与操作就行!!
祝你成功,谢谢!!!追问

嗯,好。 谢谢

追答

不用谢!

本回答被提问者采纳
第3个回答  2014-01-06
不对追答

如果没达到条件就直接结束了整个循环,后面的都没做

而且你sqrt写错了
至少要赋给一个变量
而且调用sqrt需要math头文件

追问

呃呃呃

C语言编程题:求出100—1000之间的所有各位数字之和为奇数的完全平方数...
给你另一种思路吧:100开方是10,而31*31=961<1000,32*32=1024>1000,所以由此可以得出100-1000内的可能满足上述条件的数就应该在(10,31]这个范围内的数的平方数中找,这样的话我们只用遍历21个数而不至于去遍历你那种思路中的900+的数。然后接下来就可以判断这些数的平方中哪些是奇数即满足条件。

C语言编程题. ■求出100—1000之间的所有各位数字之和为奇数的完全平方...
include<stdio.h>int main(){ int i,a,b,c,temp; for(i=10;i<32;i++){ temp=i*i;\/\/这里不要赋值i=i*i; 会改变i的值 a=temp\/100;\/\/这里应该是除以100 得到百位上的数字 b=temp\/10%10; c=temp%10; if((a+b+c)%2){\/\/在这里判断是否为奇数 如果取余的结果为1...

C语言编程:求出100~1000的所有数字之和为奇数的完全平方数
输出: 100 144 225 256 289 324 441 625 676 784 841 900

求1000以内奇数的算术平方跟之和 vb编程枚举算法
m As Double, iSum As Double Me.Cls For i = 1 To 1000 Step 2 m = i ^ (1 \/ 2) iSum = iSum + m Next Print "1000以内奇数的算术平方根之和为:" & iSumEnd SubPrivate Sub Command2_Click() '完全数 Dim i As Integer, m As Integer, n As ...

两道C语言编程题:一、输入一个整数,求它的位数以及各位数字之和。
i++;\/\/i为位数 } printf("%d位数, 各位数字之和为%d\\n",i,sum);} 二:include <stdio.h> int issxh(int number){ int x1,x2,x3;x1=number\/100; \/\/百位数 x2=(number\/10)%10; \/\/十位数 x3=number%10; \/\/个位数 if(x1*x1*x1+x2*x2*x2+x3*x3*x3==number)return 1;els...

完全平方数举例说明
= 1000a+100b+10c+d = 999a+99b+9c+(a+b+c+d)= 9(111a+11b+c)+(a+b+c+d)显然,a+b+c+d是四位数被9除的余数。对於n位数,也可以仿此法予以证明。关於完全平方数的数字和有下面的性质:性质9:完全平方数的数字之和只能是0,1,4,7,9。证明 因为一个整数被9除只能是9k,9k±1...

请给出这三道关于完全平方数的题的完全过程
由于a与a+3奇偶性不同,故a(a+3)是偶数,从而a(a+3)+1是奇数所以是奇数平方 2由于所求的数是平方数,故可设所求的数为a^2 ∴1000≤a^2≤9999 ∴32≤a≤99 设a=22m+n(0≤n≤21),则a^2=484m^2+44mn+n^2=22(22m^2+2mn)+n^2,由已知,n^2被22整除余5,满足...

c语言...
题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。2.程序源代码:main(){int i,j,k,n;printf("'water flower'...

完全平方数(题目见下)
但对完全平方数,因其有一对约数两个数是相同的。例如对36:1、2、3、4、6、9、12、18、36,有 1×36、2×18、3×12、4×9、【6×6】,约数成对少1,为奇数。根据上述性质,1到100中,是完全平方数的数,约数个位为奇数,最后是灭的,从1²、2²到10² 共有10盏。...

本程序演示一个整数,它加上100后是一个完全平方数,再加上168又是一个...
展开全部 完全平方数 (一)完全平方数的性质 一个数如果是另一个整数的完全平方,那么我们就称这个数为完全平方数,也叫做平方数。例如: 0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,… 观察这些完全平方数,可以获得对它们的个位数、十位数、数字和等的规律性...

相似回答