linux系统下用Ubuntu编写的c语言计算器,关键如何输入一长串式子直接得出答案 50

命令行模式下运行,请尽早回复... 命令行模式下运行,请尽早回复 展开
 我来答
匿名用户
2013-12-11
展开全部
第一步:打开终端,随便进入一个文件夹用于存放你编写的程序
#cd /home/usr/workspace
#vi Hello.c
接着你就会看到vi编辑器,按I开始输入,接着输入你的代码,
输完后按Esc,再输入":wq"(引号内)保存退出,
好,现在你已经用vi编辑好了你程序。
第二步:用gcc编译你的程序
在终端输入
#gcc -o hello hello.c
编译完成后,在你的文件中出现一个hello运行文件。
第三步:运行编译好到hello文件,在终端输入
#./hello
到这一步你的程序开始运行了。
追问
这个我知道,不是问这个……
匿名用户
2013-12-12
展开全部
#include<stdio.h>
int main()
{
int col,row;//代表行和列
printf("请输入行数:");
scanf("%d",&col);
printf("请输入列数:");
scanf("%d",&row);
int a[col][row];//事实证明这样是可以用的,只要在声明的时候里面是有值的就可以
int i , j ;
for(i = 0;i < col;i++)
{
for(j = 0;j < row;j++)
{
printf("请输入第%d行%d列的数:",(i+1),(j+1));
scanf("%d",&a[i][j]);
}
}
printf("数组为:\n");
for(i = 0;i < col;i++)
{
for(j = 0;j < row;j++)
{
printf("\t%d",a[i][j]);
}
printf("\n");
}
return 0;
}
运行结果如下

mars@Ubuntu:~/桌面/C$ gcc demo4_7.c -o demo4_7
mars@ubuntu:~/桌面/C$ ./demo4_7
请输入行数:3
请输入列数:2
请输入第1行1列的数:1
请输入第1行2列的数:2
请输入第2行1列的数:3
请输入第2行2列的数:4
请输入第3行1列的数:5
请输入第3行2列的数:6
数组为:
1 2
3 4
5 6
linux
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mafangsan
2013-12-11 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1万
采纳率:71%
帮助的人:2598万
展开全部
你找一本编译原理的书看一下这个问题就简单了。

因为要涉及到运算符的优先级等。
具体算法:
可以用两个栈,一个栈存储运算符号,一个栈存储运算对象,然后不停压栈、出栈,计算。
追问
还没学过栈啊……可以详细点吗?或者给一个简单的例子?
追答
如果这样的话,不建议你写这么复杂的计算器,因为运算符是有优先级的,例如先乘除后加减。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
上帝模式x
2013-12-11 · TA获得超过196个赞
知道答主
回答量:45
采纳率:0%
帮助的人:55.3万
展开全部
自己写个程序把命令行输入的公式解析下不就行了?这个又不难
追问
刚学,时间比较紧,而且你要能识别小数,负数,ln,sin等函数,还有括号匹配等问题,比较麻烦,我想找一个比较好的算法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ccccyuyan
2013-12-11 · TA获得超过217个赞
知道答主
回答量:201
采纳率:0%
帮助的人:55.8万
展开全部
输入一个长式子 ,你要自己在代码中进行处理 对出现+-*/()[ ] 进行不同的处理 才行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式