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

[求助]这是什么问题

[复制链接]
发表于 2009-11-2 06:27:24 | 显示全部楼层 |阅读模式 IP:江苏扬州
#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:29 | 显示全部楼层 IP:江苏扬州
你用的应是vc编译器吧~~~
你先编译(complie),然后再生成.exe文件~~
因为你一开始生成的就是.exe文件
回复

使用道具 举报

发表于 2009-11-2 06:27:34 | 显示全部楼层 IP:江苏扬州
long pow(int x,int y)
{
long var=1;
while (y--) //!!!!可以这样写吗?
var=var*x;
return var;
}
回复

使用道具 举报

发表于 2009-11-2 06:27:40 | 显示全部楼层 IP:江苏扬州
我认为应该是

#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:47 | 显示全部楼层 IP:江苏扬州
没错啊...
回复

使用道具 举报

发表于 2009-11-2 06:27:54 | 显示全部楼层 IP:江苏扬州
#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:01 | 显示全部楼层 IP:江苏扬州
对于楼主的贴子,刚才没看清楚,你是不是要一个数的多小次方,呵呵,
那你自己写的函数是对的!我刚才我的编译器里运行了一下,是对的,
不知道是不是你的编译器有问题!
不过我觉得你的程序可以更短!
#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:08 | 显示全部楼层 IP:江苏扬州
while(y--)
不是太明白啊,是怎么控制循环的?
回复

使用道具 举报

发表于 2009-11-2 06:28:16 | 显示全部楼层 IP:江苏扬州
不是编译器错了,是你选错了工程类型,你是不是选了win32 application?你选择win32 console application 就可以解决问题.关于这两个类型的区别还请高手说明一下,本人也不太明白这两个的区别.
回复

使用道具 举报

发表于 2009-11-2 06:28:24 | 显示全部楼层 IP:江苏扬州
9楼说的应该是对的!我原来好像也犯过这样的错误!!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-30 03:26 , Processed in 0.203903 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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