5.9、5.10、5.11
#include <iostream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
void main()
{
int a_num = 0, e_num = 0, i_num = 0, o_num = 0, u_num = 0, space_num = 0, table_num = 0, newline_num=0;
char ch;
while (cin >> ch && ch != '~')
{
switch (ch)
{
case 'a':
case 'A':
++a_num;
break;
case 'e':
case 'E':
++e_num;
break;
case 'i':
case 'I':
++i_num;
break;
case 'o':
case 'O':
++o_num;
break;
case 'u':
case 'U':
++u_num;
break;
case ' ':
++space_num;
break;
case '\t':
++table_num;
break;
case '\n':
++newline_num;
break;
}
}
cout << "元音字母a的个数是:" << a_num << endl;
cout << "元音字母e的个数是:" << e_num << endl;
cout << "元音字母i的个数是:" << i_num << endl;
cout << "元音字母o的个数是:" << o_num << endl;
cout << "元音字母u的个数是:" << u_num << endl;
cout << "空格的个数是:" << space_num << endl;
cout << "制表符个数是:" << table_num << endl;
cout << "换行符个数是:" << newline_num << endl;
}
5.14暂未解决
5.17
#include <iostream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
void main()
{
vector<int> v1 = { 0,1,1,2 ,7};
vector<int> v2 = { 0,1,1,2,3,5,8 };
vector<int> v3;
int small_size = v1.size() < v2.size() ? v1.size() : v2.size();
for (int i = 0; i < small_size; ++i)
{
v3.push_back(v2[i]);
}
if (v1 == v3)
cout << "是前缀" << endl;
else
cout << "不是前缀" << endl;
}
5.19
#include <iostream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
void main()
{
do
{
cout << "输入两个string" << endl;
string s1, s2;
cin >> s1 >> s2;
cout <<( s1.size() < s2.size() ? s1 : s2 )<< endl;
} while (cin);
}
5.20
#include <iostream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
void main()
{
string s1, tmp;
int flag = 0;
cout << "请输入一个单词" << endl;
while (cin >> s1 )
{
if (s1 == tmp)
{
cout << "单词" << s1 << "重复出现" << endl;
flag = 1;
break;
}
else
{
tmp = s1;
cout << "如果继续,请再输入一个单词;如果停止输入,请按crtl+z" << endl;
}
}
if (flag == 0)
{
cout << "没有重复单词出现" << endl;
}
}
5.21
#include <iostream>
#include <vector>
#include <string>
using namespace std;
using std::vector;
void main()
{
string s1, tmp;
int flag = 0;
cout << "请输入一个单词" << endl;
while (cin >> s1 )
{
if (s1[0] >= 'A'&&s1[0] < 'Z')
{
if (s1 == tmp)
{
cout << "单词" << s1 << "重复出现" << endl;
flag = 1;
break;
}
else
{
tmp = s1;
cout << "如果继续,请再输入一个单词;如果停止输入,请按crtl+z" << endl;
}
}
else
cout << "如果继续,请再输入一个单词;如果停止输入,请按crtl+z" << endl;
continue;
}
if (flag == 0)
{
cout << "没有以大写字母开头的单词重复出现" << endl;
}
}