文章目录
原题题目
代码实现
#include<iostream>
using namespace std;
int main()
{
string str[100];
int n=0;
while(cin >>str[n])n++;
for(int i=n-1;i>=0;i--) cout << str[i] << ' ' ;
return 0;
}
扩充知识:数据类型的选择
猜想1:为什么只有string类型才能正确输入?
当我定义的数组类型是字符串类型 string时,结果输出的时候也是以字符串的形式输出的。
2:以char类型读入行不行?
看来没有成功,为什么?
原因是定义的数组的类型是char,那么数组中每个元素的类型都是字符类型char。那么读入的时候就是一个一个读入的,存储在数组中当然也是一个一个存储的。
3:用int、double类型试试能否正确输出?
用in类型定义数组,但是我们输入的是字符串。
用double类型定义数组但是我们输入的是字符串。
总结:
通过这道题目,不仅能够知道如何正确倒排单词,更深层次的知识是:
正确把握数据类型对于ac与否很关键。
可以看出,string类型就是读入一个字符串。所谓字符串就是一个整体,题目输入的时候也有空格,这个空格表示的应该就是我第一个字符串或者第n个字符串的读完了,我要读下一个了,可以理解为结束的意思。要不然也不会输入到数组里面的都是一串一串的。
总之,多做做题,多想想为什么,能力总归是会提高的,多走出舒适区,做做不会的题。