- 3.1
using std::cin;
using std::cout;
using std::endl;
using std::cerr;
- 3.2
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main(void)
{
string line, s;
while (getline(cin, line))
{
/*..每次读入一行..*/
}
while (cin >> s)
{
/*..每次读入一个字符串..*/
}
return 0;
}
- 3.3
输入运算符:读入字符,直到遇到空格停止。
getline函数:读入所有字符,直到一行结束。
- 3.4
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main(void)
{
string s1, s2;
cin >> s1 >> s2;
/*..输出较大字符串..*/
cout << (s1>s2?s1:s2) << endl;
/*..输出较长字符串..*/
cout << (s1.size() > s2.size() ? s1 : s2) << endl;
return 0;
}
- 3.5
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main(void)
{
string s;
/*..输出连续大字符串..*/
while (cin >> s)
{
cout << s;
}
/*..输出字符串中加空格..*/
while (cin >> s)
{
cout << s << " ";
}
return 0;
}
- 3.6
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
int main(void)
{
string s;
s = "hello world";
for (auto &c : s)
{
c = 'X';
}
return 0;
}
- 3.7
auto
可以根据变量的类型自动匹配,auto &c : s
匹配的c
为char &c
类型。
- 3.8
for(char &c : s)
{
c = 'X';
}
string::size_type i = 0;
while (s[i])
{
s[i] = 'X';
i++;
}
for循环更易读。
- 3.9
程序的作用为输出字符串的第一个字符。
不合法。
因为字符串未定义。
- 3.10
string s;
cin >> s;
for (auto &c : s)
{
if (!ispunct(c))
{
cout << c;
}
}