新微赢技术网

标题: [求助]这是什么问题 [打印本页]

作者: DJ爱有多痛DJ    时间: 2009-11-2 06:27
标题: [求助]这是什么问题
#include <iostream.h>
long pow(int x,int y);
void main()
{
long m;
int x,y;
cout<<"Enter two intergers:";
cin>>x>>y;
m=pow(x,y);
cout<<"The result is "<<m<<endl;
}
long pow(int x,int y)
{
long var=1;
while(y--)
var=var*x;
return var;
}
这是程序源代码,但不能编译,出现以下错误:
compiling........
Error spawning c1.exe
def.obj-1error(s),owarning(s)
程序编写没问题,但就是不能生成.obj文件
麻烦大家看一下,帮我解决,不胜感激!!

作者: 飞你默属    时间: 2009-11-2 06:27
你用的应是vc编译器吧~~~
你先编译(complie),然后再生成.exe文件~~
因为你一开始生成的就是.exe文件
作者: 大师傅    时间: 2009-11-2 06:27
long pow(int x,int y)
{
long var=1;
while (y--) //!!!!可以这样写吗?
var=var*x;
return var;
}
作者: 皇家㊣贺v    时间: 2009-11-2 06:27
我认为应该是

#include <iostream.h>
using namespace std;

long pow(int x,int y);
void main()
{
long m;
int x,y;
cout<<"Enter two intergers:";
cin>>x>>y;
m=pow(x,y);
cout<<"The result is "<<m<<endl;
}
long pow(int x,int y)
{
int i;
long var=1;
for(i=y;i>0,i--) 因为我也才学不久 不知道这个语句是不是和你的一样
var=var*x;
return var;
}
作者: 海的无奈    时间: 2009-11-2 06:27
没错啊...
作者: 踏浪    时间: 2009-11-2 06:27
#include<iostream.h>
#include<math.h>
double pow(double x,double y);
void main()
{
double m;
double x,y;
cout<<"Enter two intergers:";
cin>>x>>y;
m=pow(x,y);
cout<<"The result is "<<m<<endl;
}
double pow(double x,double y)
{
double var=1;
while(y--)
var=var*x;
return var;
}
对于楼主的问题,有两个
POW这个函数是系统默认的,要包含在头文件<math.h>里,而且变量类型是double 型,
以上是我为你修改后的程序!
作者: 幸福乐园    时间: 2009-11-2 06:28
对于楼主的贴子,刚才没看清楚,你是不是要一个数的多小次方,呵呵,
那你自己写的函数是对的!我刚才我的编译器里运行了一下,是对的,
不知道是不是你的编译器有问题!
不过我觉得你的程序可以更短!
#include<iostream.h>
#include<math.h>
void main()
{
double m;
double x,y;
cout<<"Enter two intergers:";
cin>>x>>y;
m=pow(x,y);
cout<<"The result is "<<m<<endl;
}
以上就足够了!
呵呵,以后多多交流呀!
作者: 宝贝    时间: 2009-11-2 06:28
while(y--)
不是太明白啊,是怎么控制循环的?
作者: 江边人家    时间: 2009-11-2 06:28
不是编译器错了,是你选错了工程类型,你是不是选了win32 application?你选择win32 console application 就可以解决问题.关于这两个类型的区别还请高手说明一下,本人也不太明白这两个的区别.
作者: 冰封シ绝恋    时间: 2009-11-2 06:28
9楼说的应该是对的!我原来好像也犯过这样的错误!!




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2