我有个c++问题啊 编译通过 但还是不能执行 谁能帮我一下 30

我明天就要交程序了两个月的努力却还是不能实现你们谁帮帮我吧好吗谢谢你们了谢谢哥哥姐姐了:)#include<iostream>#include<cstring>#incl... 我明天就要交程序了 两个月的努力 却还是不能实现 你们谁帮帮我吧好吗谢谢你们了 谢谢哥哥姐姐了:)
#include <iostream>
#include <cstring>
#include <math.h>
using namespace std;

double change(string ch, int x, int y)
{
int length,size,integer,i;
double dom ,real;
string ch1;
ch1=ch.substr(x,y-x);
length=ch1.length();
if (ch1.find('.'))
{
for(i=0;i<=length;i++)
{
if (ch1[i]=='.')
{
size=i;break;
}
}
for(i=size-1,integer=0;i>=x;i--)
{
integer+=((int) ch1[i])*(int)pow(10, i);
}
for (i=size=1,dom=0;i<=(x+length);i++)
{
dom+=((int) ch1[i])/(int)pow(10, i);
}
return real=integer+dom;
}
else
{
for(i=x+length;i>=x;i--)
{
return real=((int) ch1[i])*(int)pow(10, i);
}
}
}

//////////////////////////////////////////////////////
//
// calculate the value
//
//////////////////////////////////////////////////////
double count(string ch, int x,int y)
{
string cha1=ch.substr(x,y-x);
int length=cha1.length();
string chc; int size[32],i,m,n,mmax;
for(i=0,m=0,mmax;i<=length;i++)
{
if (cha1[i]=='+' || cha1[i]=='-' || cha1[i]=='*' || cha1[i]=='/')
{
chc[m]=cha1[i];
size[m]=i;
m++ ; mmax++;
}
}
size[m+1]=y-x;
double result[64];
for (n=0,m=0;m<=mmax+1;n++ ,m++)
{
result[n]=change(cha1,size[m],size[m+1]);
}
if(chc[0]='-') result[0]=-result[0];
for(m=1;m<=mmax;m++)
{
if (chc[m]=='*' || chc[m]=='/')
{
switch (chc[m])
{
case '*': result[m-1]=result[m-1]*result[m];break;
case '/': result[m-1]=result[m-1]/result[m];break;
default:;
}
for(i=m;i<mmax;i++)
{
chc[i]=chc[i+1];
result[i]=result[i+1];
mmax--;
}
}
}
for(m=1;m<mmax;m++)
{
if(chc[m]=='+'||chc[m]=='-')
{
switch (chc[m])
{
case '+': result[m-1]=result[m-1]+result[m];break;
case '-': result[m-1]=result[m-1]-result[m]; break;
default:;
}
for(i=m;i<=mmax;i++)
{
chc[i]=chc[i+1];
result[i]=result[i+1];
mmax--;
}
}
}
return result[0];
}

//////////////////////////////////////////
if (number/(1/(int)pow(10, abs(i)))>=10)
{
continue;
}
else
{
index2=i;break;
}
}
length=index1-index2; int length1; string ins;
if (index1==0 && index2==0)
{
return "0";
else
{
for(i=index2,length1=length;i<=index1;i++)
{
ins[length1]=(char)number%(int)pow(10, i)*(int)pow(10, 1-i) ;
number-=(int)number%(int)pow(10, i);
length1--;
}
}
ins.insert(length-index2,".");
if(tnumber<0)
{
ins.insert(0,"-");
}
else
{
ins.insert(0,"+");
}
return ins;
}
int main()
{
展开
 我来答
Zz小虾米
2006-05-26 · TA获得超过186个赞
知道小有建树答主
回答量:503
采纳率:0%
帮助的人:239万
展开全部
#include <iostream>
#include <cstring>
#include <math.h>
using namespace std;

double change(string ch, int x, int y)
{
int length,size,integer,i;
double dom ,real;
string ch1;
ch1=ch.substr(x,y-x);
length=ch1.length();
if (ch1.find('.'))
{
for(i=0;i<=length;i++)
{
if (ch1[i]=='.')
{
size=i;break;
}
}
for(i=size-1,integer=0;i>=x;i--)
{
integer+=((int) ch1[i])*(int)pow(10, i);
}
for (i=size=1,dom=0;i<=(x+length);i++)
{
dom+=((int) ch1[i])/(int)pow(10, i);
}
return real=integer+dom;
}
else
{
for(i=x+length;i>=x;i--)
{
return real=((int) ch1[i])*(int)pow(10, i);
}
}
}

//////////////////////////////////////////////////////
//
// calculate the value
//
//////////////////////////////////////////////////////
double count(string ch, int x,int y)
{
string cha1=ch.substr(x,y-x);
int length=cha1.length();
string chc; int size[32],i,m,n,mmax;
for(i=0,m=0,mmax;i<=length;i++)
{
if (cha1[i]=='+' || cha1[i]=='-' || cha1[i]=='*' || cha1[i]=='/')
{
chc[m]=cha1[i];
size[m]=i;
m++ ; mmax++;
}
}
size[m+1]=y-x;
double result[64];
for (n=0,m=0;m<=mmax+1;n++ ,m++)
{
result[n]=change(cha1,size[m],size[m+1]);
}
if(chc[0]='-') result[0]=-result[0];
for(m=1;m<=mmax;m++)
{
if (chc[m]=='*' || chc[m]=='/')
{
switch (chc[m])
{
case '*': result[m-1]=result[m-1]*result[m];break;
case '/': result[m-1]=result[m-1]/result[m];break;
default:;
}
for(i=m;i<mmax;i++)
{
chc[i]=chc[i+1];
result[i]=result[i+1];
mmax--;
}
}
}
for(m=1;m<mmax;m++)
{
if(chc[m]=='+'||chc[m]=='-')
{
switch (chc[m])
{
case '+': result[m-1]=result[m-1]+result[m];break;
case '-': result[m-1]=result[m-1]-result[m]; break;
default:;
}
for(i=m;i<=mmax;i++)
{
chc[i]=chc[i+1];
result[i]=result[i+1];
mmax--;
}
}
}
return result[0];
}
int main()
{
string ch;
int x,y;
cin>>ch;
cin>>x>>y;
cout<<count(ch,x,y)<<endl;
return 0;
}
百度网友695cd7b
2006-05-26 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:0
展开全部
你的程序 要完成什么功能 这样容易改点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d7a87434f
2006-05-26 · 超过19用户采纳过TA的回答
知道答主
回答量:118
采纳率:0%
帮助的人:74.8万
展开全部
介绍一下你的程序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gis19831203
2006-05-26 · TA获得超过690个赞
知道小有建树答主
回答量:914
采纳率:0%
帮助的人:834万
展开全部
好象没有main函数,怎么能执行呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式