标题:字符串的输入输出
我的原创系列
复制我头顶上的(一定要!一定要!一定要!)
目录:1.getline()
2.cin.getline()
3.gets()
1.getline()
作用:接受一个字符串,可以接收空格并输出,读取整行文本。
格式:getline(输入流,读入的字符串存放在这里,结束符)
注:结束符默认是回车
代码:()
2.cin.getline()
作用:接受一个字符串,可以接收空格并输出,读取整行文本。
格式:cin.getline(读入的字符串存放在这里,输入的长度)
注:会吃掉最后一个字符。
代码:
3.gets()
作用:接受一个字符串,可以接收空格并输出。
格式:gets(读入的字符串存放在这里)
代码:
再来一道题目:强大的加法
说是强大的加法,其实也并没有那么可怕。
你的工作很容易,就是把一行输入的数字加起来就可以啦!
输入说明
每行都有一大堆数字,但都很kind,不会刁难你的,用 longint 就可以了,而且都不是负数。
输出说明
输出这一行中出现的所有的数字的和并换行。
范例输入 a
1 2 a 2 5 8 8 8 5
范例输出
3
36
这题的代码:复制了他才能看到它
1 #include <iostream>
2 #include <cstdio>
3 #include <cstring>
4 using namespace std;
5
6 int main() {
7 long int ans, part;
8 int len, i;
9 char in[10000];
10 while(cin.getline(in, sizeof(in))){
11 part = 0; ans = 0; len = strlen(in);
12 for(i=0; i<len; i++){
13 if(in[i]>=48 && in[i]<=57){
14 part = part*10+(in[i]-48);
15 }
16 else if(in[i]==32){
17 ans = ans + part;
18 part = 0;
19 }
20 }
21 printf("%ld
", ans+part);
22 }
23 }