【求助】排序无重复输出?用while和if不一样?后者是错的?谢谢

-逗你玩儿- 2013-04-12 07:18:12
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
int a[1001];
while(cin>>n){

for(int i=0;i<n;i++){
cin>>a[i];
}
sort(a,a+n);
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
}
cout<<endl<<endl<<endl;
cout<<a[0];
for(int i=1;i<n;i++){
while(a[i-1]==a[i]&&i<n)
//while如果改为if就错了?为啥?百思不解啊
i++;
if(i<n)
cout<<" "<<a[i];
}
cout<<endl;
}
return 0;
}
...全文
167 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
timsqin 2013-04-12
  • 打赏
  • 举报
回复
引用 6 楼 timsqin 的回复:
引用 1 楼 Kid_U_ForFun 的回复: 比如测试案列: 6 8 8 7 3 7 7 while的时候 输出 3 7 8 但是if的时候 输出 3 7 7 8 同意这个说法
if是判断 for和while是循环
timsqin 2013-04-12
  • 打赏
  • 举报
回复
引用 1 楼 Kid_U_ForFun 的回复:
比如测试案列: 6 8 8 7 3 7 7 while的时候 输出 3 7 8 但是if的时候 输出 3 7 7 8
同意这个说法
-逗你玩儿- 2013-04-12
  • 打赏
  • 举报
回复
引用 2 楼 adlay 的回复:
while 和 if 的含义都不一样, 你怎么会想让它们互换后结果还相同....
我这C++是怎么学的啊。 thanks anyway....
-逗你玩儿- 2013-04-12
  • 打赏
  • 举报
回复
引用 3 楼 anequitousse 的回复:
while和for是一样的,都是循环,if是判断,不一样呀!
谢谢,突然明白了。
anequitousse 2013-04-12
  • 打赏
  • 举报
回复
while和for是一样的,都是循环,if是判断,不一样呀!
www_adintr_com 2013-04-12
  • 打赏
  • 举报
回复
while 和 if 的含义都不一样, 你怎么会想让它们互换后结果还相同....
-逗你玩儿- 2013-04-12
  • 打赏
  • 举报
回复
比如测试案列: 6 8 8 7 3 7 7 while的时候 输出 3 7 8 但是if的时候 输出 3 7 7 8

64,646

社区成员

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

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