代码不合格。。。。。

s79947171 2009-03-02 11:31:36
#include <string>
#include <iostream>

using namespace std;
int main()
{
string str;
int num;
cin>>str;
cout<<"请输入数字"<<endl;
cin>>num;
string dest=str.substr(num-1,str.size())+static_cast<char>(str[str.size()-1]+1);
cout<<dest<<endl;;
}

目的如下
如果用户输入str="abc";
然后num=2;
最后dest的结果为bcd
可有人说我的代码虽然实现了功能,但是在实际中是不合格的,所以想请教下!望高手指点
...全文
172 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
就一个问题,主函数没有return.
因为不知道你需要的具体规则是什么,就知道abc 2没有错.
jakqigle 2009-03-03
  • 打赏
  • 举报
回复
1.return 0;
2.输入的数字必须不比输入的字符串长度大...

[Quote=引用 3 楼 brookmill 的回复:]
可能需要对用户的输入做一些判断吧。
比如num = 10000 或者 num = -100000,怎么处理
[/Quote]

虽然实现了功能,就好像能运行但是不见得不会出现BUG,所以可能是说你的代码不够健壮吧!
s79947171 2009-03-02
  • 打赏
  • 举报
回复
[Quote=引用楼主 s79947171 的帖子:]
#include <string>
#include <iostream>

using namespace std;
int main()
{
string str;
int num;
cin>>str;
cout < <"请输入数字" < <endl;
cin>>num;
string dest=str.substr(num-1,str.size())+static_cast <char>(str[str.size()-1]+1);
cout < <dest < <endl;;
}

目的如下
如果用户输入str="abc";
然后num=2;
最后dest的结果为bcd
可有人说我的代码虽然实现了功能,但是在实际中是不…
忘记说一个前提了,他只是看到了一句话就说我的不严谨
string dest=str.substr(num-1,str.size())+static_cast <char>(str[str.size()-1]+1);
就是上面那句,别的代码还没看见呢

[/Quote]
brookmill 2009-03-02
  • 打赏
  • 举报
回复
可能需要对用户的输入做一些判断吧。
比如num = 10000 或者 num = -100000,怎么处理
feng4206yu 2009-03-02
  • 打赏
  • 举报
回复
1.return 0;
2.输入的数字必须不比输入的字符串长度大...
Chevin 2009-03-02
  • 打赏
  • 举报
回复
好像没看到有return啊。不是高手,不过应该有一个return吧。

return EXIT_SUCCESS;

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧