习题5-1代码对齐

#include <iostream>
#include <iomanip>
#include<string>
using namespace std;
#include <vector>
#include<sstream>
#include<functional>
#include<algorithm>
vector<string> vec[1005];
int len[190];
string line, buff;
int main() {
	int i = 0,j=0;
	while (getline(cin, line)) {
		stringstream stream(line);
		while (stream >> buff) {
			len[j] = max((int)buff.length(), len[j]);
			vec[i].push_back(buff);
			j++;
		}
		i++;
		j = 0;
	}
	
	cout << setiosflags(ios::left);
	for (int m = 0; m < i; m++) {
		int n = 0;
		for (n = 0; n < (int)(vec[m].size() - 1); n++) {
			cout << setw(len[n] + 1)<<vec[m][n] ;
		}
		cout << vec[m][n] << endl;
	}
}

用到的新函数

  • setiosflags()用于格式化输出
  • setw():用于增加空格(对于后面的参数而言)
发布了29 篇原创文章 · 获赞 2 · 访问量 920

猜你喜欢

转载自blog.csdn.net/qq_44954571/article/details/104967772
5-1