C++输入输出格式,及其他零碎知识的整合
来源:互联网 发布:淘宝 手机 假货 编辑:程序博客网 时间:2024/05/01 16:23
关于C++输入输出格式、以及其他容易忘记的知识的整合。
首先是题目:
输入一串大写字母串(包括空格),输出的Sum是每个英文字母在字母表中的位置及字符串的位置的乘积之和(空格为0)。
举例:
ACM: 1*1 + 2*3 + 3*13 = 46
MID CENTRAL: 1*13 + 2*9 + 3*4 + 4*0 + 5*3+ 6*5 + 7*14 + 8*20 + 9*18 + 10*1 + 11*12 = 650
输入输出格式:
(一块以‘#’结束的字母串块及一块结果输出块)
#include<iostream>using namespace std;int main(){ char a[256];//255会报错,若输入255个字符容易溢出 int count, i, re[256], j = 0;//re为存放结果的数组 cin.getline(a,256);//读入键盘输入(包括空格) while(a[0]!= '#')//判结束标志 { i = 0;count = 0; while(a[i] != 0)//0是此字母串结束标志 { if(a[i] == ' ') i++; else { count = count + (i+1) * (a[i] - 64); i++; } } re[j] = count; j ++; cin.getline(a,256); } for(i = 0; i< j; i++) cout<<re[i]<<endl; return 0;}
一、输入输出格式(cin、getline、get的对比)
1. cin:不读入TAB、空格、回车。
原理:cin用空格回车确定字符串的界。当读到空格回车时,自动添加结束标志并清空缓冲池,同时丢弃缓冲区令输入结束的结束符。
2. getline:读一行数据。
原理:当遇到回车时才添加字符串结束标志,同时丢弃缓冲区的回车。当输入超长时,不会执行剩下的输入,出现错误。
用法:cin.getline(数组名,数组长度,结束符)。
3. get:读一行数据。
原理:同getline大体类似,当输入字符时不丢弃缓冲区的enter,输入字符串时丢弃enter,可是不丢弃结束符。当超长时,不会发生输入错误,把超出部分放在缓冲区中。
用法:cin.get(数组名,数组长度,结束符)。
参考资料:
关于缓冲区详解
C++ 读取键盘输入(cin/cin.getline()/cin.get()/cin.clear())
基于C++ cin、cin.get()、cin.getline()、getline()、gets()函数的使用详解
二、ACM错误提示
Compiling 代码正在后台编译
Restricted Function 代码中使用了不安全的函数
Compilation Error 代码编译错误,可以点击查看编译错误细节
Running 程序运行中
Time Limit Exceeded 程序超过了题目的时间限制
Memory Limit Exceeded 程序超过了题目的内存限制
Runtime Error:SIGFPE 程序运行时错误:浮点数异常
Runtime Error:SIGSEGV 程序运行时错误:段错误
Presentation Error 程序正确,但是输出格式有错误
Accepted 程序正确,题目已经正确解答
Wrong Answer 程序不正确
- C++输入输出格式,及其他零碎知识的整合
- c/c++ 的零碎知识
- [C language]一些零碎知识的解释
- 关于C语言的一些零碎知识
- C语言的一些零碎知识
- Objective C 的一些零碎知识
- C/C++一些零碎的知识
- 零碎的Objective-C知识 (二)
- 零碎的Objective-C知识 (一)
- 零碎的Objective-C知识 (三)
- 【C++】零碎知识
- 获取操作系统的编码格式及其他
- oracle的零碎知识
- 一些零碎的知识
- js 零碎的知识
- URL的零碎知识
- 零碎的知识
- C/C++零碎知识总结
- Windows 2000内存篇 分页机制介绍
- Notepad++ 配置笔记
- APUE 学习笔记(第四章)
- spark:学习杂记+案例--41
- 重写父类方法
- C++输入输出格式,及其他零碎知识的整合
- SHELL学习笔记1
- hihocoder 1150 基站选址
- linux编译使用静态库和动态库
- 容易看懂的才是好代码
- [Practical.Vim(2012.9)].Drew.Neil.Tip10学习摘要
- MediaPlayer 生命周期详解
- hdu 4046 Panda (线段树,单点更新,区间求和)
- Binary Tree Maximum Path Sum