1樓:匿名使用者
利用雙重迴圈,將每個值依次與其後面的值相比較,如果有相同的則刪除該元素即可。
刪除時,可以使用將後面元素依次向前移動一位,同時總長度減一的方式。
參考**如下:
int remove_repeat(int *a, int l){int i, j, k;
for(i = 0; i < l; i ++){for(j = i+1; j
2樓:周小狐狸愛我
int elimination(int a, int count)}}
return count;}
3樓:匿名使用者
我跟你直接說思路吧,他們這樣的雙重迴圈陣列太大的話很耗時間的,你可以,先給陣列排序,然後刪除多餘的數就很耗操作了,只需要看相鄰的數就可以了。
4樓:匿名使用者
int i, j;
int buf = ;
int count = strlen(buf);
for(i = 0; i < count; i++)}}buf[count] = '\0';
提供給你個思路 我沒有除錯,不過思路我覺得不錯!
就是從陣列裡第乙個元素開始找相同的,如果相同就把 相同元素和陣列最後一位交換,下乙個相同的就和陣列倒數第二位交換,最後把 count位變成『/0』,最後列印陣列。
5樓:匿名使用者
for(int i=0; iif(arr[j]=arr[i])length--;
break;}}}
6樓:匿名使用者
將第乙個元素輸出,再後面的乙個個與前面的比較,有相等的就繼續迴圈,不等的就輸出,用for語句做
c語言問題,刪除整型陣列內重複的項並輸出,如能解惑,不勝感激。
7樓:
我可以幫你實現這個程式。實現**如下:
#include
#define n 8 //定義乙個符號常量int remove_repeat(int *a, int len){int i, j, k;
for(i = 0; i < len; i ++){for(j = i+1; j 元素比較,去重。
{if(a[j] == a[i])//發現重複元素。
{for(k = j+1; k
示例執行結果:
1 2 2 3 5 5 5 8
after remove repeat...
1 2 3 5 8
2 2 2 3 3 3 3 4
after remove repeat...
2 3 4
8樓:匿名使用者
#include
#include
#include
int main(int argc, char *argv);int i,j;
for(i=0;i<30;i++)
printf("\n源陣列:");
for(i=0;i<30;i++)
j=0;
while(j<30)
for(i=j+1;i<30;i++)
}j++;
}printf("\n目標陣列:");
for(i=0;i<30;i++)
return 0;}
9樓:惻耳傾聽丶
#include
int delduplicateelement(int a,int count)
count--;}}
}return count;
}int main(int argc, const char * argv) ;
int count = sizeof(a)/sizeof(int);
printf("原陣列:");
for (int i = 0; i < count; i++)printf("\n");
count = delduplicateelement(a,count);
printf("刪除重複元素後:");
for (int i = 0; i < count; i++)printf("\n");}
c語言,刪除陣列中的重複元素
10樓:
//#include "stdafx.h"//vc++6.0加上這一行.
#include "stdio.h"
void main(void),ln;
for(ln=sizeof(a)/sizeof(int),k=i=1;i=k) a[k++]=a[i];
}for(i=0;i printf("\n");} 11樓:匿名使用者 #include #define n 1000 #define flag 0x80000000 /*特殊標記,用最小的負數表示*/ void main( ) }for(i = 0; r[i] != flag; i++); /*找到第乙個特殊標記*/ for(j = i + 1; j < length;) /*刪除數列中的特殊標記*/ length = i; /*修改刪除重複值後的數列的長度*/for(i = 0; i < length; i++)printf("%-4d", r[i]);} c語言如何刪除陣列中的重複元素? 12樓: //#include "stdafx.h"//vc++6.0加上這一行. #include "stdio.h" void main(void),ln; for(ln=sizeof(a)/sizeof(int),k=i=1;i=k) a[k++]=a[i]; }for(i=0;i printf("\n");} c語言問題 把乙個陣列中的重複元素去掉 13樓:凌亂心扉 #define _crt_secure_no_deprecate#include #include #include using namespace std; 去掉字串中重複的字元並排序 int main()}} int newsize = input.size() - count; string str(newsize,'0'); //建立乙個長為newsize,用『0』填充的字串 int j = 0; for (int i = 0; i < input.size(); i++) }sort(str.begin(), str.end()); cout << str<}} 14樓:匿名使用者 先排序,在進行遍歷比較。 #include // 公升序陣列src void sort(int *src, int len)}}int main() , d; int i = 0, **t; sort(num, 10); // 排序d = num[0]; for (i = 1; i < 10; i++) // 遍歷比較}if (num[9] == d) printf("%d\n", d); return 0;} 15樓: int main() for(i=0;i<9-m;i++)//i<=9---->i<9-mm++; j=i+1; }else j++;}} for(i=0;i<=9-m;i++) return 0; }其實就是改了下迴圈條件而已(既然下面的迴圈都用了m了,為什麼上面不用呢) 16樓:南瓜豬的的的 基本思路 先將陣列排序 拷貝陣列去重 #include int a = ; int b[16]; int less(void *a, void *b)int unique(int * input, const int size_input, int * ans) qsort(a,size_input,sizeof(int),less); ans[size_ans] = input[0]; for (; ii 17樓:你妹名字要多長 是把重複數去掉的 不是單純沒有重複 刪除有序陣列中的重複元素c語言 18樓:匿名使用者 int remove(int *arr, int sz)//當index與i之間有其他元素,那麼這些元素必定是重複得了,直接覆蓋掉 }return index + 1;} 19樓:編**的沒意思 如果注意到是有序,你還是要問的話= = c語言 去掉陣列中重複的元素····求幫助 20樓:匿名使用者 我用的是字元陣列。。。其實方法都一樣。。#include#include #define maxsize 100int main()i--;}} i = 0; while( array[i] != '\0' )printf( "\n" ); return 0;} 21樓:匿名使用者 說的不是很清楚,陣列定義的時候就刪除?看來你對陣列的操作還不是很清楚,應該是在資料寫入陣列的時候將其刪除吧。你可以這樣,如果陣列不大,在寫入資料的時候先遍歷一遍陣列看看陣列中是否有該資料,如果有那麼就不把資料寫入陣列,如果沒有就接著最後乙個元素寫入陣列就可以了。 22樓:匿名使用者 for(int i = 0; i < sizeof(a)/sizeof(a[0]);i++) }if(bexsit == false)} 23樓:匿名使用者 #include int main() else j++; }i++ ; } puts(str);} 24樓:董俊錕 #include void main() }for(i = 0; i < k; i++)} b.不過個人覺得這題沒答案才對。平台都沒說,怎麼會有準確答案呢?vc6.0肯定不是這個答案,它的int是32位的。如果這題的int是16位的那麼就選b。解釋 1在記憶體中是以補碼形式儲存的。補碼的二進位制為 1111 1111 1111 1111 這個數按照無符號數輸出 也就是0xffff 也就是6... 第乙個和第二個陣列a 2 按指標說就是指向a 1 也就是30的記憶體下乙個位置,兩種程式排列不一樣,第二個下乙個應該是i的位置,第乙個不一定,可能是堆裡面的隨機數。恩。打個比方說有一天你去賓館訂了個房間。然後再牆壁上鑿了個洞看隔壁住著誰。後來又有一天你又去訂了乙個房間,然後又在牆壁上鑿了個洞看隔壁住... include main printf there are d words in the line.n num c語言編寫乙個程式,在一維陣列裡輸入一句英文,統計該句子裡出現的單詞個數 10 宣告乙個較大的char型陣列,待輸入完成後依次檢查陣列元素,除第乙個單詞可能需要個別處理外,其餘以空格後跟字...c語言無符號整型的輸出C語言無符號整型的輸出
c語言陣列越界,C語言陣列(指標)越界訪問
c語言編寫程式,在一維陣列裡輸入一句英文,統計該句子裡出