因为数据结构没有学过,所以只做出第一道很简单的,根据回忆写一下。
定义9个字符为一组,9个字符中,第一个为“0”时,倒序输出后面8个字符,第二个字符为“1”,正序输出后面8个字符
程序要求:
输入:先输入整型数字,代表将输入几个组的字符;后输入字符串组
输出:根据每组字符串的第一个字符输出后面8个字符,每组字符间由空格隔开,最后不需要空格。
例如:
输入:3 1asdfghjk0asdfghjk1asdfghjk
输出:asdfghjk kjhgfdsa asdfghjk(此处没有空格)
代码如下:
#include<string>
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
string root;
cin >> root;
int i = 1,j = 0;
while (i <= n)//控制字符串组个数
{
if (root[j] == '0')//逆向输出
{
for (int m = j + 8; m >=j+1; m--)
cout << root[m];
}
if (root[j] == '1')//正向输出
{
for (int m = j+1; m<j + 9; m++)
cout << root[m];
}
if (i != n)//控制不输出最后的空格
cout << " ";
i++;
j = j + 9;
}
return 0;
}