| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 636 人关注过本帖
标题:请帮忙看下错在那里?谢谢啦!
只看楼主 加入收藏
ams87
Rank: 1
来 自:湖南
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-7-21
收藏
 问题点数:0 回复次数:6 
请帮忙看下错在那里?谢谢啦!
我是新手...刚接触C这东西,,,,
这个是求最大公约数...别告诉我用函数...我还不会....谢谢
/* Note:Your choice is C IDE */
#include "stdio.h"
main()
{int a,b,c,n;
    scanf("%d,%d",&a,&b);
    if (a>b)
       for(n=b;n>1;--n)
         { if(a/n==0&&b/n==0)
        printf("%d\n",n);
        }
    else
       for(n=a;n>1;--n)
         { if(a/n==0&&b/n==0)
          printf("%d\n",n);
               }
}
2008-07-22 10:54
countryroad
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-1-23
收藏
得分:0 
#include "stdio.h"
void main()
{int a,b,n;
  scanf("%d,%d",&a,&b);
  if (a>b)
    for(n=b;n>1;--n)
    { if(a%n==0 && b%n==0)
    { printf("%d\n",n);
      break;
    }
     }
  else
     for(n=a;n>1;--n)
     { if(a%n==0 && b%n==0)
     {  printf("%d\n",n);
        break;
     }
     }
}
2008-07-22 11:20
ams87
Rank: 1
来 自:湖南
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-7-21
收藏
得分:0 
谢谢啊!~可惜冒似...2个程序没什么区别啊???
2008-07-22 11:41
countryroad
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-1-23
收藏
得分:0 
仔细看看有没有区别之后再作决定。
2008-07-22 11:49
guoxiaoling
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-7-22
收藏
得分:0 
怎么没区别了?
 for(n=b;n>1;--n)
    { if(a%n==0 && b%n==0)
    { printf("%d\n",n);
      break;
    }
     }
加了一个BREAK就使得找出最大公约数后,退出FOR循环。这样就避免了程序继续找下一个公约数。
2008-07-22 11:52
countryroad
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-1-23
收藏
得分:0 
改动之一:a/n==0&&b/n==0 改为 a%n==0 && b%n==0
          请理解一下 / 与 % 的区别,这是本程序很关键的一步。
改动之二:见5楼。
2008-07-22 12:00
ams87
Rank: 1
来 自:湖南
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-7-21
收藏
得分:0 
晕了.....原来...%输成/了...
2008-07-22 17:07
快速回复:请帮忙看下错在那里?谢谢啦!
数据加载中...
 
   



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

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