c語(yǔ)言如何刪除數(shù)組中重復(fù)元素?
1 /*
2 思路:
3 將字符串存入字符數(shù)組a中,設(shè)將值拷貝給數(shù)組b,遍歷b的每個(gè)元
4 素,與a中的每個(gè)元素比較,有相同則b中對(duì)應(yīng)元素置為-1。
5 輸出b中不為-1的元素。
6 */
7 #include<stdio.h>
8 #include<string.h>
9 char a[100],b[100];
10 void Del(int index,int len){
11 for(int i=0;i<len;i++){
12 if(index == i) continue;//下標(biāo)相同即同一個(gè)元素不比較,進(jìn)入下一個(gè)循環(huán)
13 if(b[index] == a[i]) b[index]=-1;//有相同元素,置值為 -1
14 }
15 }
16 int main(){
17 gets(a);
18 memcpy(b,a,sizeof(a));//將a的元素拷貝給b
19 int len=strlen(a);//求a的長(zhǎng)度
20 for(int i=0;i<len;i++){
21 Del(i,len);
22 }
23 for(int i=0;i<len;i++){//輸出b中非-1的元素
24 if(b[i]!=-1){
25 printf("%c",b[i]);
26 }
27 }
28 return 0;
29 }