悲催了,写了个简单的向量应用输出的时候悲催了。。。

潇湘雨1414 2011-06-12 08:15:22

#include<iostream>
#include<vector>
using namespace std;
void random_odd_arr(vector<int> arr,int n)
{
int i = 0,m = 0;
while(i < n)
{
int a = rand()*2+1;
for(int x = 0; x < i ; n++)
{
if(a == arr[i])
{
m =1;
break;
}
}
if(m == 0)
{
arr[i] = a;
i++;
}
}
}




int main()
{
int i;
vector<int> arr1,arr2,arr3;
random_odd_arr(arr1,5);
random_odd_arr(arr2,10);
random_odd_arr(arr3,20);

cout<<"***************************************************************";
for(i = 1;i < 5; i++)
cout<<arr1[i]<<" ";
cout<<"***************************************************************";
for(i = 1; i < 10;i++)
cout<<arr2[i]<<" ";
cout<<"***************************************************************";
for(i = 1; i < 20; i++)
cout<<arr3[i]<<" ";


return 0;
}


然后运行的时候出现这个了。。。

求解,好长时间没用向量了,就造成这个悲剧。(我这边用向量就是想动态分配内存,比用数组方面,因为我想随机生成元素个数为N奇数数组。。)
...全文
114 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
潇湘雨1414 2011-06-12
  • 打赏
  • 举报
回复
谢谢啦,我再自己看看,看能不能解决~~[Quote=引用 3 楼 bdmh 的回复:]

for(int x = 0; x < i ; n++)
这是不是应该 x++
[/Quote]
潇湘雨1414 2011-06-12
  • 打赏
  • 举报
回复
是的。。但是这不是关键错误,好吧,我发现我这段代码里面错误是一堆啊~~[Quote=引用 3 楼 bdmh 的回复:]

for(int x = 0; x < i ; n++)
这是不是应该 x++
[/Quote]
bdmh 2011-06-12
  • 打赏
  • 举报
回复
for(int x = 0; x < i ; n++)
这是不是应该 x++
潇湘雨1414 2011-06-12
  • 打赏
  • 举报
回复
啊。。。不是吧,我只用5个整型数的话,也会越界?这个要怎么修改呢?[Quote=引用 1 楼 c_losed 的回复:]

容器越界鸟
[/Quote]
c_losed 2011-06-12
  • 打赏
  • 举报
回复
容器越界鸟

64,671

社区成员

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

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