题目描述
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符
输入描述:
将一个英文语句以单词为单位逆序排放。
输出描述:
得到逆序的句子
**
c++ code:
**
#include<iostream>
#include <string>
#define MAX 1000
using namespace std;
int main(){
string str[MAX];
int i = 0;
while (cin >> str[i])
{
i++;
}
for (int j = i - 1; j > 0; j--){
cout << str[j] << " ";
}
cout << str[0];
return 0;
}
idea:
1、用string数组来保存每一个单词,输出从数组最后一位开始输出。
2、一开始的时候cin>>老提示有问题,头文件的问题!
附上#include 和#include “string.h”的区别:
- 1、string.h是C标准库下的文件,C++向兼容C,所以包含了该文件,这个文件应该是原封不动的与C标准库下一致的。类似这样的文件还有math.h,setjmp.h,stdlib.h,stddef.h等等C标准库下的头文件;这个头文件是处理纯char的原生数组的。例如char str[512]。
- 2、而string就与string.h有本质差别了。它是STL封装的类string,同样用于字符串操作,其中用到了很多的操作符重载等方法,实现方法和C标准库中的string.h有很大差别。
这里string是一个类,例如string myStr;