| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1022 人关注过本帖
标题:数组删去同样的数
只看楼主 加入收藏
陆嘉文
Rank: 1
来 自:江西
等 级:新手上路
帖 子:96
专家分:6
注 册:2011-11-10
结帖率:76.92%
收藏
已结贴  问题点数:10 回复次数:11 
数组删去同样的数
一道题目:功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列
#include<stdio.h>
main()
{
int b[10]={1,2,2,3,4,4,6,7,9,9},a[10];
int i=0,j,*p;
p=b+1;
a[0]=*b;
for(;p<b+10;p++)
{
   

  if(*(p-1)!=*p)
  a[++i]=*p;
}
请问我在运行有点错误!

for(j=0;j<i;j++)
{
printf("%d",a[j]);
}
printf("\n");



}

2012-06-13 10:23
小跳蚤
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:437
专家分:1623
注 册:2011-4-9
收藏
得分:1 
for(j=0;j<i;j++)//j<=i;
 
2012-06-13 10:37
陆嘉文
Rank: 1
来 自:江西
等 级:新手上路
帖 子:96
专家分:6
注 册:2011-11-10
收藏
得分:0 
回复 2楼 小跳蚤
j为什么要小于等于i啊!
2012-06-13 10:50
陆嘉文
Rank: 1
来 自:江西
等 级:新手上路
帖 子:96
专家分:6
注 册:2011-11-10
收藏
得分:0 
回复 2楼 小跳蚤
J为什么要小于等于I 啊
2012-06-13 10:50
lucky563591
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:765
专家分:2103
注 册:2009-11-18
收藏
得分:1 
存放到set中,再复制回来
2012-06-13 11:59
li星尘
Rank: 1
等 级:新手上路
帖 子:1
专家分:1
注 册:2012-6-12
收藏
得分:1 
++i是加了再取值来用的!注意临界条件的判断
2012-06-13 16:32
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:1 
回复 4楼 陆嘉文
i+1表示去掉重复数之后,数组中存放的数的个数。
2012-06-13 16:44
C_戴忠意
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:575
专家分:1349
注 册:2011-10-21
收藏
得分:1 
看错了。


[ 本帖最后由 C_戴忠意 于 2012-6-14 09:05 编辑 ]

编程之路定要走完……
2012-06-14 09:02
zjy93513
Rank: 1
等 级:新手上路
帖 子:9
专家分:2
注 册:2012-6-14
收藏
得分:1 
这种方法不严谨吧,如果输入有连续3个数字相同呢?
2012-06-14 11:42
阿鞠尼
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:首尔
等 级:蒙面侠
威 望:5
帖 子:1467
专家分:4442
注 册:2012-5-30
收藏
得分:1 
回复 4楼 陆嘉文
因为按照你写的,最后是a[i]=*p,所以指针的长度是i+1

喜欢睡觉 却经常熬夜
2012-06-14 13:05
快速回复:数组删去同样的数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012717 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved