
删除一维数组中所有相同的数,使之只剩下一个,数组中的数已按由小到大顺序排列。,
比如2,2,4,5,5,6,7,8,9,9,9就变为2,4,5,6,7,8,9求可以达到这样的效果的C语言程序速度啊...
比如2,2,4,5,5,6,7,8,9,9,9就变为2,4,5,6,7,8,9 求可以达到这样的效果的C语言程序 速度啊
展开
2个回答
展开全部
#include<stdio.h>
void main()
{
int i = 0, j;
int xxx[] = {2,2,4,5,5,6,7,8,9,9,9};
int lenx = 11;
int yyy[10] = {0}; //共选出10个数字
//先显示一遍
for(j = 0; j < lenx; j++) printf("%d, ", xxx[j]); printf("\n");
//筛选
for(j = 0; j < lenx; j++) yyy[xxx[j]] = 1;
for(j = 0; j < 10; j++) if (yyy[j]) {xxx[i] = j; i++;};
//显示处理结果
for(j = 0; j < i; j++) printf("%d, ", xxx[j]); printf("\n");
}
//-----------------------------
执行后,屏幕显示如下:
2, 2, 4, 5, 5, 6, 7, 8, 9, 9, 9,
2, 4, 5, 6, 7, 8, 9,
Press any key to continue
void main()
{
int i = 0, j;
int xxx[] = {2,2,4,5,5,6,7,8,9,9,9};
int lenx = 11;
int yyy[10] = {0}; //共选出10个数字
//先显示一遍
for(j = 0; j < lenx; j++) printf("%d, ", xxx[j]); printf("\n");
//筛选
for(j = 0; j < lenx; j++) yyy[xxx[j]] = 1;
for(j = 0; j < 10; j++) if (yyy[j]) {xxx[i] = j; i++;};
//显示处理结果
for(j = 0; j < i; j++) printf("%d, ", xxx[j]); printf("\n");
}
//-----------------------------
执行后,屏幕显示如下:
2, 2, 4, 5, 5, 6, 7, 8, 9, 9, 9,
2, 4, 5, 6, 7, 8, 9,
Press any key to continue
追问
我需要的是一个可以运算的程序 不是只有那一种情况 那只是一个例子
追答
上面给出的程序,已经满足了题目的要求。
需要可以运算的程序?
你认为什么样的程序,是可以运算的程序?
上面程序中的《筛选》,就是在进行运算。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询