POJ-3094 Quicksum(cin和getline區別:輸入含有空格)

本題不難,重點在於理解 cin 和 getline 的區別

知識點:

  1. cin 讀取時候遇到空格會認爲是結束符。而 getline 可以讀取一整行包括空格
    詳情:https://blog.csdn.net/weixin_41042404/article/details/80934191
  2. getline 的頭文件是 #include< string >

代碼:

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <string>
using namespace std;

int main()
{
	while (1)
	{
		string str;
		int sum = 0;
		getline(cin, str);    //不能用cin直接讀取,這樣遇到空格會被當做結束符,當做兩部分分別處理
		if (str[0] == '#')
			break;
		for (int i = 0; i < str.length(); i++)
		{
			if (str[i] != ' ')
				sum += (str[i] - 'A' + 1)*(i + 1);
		}
		cout << sum << endl;
	}
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章