数学建模社区-数学中国
标题:
谭浩强书上的课后习题水仙花数,求解
[打印本页]
作者:
kill2345
时间:
2013-8-10 11:42
标题:
谭浩强书上的课后习题水仙花数,求解
本帖最后由 kill2345 于 2013-8-10 12:00 编辑
1 X) a0 C8 ?7 U6 N& U$ X
. ?9 C8 q) y/ d; m; E' o. s( {
自学c,正在看谭浩强的《C程序设计》,遇到一个题不会,请教
4 e( S& k3 z1 g% _& v4 ^
输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为
, b, X" z4 V: L7 [6 t) `
153=1[sup]3[/sup]+5[sup]3[/sup]+3[sup]3[/sup]。
作者:
wangzheng3056
时间:
2013-8-10 11:59
赶快上来抢点体力!
作者:
wangzheng3056
时间:
2013-8-10 12:00
楼主试试, 你可以任意输入n个数,只要不超出int型的范围就行了
#include<stdio.h>
9 a' ?1 b! g: {% |, z
int pow(int x,int y)
! H8 d% I% Q* b+ g
{
# S2 {5 D3 h1 z
int num=1,i;
- P Q! P2 A }: q# a f6 D
for(i=0;i<y;i++)
( _3 o. S" {3 T- z1 I! [5 k
{
( @7 {3 Z1 h6 s. C
num *= x;
9 g. U' B% t& j! b' i4 h" g
}
/ \+ l6 ?( T8 d, _9 i' W
return num;
R! V8 o8 l' O! r, U, B
}
1 {1 v) W9 l9 F4 V( G4 T
void main()
6 r: ^3 n; f' X* w5 O0 p; `
{
, _; [& A; n4 p8 y" X
int num,temp,i,count=1,number;
4 D+ L( ^3 D1 s$ ^ m, Z
int temp1;
' X3 g0 b. |; x5 V
scanf("%d",&num);
) n+ r8 Y% S: u5 J
number = num;
+ o" c- d: @! V' x0 v# O6 U
for(i = 10 ; num/i ; i*=10)//记录一下num的位数
. ]4 T: [+ u/ V6 j( p! n p
{count++;}
2 F( L+ \/ N0 J. p1 A
//将number所有位数分离
L8 X) y6 c( \' T* k& O
temp = pow(num%10,count);
* j: f8 G7 W1 j, D
for(i = count -1 ; i>0 ; i-- )
N4 U8 W8 C8 n* S
{
6 r: J) s! I9 k* \
temp1 = num / pow(10,i);
2 t" x% d7 T) j
temp += pow(temp1,count);
3 E- ?, E* {+ D" z; ]+ Q
num = num - pow(10,i)* (num / pow(10,i));
! E0 @" G/ q1 U9 H) c, j
}
; K: x& [. b" z$ U, z1 V- [; {3 R- W
if(temp == number)
/ w, R) L) H1 y! m3 J+ N# ?- f
printf("yes");
- r( t, z& r0 d0 s3 |
else
8 X1 T& R' d* {$ c: _2 k) ?- q
printf("no");
2 h, u, |3 N1 }4 b
}
复制代码
作者:
wangzheng3056
时间:
2013-8-10 12:01
太高兴了,总算有人进来问问题了
作者:
wangzheng3056
时间:
2013-8-10 12:01
刷屏程序开始
作者:
wangzheng3056
时间:
2013-8-10 12:02
刷频,刷频,刷屏
作者:
magic2728
时间:
2013-8-10 17:29
三层循环,三个数位分别从0~9,注意排除非三位数情况,验证结果是否符合就行了。楼主自己敲一下代码吧,只有亲自动手才能发现问题的细节处,精妙处,加油!有不懂的欢迎再来提问!
作者:
ゞ★人才涛涛
时间:
2013-8-11 20:22
楼主要问的是什么
作者:
ゞ★人才涛涛
时间:
2013-8-11 20:22
撒旦发射点发速度发生的发打算
作者:
kill2345
时间:
2013-8-12 10:17
ゞ★人才涛涛 发表于 2013-8-11 20:22
" }% w3 l! b" X+ S1 x
撒旦发射点发速度发生的发打算
- W1 ?& s; T1 K7 k) h8 n) M
难道楼上是来灌水的吗?
作者:
仰望0712
时间:
2013-8-12 16:51
#include<stdio.h>void main(){ int i,j,k,n; for(i=1;i<10;i++) for(j=0;j<10;j++) for(k=0;k<10;k++) { n=i*100+j*10+k; if((i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k))) printf("水仙花数为:%d\n",n); }}
作者:
Summershumo
时间:
2013-8-15 16:55
顶一下,,,,,,,,,,,,
作者:
jack_lvzheng
时间:
2013-11-3 10:16
while(1)
" w5 D' R9 E. Z' c( r2 K* ]5 ?
发表回复();
作者:
jack_lvzheng
时间:
2013-11-3 10:17
while(1)
$ B' R5 r9 P: c3 h4 t6 p, U
发表回复();
作者:
lvzh2
时间:
2014-1-20 10:05
网上都有源码的。。。
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5