#include <iostream>
#include <iomanip>
using namespace std;
int calculate ()
{
double a;
double b;
a =(3.0);
b =(5.0);
cout << " " << fixed << setprecision (1) << a << "\n" << endl;
cout << "* " << fixed << setprecision (1) << b << "\n" << endl;
cout << "------" << endl;
cout << fixed << setprecision (2) << a*b << "\n" << endl;
system("PAUSE");
return 0;
}
int calculate(int a, int b, int c)
{
double a;
double b;
double c;
a =(7.1);
b =(8.3);
c =(2.2);
cout << " " << fixed << setprecision (1) << a << "\n" << endl;
cout << "* " << fixed << setprecision (1) << b << "\n" << endl;
cout << "- " << fixed << setprecision (1) << c << "\n" << endl;
cout << "------" << endl;
cout << fixed << setprecision (2) << (a*b)-c << "\n" << endl;
system("PAUSE");
return 0;
}
问:为什么我必须更改doubles>int?有什么突出的地方是错的吗?
输出如下:1>- Build started: Project: HW1-2,配置:调试错误- 1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(21):HW1-2.cpp 1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(22):C2082:重新定义形参'a‘1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(21):error C2082:重新定义形参'b’1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(23):error C2082:重新定义形参参数'c‘整型警告C4244:'=’:从'double‘转换为’1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(24):‘,可能丢失data 1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(25):警告C4244:'=‘:从'double’转换为'int',可能丢失data 1>c:\users\asus\desktop\hw1-2\hw1-2\hw1-2.cpp(25):警告C4244:'=‘:从'double’转换为'int',可能丢失data ==========生成:0成功,1失败,0最新,0跳过==========
发布于 2012-09-18 13:00:07
您有两个名为main()
的函数。我不知道您想要实现什么,但是函数在名称空间中必须具有唯一的名称。
您可以随心所欲地命名函数。但是,main()
是特别的--它是程序的入口点,在程序运行时被调用。如果你有另一个函数,如果你想要执行它,你需要自己从main()
内部调用它:
int foo(int c)
{
return c + 2;
}
int main()
{
int a = 1;
int b = foo(a);
return b;
}
发布于 2012-09-18 13:02:01
你的问题很可能在这一行上:
(a*b)c
您在这里想要实现什么?你的编译器应该会抱怨有一个缺少分号的地方。这是无效的c++。您需要在(a*b)
和c
之间指定另一个操作数(+、-、*等
发布于 2012-09-18 13:02:18
(a*b)c
<--错误
如果要进行乘法运算,则应为(a*b)*c
EDIT -看起来像是你想做这个(a*b) - c
,也可以写成a*b - c
。
https://stackoverflow.com/questions/12470615
复制相似问题