找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 733|回复: 7

急啊!!!!大虾帮忙看看啊~~~

[复制链接]
发表于 2009-10-31 01:08:00 | 显示全部楼层 |阅读模式 IP:江苏扬州
运行就陷入死循环!!!!!大虾帮忙啊
//输入任一自然数,求其各位数平方和,循环此操作,最终得到1或45,编程并验证。
#include<stdio.h> #include<math.h> void main() { int s; int sum=0; printf("请输入一个自然数:\n"); scanf("%d",&s);//接收自然数
while(sum!=1||45) {
while(s>0) { sum+=(s%10)*(s%10); //求s%10的平方 s=s/10; } s=sum;
}
printf("结果是:%d\n",sum); }
发表于 2009-10-31 01:08:01 | 显示全部楼层 IP:江苏扬州
这个嘛你看你的while循环啊,什么叫做while(sum!=1||45)????不死才怪了呢!!
应该是while(sum!=1||sum!=45)
回复

使用道具 举报

发表于 2009-10-31 01:08:02 | 显示全部楼层 IP:江苏扬州
我修改后:
#include<stdio.h> #include<math.h> void main() { int s; int sum=0; printf("请输入一个自然数:\n"); scanf("%d",&s);//接收自然数
while(sum!=1||sum!=45) {
sum=0;
while(s>0) { sum+=(s%10)*(s%10); //求s%10的平方 s=s/10; }
s=sum; } printf("结果是:/n",s); }
还是死循环啊,大虾棒棒我
回复

使用道具 举报

发表于 2009-10-31 01:08:02 | 显示全部楼层 IP:江苏扬州
错了不好意思啦,应该是while(sum!=1&amp;&amp;sum!=45)
回复

使用道具 举报

发表于 2009-10-31 01:08:03 | 显示全部楼层 IP:江苏扬州
由于我经常出这种错误,所以刚才没太仔细想,如果用||的话sum==1的就是0,1,sum==45就是1,0;而无论是0,1还是1,0都是真,所以要1,0或0,1为假,所以应该是用&amp;&amp;,不好意思啦。
回复

使用道具 举报

发表于 2009-10-31 01:08:04 | 显示全部楼层 IP:江苏扬州
另外 我可不是什么大虾,有问题大家一起切磋就是了。
回复

使用道具 举报

发表于 2009-10-31 01:08:05 | 显示全部楼层 IP:江苏扬州
while(sum!=1||45)
就是这一句
回复

使用道具 举报

发表于 2009-11-5 12:05:05 | 显示全部楼层 IP:澳大利亚
够震撼!够创新!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-10-1 12:17 , Processed in 0.230474 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表