高手帮忙看下,哪里有问题?编译的结果?谢谢!

ljun1979 2004-10-30 12:07:31
#include<iostream>
using namespace std;
//
int divisor(int u,int v);
//
int main(){
int a=82,b=52;
cunt<<divisor(a,b)<<endl;
}//
int divisor(int u,int v){
for(int r; v; v=r){
r=u%v; u=v;
}
retutn u;
}//
...全文
104 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
K_BUKER 2004-10-30
  • 打赏
  • 举报
回复
for(int r; v; v=r)这句里面循环初值,循环终止条件都没有给出来!这个循环做不得出来的
goodluckyxl 2004-10-30
  • 打赏
  • 举报
回复
//最大公约数

int GetCommonDivisor( int Numerator, int Denominator )
{
int iCommonDiv = 1;
if( Numerator == 0 )
return 0;
for( int i = 1; i < (Numerator>Denominator ? Numerator/2+1 : Denominator/2+1); ++i )
{
if( (Numerator%i == 0) && (Denominator%i == 0) )
iCommonDiv = i;
}
return iCommonDiv;
}
hillman004 2004-10-30
  • 打赏
  • 举报
回复
for(int r; v; v=r)
这是什么乱七八糟的
估计就错在这了
willko 2004-10-30
  • 打赏
  • 举报
回复
你这个程序是不是求最大公约数的??
ftkghost 2004-10-30
  • 打赏
  • 举报
回复
#include<iostream>
using namespace std;
//
int divisor(int u,int v);

int main(){
int a=82,b=52;
cout<<divisor(a,b)<<endl; //这里是cout 而不是cunt
system("Pause");
return 0; //记得给int main()一个返回值(虽然有的编译器会自己加这句)
}

int divisor(int u,int v)
{
for(int r; v; v=r){
r=u%v;
u=v;
}
return u; //这里是return 而不是retutn
}
meiggy 2004-10-30
  • 打赏
  • 举报
回复
for(int r; v; v=r)循环初值后面给了r=u%v;,循环终止条件就是v,v是0就退出了,执行一个循环后v=r。
所以这句完全正确。
wasoxi 2004-10-30
  • 打赏
  • 举报
回复
using namespace std;
//
int divisor(int u,int v);
//
int main(){
int a=82,b=52;
cout<<divisor(a,b)<<endl;
getch();
}//
int divisor(int u,int v){ //这没错
for(int r; v; v=r){
r=u%v; u=v;
}
return u;
}//

就是把return cout 写错了
呵呵 楼主 这可不应该哦

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧