Luminous425 2022-04-03 11:38 采纳率: 100%
浏览 155
已结题

7-32 说反话-加强版

img


我的思路是:定义a[500000]、temp[500000]、final[500000]三个数组,a用来存放最开始的字符串,temp把a中多余的空格去掉,变成只有一个空格的句子形式,vector数组final的每个单元都存放一个单词,按句子倒序的单词顺序,依次存放在final[0]到final[n-1],最后把final的单词输出,为什么运行不了并且无法输入呢?


#include <iostream>
#include <vector>
#include <cstring>
using namespace std;

int main()
{
    vector<char> final[500000];
    char a[500000];
    char temp[500000];
    cin.getline(a, 500000);
    int len = (int)strlen(a);
    
    int loca = 0;
    int loct = 0;
    int locf = 0;
    for(; loca < len;)
    {
        while(a[loca] == ' ')
        loca++;
        
        temp[loct] = a[loca];
        loca++;
        loct++;
        
        if(a[loca] == ' ')
        {
            temp[loct] = ' ';
            loct++;
        }
    }
    loct--;
    int pro;
    int end;
    
    pro = loct;
    end = loct;
    
    while(pro >= 0)
    {
            //pro定位到单词开头字母 
        while(temp[pro] == ' ')
        pro--;
        if(pro >= 0)
        {
            while(temp[pro] != ' ')
            pro--;
            pro++;
        
        }
        
        //end定位到单词结尾字母
        end = pro;
        while(temp[end] != ' ')
        end++;
        end--;
        
        for(int i = pro; i <= end; i++)
        {
            final[locf].push_back(temp[i]);
        }
        
        locf++;
        pro--;
    }
    
    if(final[locf].empty())
    locf--;
    
    for(int i = 0; i <= locf; i++)
    {
        for(int j = 0; j < (int)final[i].size(); j++)
        {
            cout << final[i][j];
        }
        if(i != locf)
        cout << "#";
    }
    
    
    return 0;
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 4月11日
    • 创建了问题 4月3日

    悬赏问题

    • ¥15 大二软件工程基础大题
    • ¥200 使用python编写程序,采用socket方式获取网页实时刷新的数据,能定时print()出来就行。
    • ¥15 matlab如何根据图片中的公式绘制e和v的曲线图
    • ¥15 我想用Python(Django)+Vue搭建一个用户登录界面,但是在运行npm run serve时报错了如何解决?
    • ¥15 QQ邮箱过期怎么恢复?
    • ¥15 登录他人的vue项目显示服务器错误
    • ¥15 (标签-android|关键词-app)
    • ¥60 如何批量获取json的url
    • ¥15 comsol仿真压阻传感器
    • ¥15 Python线性规划函数optimize.linprog求解为整数