OJ在线判题注意事项(C++版)
2016-08-04 16:50
281 查看
1.正确处理输入格式
常见的输入格式
预先不输入数据的组数预先输入数据的组数
一组数据
应对措施
读到文件结尾读数据组数然后循环
直接读数据
代码
while (cin>>a>>b) { cout<<a + b<< endl; }
cin<<n; for (int i = 0; i < n; i++) { int a, b; cin>>a>>b; cout<<a + b<<endl; }
cin>>a>>b; <span style="font-family: Arial, Helvetica, sans-serif;">cout<<a + b<<endl;</span>
2.正确处理输出格式
不输出case数要输出case数
每个case之后有空行
两个case之间有空行
cin<<n; for (int i = 0; i < n; i++) { int a, b; cin>>a>>b; cout<<a + b<<endl; }
cin<<n; for (int i = 0; i < n; i++) { int a, b; cin>>a>>b; cout<<"Case"<<i+1<<a + b<<endl; }
cin<<n; for (int i = 0; i < n; i++) { int a, b; cin>>a>>b; cout<<"Case"<<i + 1<<a + b<<endl<<endl; }
cin<<n; for (int i = 0; i < n; i++) { int a, b; cin>>a>>b; <span style="white-space:pre"> </span>if (i > 0) { <span style="white-space:pre"> </span>cout<<endl; <span style="white-space:pre"> </span>} cout<<"Case"<<i + 1<<a + b<<endl<<endl; }
3.处理细节与技巧
输入:scanf和cin都是读到空白结束,尽量使用scanf和gets代替cin。
while (scanf("%d%d",&a,&b)!=EOF) 代替 while (cin>>a>>b)
输出:
注意大小写,换行,尽量用printf代替cout。
printf("%d\n", a + b) 代替 cout<<a + b<<endl;
4.常见的结果错误状态
编译错误+格式错误+答案错误+运行超时内存超限+输出超限+返回非零+指针越界
5.用getline读取整行文本
int main() { string line: while(getline(cin,line)) cout<<line<<endl; return 0; }
相关文章推荐
- C语言之冒泡法排序
- 搜索+枚举字符串子串问题
- C/C++知识点(二)
- 通用的单片机驱动lcd1602头文件,驱动液晶lcd1062的通用c语言头文件调用即可
- C++内存泄露及检测工具详解
- c语言"回文"判断
- 一步步将vim改造成C/C++开发环境(IDE)
- C/C++传入数组及怎样限定传入数组的大小
- 数组的一些的应用
- 模板类的继承
- 如何定义一个只能在堆上(栈上)生成对象的类
- 20160804-CPP-map
- c++ new operator与operator new的区别
- C++11读书笔记—7(内存管理)
- c语言静态局部变量
- 转载:C++读取特定路径下文件目录及文件名称
- 极客班C++(下)第一周笔记——operator+的几种实现
- 二叉树详谈(一)
- c语言静态断言
- c++11信号量实现