我正試圖用C中的矢量(數組)來實現以下問題的解決方案。我想輸入一個數字及其出現的次數。計算C數組中出現的數字(矢量)
下面是一個例子:
Imput n: 5
Imput num 1: 8
Imput num 2: 9
Imput num 3: 8
Imput num 4: 5
Imput num 5: 5
程序現在將顯示此:
Number 8: 2 occurences
Number 9: 1 occurences
Number 5: 2 occurences
但我的表演:
Number 8: 2 occurences
Number 9: 1 occurences
Number 8: 2 occurences
Number 5: 2 occurences
Number 5: 2 occurences
我該怎麼辦??? TY
#include <stdio.h>
#include <stdlib.h>
#define SIZE 20
int main()
{
int vett1[SIZE], vett2[SIZE];
int n, i, j;
int flag;
printf ("Imput n: ");
scanf ("%d", &n);
for (i=0; i<n; i++)
{
printf ("Imput %d di %d: ", i+1, n);
scanf ("%d", &vett1[i]);
}
printf ("\n\nYour vector: : ");
for (i=0; i<n; i++)
{
printf ("%d ", vett1[i]);
}
for (i=0; i<n; i++)
{
flag=0;
for (j=0; j<n; j++)
{
if (vett1[j] == vett1[i])
{
flag++;
}
}
vett2[i] = flag;
}
printf ("\n\n");
for (i=0; i<n; i++)
{
printf ("Number %d: %d occurencese\n", vett1[i], vett2[i]);
}
return 0;
}
執行[哈希表](http://en.wikipedia.org/wiki/Hash_table)。 – pmg
顯示代碼。 :) – dbrank0
如果您詢問您的代碼,那麼查看它會有所幫助。 – huon