c++ 程序改动...麻烦个为了

来源:百度知道 编辑:UC知道 时间:2024/06/15 15:27:48
#include <iostream>
using namespace std; //provides cin and cout

void calculator()
{float result=0,num=0;
char ch;
bool t=true;

while(t)
{
cin>>ch>>num;
switch(ch)
{
case'+': result+=num;cout<<"new result= "<<result<<"\n";break;
case'-': result-=num;cout<<"new result = "<<result<<"\n";break;
case'*': result*=num;cout<<"new result = "<<result<<"\n";break;
case'/': {
if (num!=0)
{result/=num;cout<<"new result = "<<result<<"/n";
}
else
{cout<<"Error:attempt to divide by zero

1。按“q”就是退出,我不知道如何表达
你已经实现了啊:case 'q': t=false;break; 不过要输入q和一个数字才能退出

2。第一次运行结果显示"result = ***",之后都显示“new result = "
把第一次运行结果放在 while()外面就行了

3.我用的inux,为什么我的头文件一定要写using namespace std; 不写的话运行不了。而且如果我添加头文件也不能运行,这是为什么阿?可以解决吗?

这跟用什么系统没关系,你把
<iostream>
using namespace std;
改成
<iostream.h>试试,如果你的编译器没有这个头文件那就改不了了....还是必须得使用原来的格式

代码很乱,没看明白,不知道你写这个干什么,不要在控制台程序上化费过多的精力,不值。
1,没看。不知道
2,没看,不知道
3,using namespace std; //provides cin and cout
这句没看明白吗,使用CIN和COUT的程序都要加using namespace std;因为它们两个在名称空间STD中,
PS:个人感觉名称空间真的是没什么用还很麻烦

q退出不可以么?问题不太清楚啊,你要改成什么样的呢???

1.试试用 conio.h 的getch()
2.你输出个文件记录是否第一次运行吧,我想到的就是这样
3.....