#include <iostream>
#include <iomanip>
#include <cstdlib>
// function prototypes
void intOutput();
void floatingPointOutput();
void intMathOperations(int rows, int b, int width);
void writeHeaderLine(int width);
void writeMathLine(int a, int b, int width);
using namespace std;
int main()
{
cout << "\nProject 1: Math and Functions";
cout << "\n";
cout << "\n";
cout << "\nProject 1 Start.";
cout << "\nZack Cunningham";
cout << "\n";
cout << "\nInteger Output Demo:";
cout << "\n";
intOutput();
floatingPointOutput();
intMathOperations();
writeHeaderLine();
writeMathLine();
cout << "\n";
cout << "\nProject 1 End.";
cout << "\n";
const int FIELD_WIDTH = 10;
intMathOperations(12, 5, FIELD_WIDTH);
return EXIT_SUCCESS;
}
void intMathOperations(int rows, int b, int width){
cout << "\n";
cout << "\nInteger Math Operations Demo:";
cout << "\n";
writeHeaderLine(width);
cout << "\n";
for (int a = 0; a < rows; ++a){writeMathLine(a, b, width);
}
}
void writeHeaderLine(int width){
cout << "\n";
cout << setw(width) << "a";
cout << setw(width) << "b";
cout << setw(width) << "a * b";
cout << setw(width) << "a / b";
cout << setw(width)<< "a % b";
}
void writeMathLine(int width){
int a;
cout << setw(width) << a;
int b;
int rows;
for (int a = 0; a < rows; ++a){writeMathLine(a, b, width);
}
}
void floatingPointOutput(){
double a = 2000;
double b = 3;
double c = a / b;
cout << "\n" << a << " / " << b << " = ";
cout << "\n" << c;
cout << setprecision(10);
cout << "\n" << setw(20) << c;
cout << scientific; // scientific notation
cout << "\n" << setw(20) << c;
cout << fixed; // standard decimal notation
cout << "\n" << setw(20)<< c;
cout << left; // left justify
cout << "\n" << setw(20) << c;
cout << right;
// right justify (default)
cout << "\n" << setw(20) << c;
cout << setprecision(6); // return to default
cout << "\n" << setw(20) << c;
cout << "\n";
}
// function calls
void intOutput(){
cout << "\nInteger Output Demo:";
cout << "\n";
int a = 12;
int b = 12345678;
cout << "\n....5...10...15...20"; // spacing info
cout << "\n";
cout << "\n" << setw(20) << a;
cout << "\n" << setw(20) << b;
cout << "\n";
cout << "\n" << setw(4) << a;
cout << "\n" << setw(4) << b;
cout << left; // left justified
cout << "\n";
cout << "\n" << setw(20) << a;
cout << "\n" << setw(20) << b;
cout << right; // right (default) justified
cout << "\n";
}
这是我的代码当然,它给了我3个错误,说我的最后3个函数的参数太少了。任何帮助都会很感激!对我来说,看起来所有的论点都是有效的,但我只是一个初学者。
答案 0 :(得分:6)
在这里,您声明一个需要三个参数的函数:
void intMathOperations(int rows, int b, int width);
在这里你可以完全没有任何参数调用它:
intMathOperations();
编译器告诉你这是不正确的。 writeHeaderLine
和writeMathLine
相同。
答案 1 :(得分:2)
您正在调用这些函数而没有参数
void intMathOperations(int rows, int b, int width);
void writeHeaderLine(int width);
void writeMathLine(int a, int b, int width);