ACM刷题需要注意关于输入输出的问题

下面总结一下刷题需要注意的问题:

1. scanf函数返回值就是读出的变量个数,没有读到数据返回-1,EOF是一个预定义的常量,为-1;

2. scanf函数读入数据,不能规定精度。如:scanf("%7.2f", &n);是不合法的;

3. C语言不支持在for语句里定义变量。如:for(int i=0; i<4; i++)是不合法的。

三种输入:

1. 数据量不定的情况:用while(scanf("%d", &n) != EOF);

2. 给定数据个数的情况:用scanf("%d", &n); while(n--){};

3. 以某数值或符号结束的情况:用while(scanf("%d", &n), n).

三种输出:

1. 直接输出数据然后换行;

2. 每组数据后跟一个空行;

3.没两组数据之间跟一个空行,最后一组数据换行。

时间: 2024-10-11 03:51:46

ACM刷题需要注意关于输入输出的问题的相关文章

ACM 刷题小技巧【转】

转载自URl-team ACM做题过程中的一些小技巧. 1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 大数据输入输出时最好不要用cin.cout,防止超时. 2.有时候int型不够用,可以用long long或__int64型(两个下划线__). 值类型表示值介于 -2^63 ( -9,223,372,036,854,775,808) 到2^63-1(+9,223,372,036,854,775,807 )之间的整数.

acm刷题记录

我感觉毫无目的地刷题没有意义,便记录每周的刷题,以此激励自己! ----------6.6-------- [vijos1055]奶牛浴场                                      最大化               推荐IOI论文<浅谈用极大化思想解决最大子矩形问题> codeforces 679B - Bear and Tower of Cubes      xjb搞 codeforces  680A - Bear and Five Cards       

ACM刷题常用链接

武汉科技大学  http://acm.wust.edu.cn/ 华中科技大学 http://acm.hust.edu.cn/vjudge/toIndex.action 杭州电子科技大学  http://acm.hdu.edu.cn/listproblem.php?vol=1 北京大学  http://poj.org/ 浙江大学 http://acm.zju.edu.cn/onlinejudge/showProblemsets.do 湖南大学 http://acm.hnu.cn/ RQNOJ ht

Oyk的ACM刷题记录(始于2015年2月29日,可能含剧透)

Online Judge 题目序号/题目 简单大意/题解 犯2情况 2月29日 SPOJ GSS1  不带更新区间最大子段和. 线段树维护 区间从左/右开始的最大值.区间最大值.区间和. 1.输出忘了换行. 2.打错了一个字母. SPOJ GSS2 区间不重复最大子段和. 离线维护s[i..now],线段树维护 区间历史最大值.区间历史最大更新值.区间现在最大值.区间现在更新值. 询问输出区间历史最大值. 1.线段树询问忘记写pushdown了. SPOJ TEST 输出所有42前的数. 1.不

ACM 刷题错误总结 持续更新并持续回顾中o(╯□╰)o

一.段错误/RE 1.& 变量取地址 2.数组越界 3.爆栈, 很可能是死循环,ruturn的边界没有处理好,或者是递归的内容里有死循环的部分. 4.线段树 逢写必错,都是build(i*2+1,tmp.mid+1,r);这里忘记加一了. 二.一些莫名其妙的逻辑错误 1.多重的if else 检查是不是有问题,写if else一定要把所有的可能情况罗列,以保证没有逻辑错误.if else 一定把所有的情况逻辑都理清,这题Debug的时候稍微变了下写法,又WA了很久,代码也贴在后面了.Debug的

acm刷题

1.STL栈 hdu 1237 ‘简单计算器’ 2.STL 优先队列 priority_queue hdu 1873 看病要排队 #include<iostream> #include<queue> //加这个文件是因为杭电的oj不行 #include<string> using namespace std; struct Node{ int n, p; bool operator < (const Node &t) const { if (p == t.

基于C#解决OJ刷题之输入输出问题的总结(AKOJ1064-1071A+B问题汇总)

声明:题目部分为akoj题目,代码为本人AC代码. 因为本人学校的oj支持各种环境,非常正常的当中就包括了C#.然暑假在家较为空暇,本着学习C#和复习算法的态度和目的,就又開始折腾起oj了. 题目部分是最基础的A+B系列,来看看C#的输入输出是怎么一回事吧 题目地址:http://183.167.205.82:8081/JudgeOnline/problemlist?volume=1 本文由csdn-jtahstu原创.转载请注明出处,欢迎志同道合的朋友一起交流学习.本人QQ:137375842

acm比赛刷题小技巧

ACM做题过程中的一些小技巧. 1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 大数据输入输出时最好不要用cin.cout,防止超时. 2.有时候int型不够用,可以用long long或__int64型(两个下划线__). 值类型表示值介于 -2^63 ( -9,223,372,036,854,775,808) 到2^63-1(+9,223,372,036,854,775,807 )之间的整数. printf("%I6

比较好的刷题网站推荐

1.Leetcode鼎鼎大名的Leetcode,据不完全统计在上面被刷过的题可以围绕地球三圈.(没说赤道哈,就是这么严谨.)总之,很多国内外的码农在上面刷题.难度从easy到hard都有,而且覆盖面极广.现在还增加了数据库和shell,相匹配的论坛也可以多看看.很锻炼和国外码农沟通的能力,对于以后去混Github也有好处. 特点:各种语言支持很广泛,题型覆盖很广,测试数据集较弱. 2.Codility同样一家著名的国外刷题网站.和Leetcode不同,它是专门帮各大软件公司笔试用的,只是副业提供