题目:输入一些数字,求这些数字中的最大值(数字的个数未知)
1、控制台输入输出
在 Clion 和 Linux 下,使用Ctrl+D来结束输入,在Windows下的其他IDE使用Ctrl+Z后再回车来结束输入
#include <iostream>
#define MIN_VALUE 0xffffffff
using namespace std;
int maxValue = MIN_VALUE;
int main(){
int x;
while (cin >> x ){
maxValue = x > maxValue ? x : maxValue ;
}
cout << maxValue << endl;
return 0;
}
下图为代码在Clion下的测试结果
2、重定向输入输出
提交到OJ时直接把第一行的"#define LOCAL"去掉即可
#define LOCAL
#include <iostream>
#define MIN_VALUE 0xffffffff
using namespace std;
int maxValue = MIN_VALUE;
int main(){
#ifdef LOCAL
freopen("../input.txt","r",stdin);
freopen("../output.txt","w",stdout);
#endif
int x;
while (cin >> x ){
maxValue = x > maxValue ? x : maxValue ;
}
cout << maxValue << endl;
return 0;
}
3、文件流输入输出
#include <iostream>
#define MIN_VALUE 0xffffffff
using namespace std;
int maxValue = MIN_VALUE;
int main(){
FILE* input, *output;
input = fopen("../input.txt","rb");
output = fopen("../output.txt","wb");
int x;
while (fscanf(input,"%d",&x) == 1){
maxValue = x > maxValue ? x : maxValue ;
}
fprintf(output,"%d",maxValue);
return 0;
}