A24168. 输出亲朋字符串
填空题
中等
知识点
题目描述
输出亲朋字符串
题目描述
编写程序,求给定字符串s的亲朋字符串s1。
亲朋字符串s1定义如下:给定字符串s的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符; 给定字符串s的第二个字符的ASCII值加第三个字符的ASCII值,得到第二个亲朋字符;依此类推,直到给定字符串s的倒数第二个字符。亲朋字符串的最后一个字符由给定字符串s的最后一个字符ASCII值加s的第一个字符的ASCII值。
输入
输入一行,一个长度大于等于2,小于等于100的字符串。字符串中每个字符的ASCII值不大于63。
输出
输出一行,为变换后的亲朋字符串。输入保证变换后的字符串只有一行。
输入样例
1234输出样例
cege参考答案
#include <bits/stdc++.h>
using namespace std;
int main()
{
char s1[105], s2[105];
cin.getline(s1, 105);
int len = strlen(s1);
for(int i = 0; i < len; ++i)
s2[i] = s1[i] + s1[(i + 1)%len];
s2[len] = '\0';//末尾加'\0',构成字符串
cout << s2;
return 0;
}答案解析
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s, r;
getline(cin, s);
for(int i = 0; i < s.length(); ++i)
r.push_back(s[i] + s[(i+1)%s.length()]);
cout << r;
return 0;
}
上一题
下一题