c语言有去重函数吗 c语言去除重复元素
C语言数组去除重复内容
#include stdio.h // 升序数组srcvoid sort(int *src, int len){ int tem; for (int i = 0; i len; i++) { for (int j = 0; j len - i - 1; j++) if (src[j] src[j+1]) { tem = src[j]; src[j] = src[j+1]; src[j+1] = tem; } }} int main(){ int num[10] = {0, 2, 5, 1, 1, 5, 4, 9, 2, 1}, d; int i = 0, cnt; sort(num, 10); // 排序 d = num[0]; for (i = 1; i 10; i++) // 遍历比较 { if (num[i] != d) { printf("%d ", d); d = num[i]; } } if (num[9] == d) printf("%d\n", d); return 0;}
创新互联是一家专注于成都网站制作、成都做网站、外贸营销网站建设与策划设计,尤溪网站建设哪家好?创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:尤溪等地区。尤溪做网站价格咨询:18980820575
C语言编写一个函数,将字符串中连续重复出现的字符去除
C语言自定义函数,一次性去除连续重复字符,参考代码如下:
#includestdio.h
char *fun(char *str)
{
int i=1,j=0;
if(str==NULL)
return NULL;
if(str[0]==0)
return str;
while(str[i]!=0)
if(str[j]!=str[i])
str[++j]=str[i++];
else ++i;
str[j+1]=0;
return str;
}
int main()
{
char str[500];
gets(str);
puts(fun(str));
return 0;
}
c语言数组随机赋值且去重
//vs2013运行,根据条件如不可运行可添加#include "stdafx.h"
#include stdio.h
#include stdlib.h
#include time.h
#define LEN 8 //数组的长度,可更改
/*返回数组类型,参数1传入数组,参数2数组长度,参数3,随机数的阈值(上限值)*/
int* arr_rand(int nums[],int n,int lim)
{
int i = 0;
int j;
enum mark {NO,YES}; //由于vs2013不支持bool类型,我采取枚举类型代替
enum mark flag;
srand((unsigned int)time(NULL));
while(i n)
{
nums[i] = rand() % lim;
if(i 0)
{
flag = YES;
for(j = 0;j i; j++)
{
if(nums[i] == nums[j])
{
flag = NO;
}
}
if(flag)
{
i++;
}
}
if(i == 0) //放下边避免程序错误
{
i++;
}
}
return nums;
}
//测试函数,如需使用则在main函数中arr_rand_t();调用即可
void arr_rand_t()
{
int nums[LEN];
int i = 0;
int lim = 21;
arr_rand(nums,LEN,lim);
for(; i LEN; i++)
{
printf("%d\n",nums[i]);
}
}
本文标题:c语言有去重函数吗 c语言去除重复元素
当前URL:http://cdiso.cn/article/dddccdd.html