【发布时间】:2022-01-08 11:49:48
【问题描述】:
#include <iostream>
#include <vector>
#include <ctime>
using namespace std;
vector<string> createvector() {
vector<string> words;
string names;
cout << "Please enter 5 different words: " << endl;
for (int i = 0; i < 5; i++) {
cin >> names;
words.push_back(names);
}
return (words);
}
void mostchar(vector<string> words) {
string w1 = words[0];
string largestword;
for (int i = 1; i < 5; i++) {
if (words[i] > w1) {
largestword = words[i];
}
}
cout << "The largest word is: " << largestword;
}
int main()
{
vector<string> words;
string names;
words = createvector();
mostchar(words);
}
我不明白为什么每次都选择最后一个元素或倒数第二个元素。是的,我试图改变 for(int i = 1; i
【问题讨论】:
-
>运算符不比较字符串长度。它是比较值(用于订购)。要比较长度,请使用.size()或.length()。 -
words[i] > w1总是与words[0]比较。
标签: c++ string algorithm vector max