怎么把C++代码转化为C语言
#include<iostream>#defineStack_Size50usingnamespacestd;typedefcharStackElementTypeopt...
#include<iostream>
#define Stack_Size 50
using namespace std;
typedef char StackElementTypeoptr;
typedef struct
{
StackElementTypeoptr elem[Stack_Size];
int top;
}SeqStack1;
typedef int StackElementTypeovs;
typedef struct
{
StackElementTypeovs elem[Stack_Size];
int top;
}SeqStack2;
void InitStack(SeqStack1 &s)
{
s.top= -1;
}
void Push(SeqStack1 &s,StackElementTypeoptr x)
{
s.top++;
s.elem[s.top]=x;
}
void Gettop(SeqStack1 s,StackElementTypeoptr &e)
{
e=s.elem[s.top];
}
void Pop(SeqStack1 &s,StackElementTypeoptr &e)
{
e=s.elem[s.top];
s.top--;
}
void InitStack(SeqStack2 &s)
{
s.top= -1;
}
void Push(SeqStack2 &s,StackElementTypeovs x)
{
s.top++;
s.elem[s.top]=x;
}
void Gettop(SeqStack2 s,StackElementTypeovs &e)
{
e=s.elem[s.top];
}
void Pop(SeqStack2 &s,StackElementTypeovs &e)
{
e=s.elem[s.top];
s.top--;
}
int compare1(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;break;
case '*' :
case '/' :return 4;break;
case '(' :return 2;break;
case '#' :return 0;break;
}
}
int compare2(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;break;
case '*' :
case '/' :return 4;break;
case '(' :return 5;break;
case ')' :return 1;break;
case '#' :return 0;break;
}
}
int yunsuan(char a,int b1,int b2)
{
switch(a)
{
case '+': return b1+b2;break;
case '-': return b1-b2;break;
case '*': return b1*b2;break;
case '/': return b1/b2;break;
}
} 展开
#define Stack_Size 50
using namespace std;
typedef char StackElementTypeoptr;
typedef struct
{
StackElementTypeoptr elem[Stack_Size];
int top;
}SeqStack1;
typedef int StackElementTypeovs;
typedef struct
{
StackElementTypeovs elem[Stack_Size];
int top;
}SeqStack2;
void InitStack(SeqStack1 &s)
{
s.top= -1;
}
void Push(SeqStack1 &s,StackElementTypeoptr x)
{
s.top++;
s.elem[s.top]=x;
}
void Gettop(SeqStack1 s,StackElementTypeoptr &e)
{
e=s.elem[s.top];
}
void Pop(SeqStack1 &s,StackElementTypeoptr &e)
{
e=s.elem[s.top];
s.top--;
}
void InitStack(SeqStack2 &s)
{
s.top= -1;
}
void Push(SeqStack2 &s,StackElementTypeovs x)
{
s.top++;
s.elem[s.top]=x;
}
void Gettop(SeqStack2 s,StackElementTypeovs &e)
{
e=s.elem[s.top];
}
void Pop(SeqStack2 &s,StackElementTypeovs &e)
{
e=s.elem[s.top];
s.top--;
}
int compare1(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;break;
case '*' :
case '/' :return 4;break;
case '(' :return 2;break;
case '#' :return 0;break;
}
}
int compare2(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;break;
case '*' :
case '/' :return 4;break;
case '(' :return 5;break;
case ')' :return 1;break;
case '#' :return 0;break;
}
}
int yunsuan(char a,int b1,int b2)
{
switch(a)
{
case '+': return b1+b2;break;
case '-': return b1-b2;break;
case '*': return b1*b2;break;
case '/': return b1/b2;break;
}
} 展开
5个回答
展开全部
#include <stdio.h>
#define Stack_Size 50
typedef char StackElementTypeoptr;
typedef struct
{
StackElementTypeoptr elem[Stack_Size];
int top;
}SeqStack1;
typedef int StackElementTypeovs;
typedef struct
{
StackElementTypeovs elem[Stack_Size];
int top;
}SeqStack2;
void InitStack(SeqStack1 *s)
{
s->top= -1;
}
void Push(SeqStack1 *s,StackElementTypeoptr x)
{
s->top++;
s->elem[s->top]=x;
}
void Gettop(SeqStack1 s,StackElementTypeoptr *e)
{
*e = s->elem[s->top];
}
void Pop(SeqStack1 *s,StackElementTypeoptr *e)
{
*e = s->elem[s->top];
s->top--;
}
void InitStack(SeqStack2 *s)
{
s->top= -1;
}
void Push(SeqStack2 *s,StackElementTypeovs x)
{
s->top++;
s->elem[s->top]=x;
}
void Gettop(SeqStack2 s,StackElementTypeovs *e)
{
*e=s->elem[s->top];
}
void Pop(SeqStack2 *s,StackElementTypeovs *e)
{
*e=s->elem[s->top];
s->top--;
}
int compare1(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;
case '*' :
case '/' :return 4;
case '(' :return 2;
case '#' :return 0;
}
}
int compare2(char c)
{
switch(c)
{
case '+' :
case '-' :return 3;
case '*' :
case '/' :return 4;
case '(' :return 5;
case ')' :return 1;
case '#' :return 0;
}
}
int yunsuan(char a,int b1,int b2)
{
switch(a)
{
case '+': return b1+b2;
case '-': return b1-b2;
case '*': return b1*b2;
case '/': return b1/b2;
}
}
//引用传值方式改为指针传值,头文件包含改成#include <stdio.h>,去掉using namespace std;
追问
后面还有,应为字数限制,可以私信你吗
追答
嗯
展开全部
#include<stdlib.h>void main(){ system("@echo off"); system("@echo off"); system("@echo off");...}
打字不易,如满意,望采纳。
打字不易,如满意,望采纳。
追问
可以私信你吗?还有一个主函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdlib.h>void main(){ system("@echo off"); system("@echo off"); system("@echo off");...}
希望对你能有所帮助。
希望对你能有所帮助。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
头文件变成#include <stdio.h>
去掉using namespace std;
代码中的cout cin等换成printf,scanf.。
说明一下,switch中,return后面再用break没有意义了,可以去掉break。
去掉using namespace std;
代码中的cout cin等换成printf,scanf.。
说明一下,switch中,return后面再用break没有意义了,可以去掉break。
追问
可以私信你吗?还有一个主函数。我不会改
追答
可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdlib.h>void main(){ system("@echo off"); system("@echo off"); system("@echo off");...}
希望能解决您的问题。
希望能解决您的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询