标题:这个是死循环??????咋回事呢
只看楼主
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 2楼 a646404908
一时仓促,忘记说了,,,是找 两个数m,n之间的数  满足每个数字的立方和等于这个数,囧。。。。。。
2012-03-18 18:19
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 5楼 星辰雁
谢谢啦,我找到啦,thank you
2012-03-18 18:20
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 6楼 C_戴忠意
忘记说了,不好意思哈
2012-03-18 18:21
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 7楼 zklhp
囧。。。。。版主 淘气呀
2012-03-18 18:21
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 8楼 moonnight
哦,,,,,soga   当时头发昏了,,,,,万分感谢,。。,,难怪死了
2012-03-18 18:22
罗晓干
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2011-11-24
得分:0 
回复 10楼 jianyuling00
哥哥,没有吧,,,for里面不能嵌入do 吗???????不会吧
2012-03-18 18:23
迷上编程
Rank: 2
等 级:论坛游民
帖 子:140
专家分:86
注 册:2012-3-11
得分:0 
呼呼!
2012-03-18 18:27
许锋
Rank: 2
等 级:论坛游民
帖 子:5
专家分:12
注 册:2012-3-13
得分:8 
#include <stdio.h>
int main(void)
{
    int i, digit, m, n, number, sum;                     
    int repeat, ri;

    scanf("%d",&repeat);
    for(ri = 1; ri <= repeat; ri++){
        scanf("%d%d", &m, &n);
        printf("result:\n");
   
 for(i=m;i<=n;i++){
number=i;//这样就对了 放里面 就死循环了呀

    digit=0;
   do{
        digit=digit+(number%10)*(number%10)*(number%10);
    number=number/10;}
    while(number!=0);
  
  if(digit==i)
  printf("%d\n", i);
    }
  }
}
2012-03-18 19:00
zhang921210
Rank: 2
等 级:论坛游民
帖 子:2
专家分:20
注 册:2012-3-17
得分:0 
#include <stdio.h>
 int main(void)
 {
     int i, digit, m, n, number, sum;                     
    int repeat, ri;
 
    scanf("%d",&repeat);
     for(ri = 1; ri <= repeat; ri++){
         scanf("%d%d", &m, &n);
         printf("result:\n");
      for(i=m;i<=n;i++){
     digit=0;
    do{
     number=i;
     digit=digit+(number%10)*(number%10)*(number%10);
     number=number/10;}
     while(number!=0);
   
   if(digit==i)
   printf("%d\n", i);
     }
   }
 }
楼主中的do循环有问题.   
     do{
     number=i;
     digit=digit+(number%10)*(number%10)*(number%10);
     number=number/10;}
     while(number!=0);
你看.你首先将i的值赋给number,但是后面number=number/10.然后判断number不等于0,如果不等于0,那么继续执行do语句体中的内容.于是number重新被赋值为i,等于number=number/10这个语句放在后面没用.
2012-03-18 21:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-363521-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.319571 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved