欣坚强 2022-01-07 11:21 采纳率: 57.4%
浏览 36
已结题

为什么这样写是错的?

题目:
给定一个字符串 a,请你按照下面的要求输出字符串 b。

给定字符串 a 的第一个字符的 ASCII 值加第二个字符的 ASCII 值,得到 b 的第一个字符;

给定字符串 a 的第二个字符的 ASCII 值加第三个字符的 ASCII 值,得到 b 的第二个字符;

给定字符串 a 的倒数第二个字符的 ASCII 值加最后一个字符的 ASCII 值,得到 b 的倒数第二个字符;

给定字符串 a 的最后一个字符的 ASCII 值加第一个字符的 ASCII 值,得到 b 的最后一个字符。

代码:

#include<iostream>

using namespace std;

int main()
{
    string a,b;
    
    getline(cin,a);
    
   
    for(int i=0;i+1<a.size();i++)
        b[i]=char(a[i]+a[i+1]);
    
    b+=char(a.back()+a[0]);
    
    cout<<b<<endl;
    
    return 0;
}

  • 写回答

4条回答 默认 最新

  • 神仙别闹 2022-01-07 11:33
    关注
    //循环技巧:最后一位跳到第一位:
    //(i + 1) % a.size(); 
    
    #include<iostream>
    
    using namespace std;
    
    int main()
    {
        string a, b;
        getline(cin, a);
        b = a;
        
        for (int i = 0; i < a.size(); i ++)
        {
            b[i] = (char)(a[i] +a[(i + 1) % a.size()]);
        }
        cout << b << endl;
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月8日
  • 已采纳回答 1月8日
  • 修改了问题 1月7日
  • 创建了问题 1月7日

悬赏问题

  • ¥15 统计大规模图中的完全子图问题
  • ¥15 使用LM2596制作降压电路,一个能运行,一个不能
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 经gamit解算的cors站数据再经globk网平差得到的坐标做形变分析
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错
  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式