Yêu cầu đặt ra là ta cần tìm phần tử có số lần xuất hiện nhiều nhất trong mảng 1 chiều.
Ví dụ ta có mảng a[8]={2,3,1,4,5,2,6,2};
Thì phần tử 2 xuất hiện 3 lần nên là nhiều nhất
Chương trình tìm phần tử xuất hiện nhiều lần nhất trong mảng C /C+
#include "conio.h" #include "stdio.h" #define max 100 //nhap mang void NhapMang(int A[], int n) { for(int i = 0; i<n; i++) { printf("phan tu %d = ",i); scanf("%d",&A[i]); } } //xuat mang void XuatMang(int A[], int n) { for(int i = 0; i<n; i++) printf("%d\t",A[i]); } //dem so lan xuat hien cua x trong A int Countx(int A[], int n, int x){ int temp = 0; for(int i = 0; i<n; i++) if(A[i]==x) temp++; return temp; } //tim phan tu xuat hien nhat lan nhat trong A int Count(int A[], int n) { int temp1, temp = Countx(A,n,A[0]), index = 0; for(int i = 1; i<n; i++) { temp1 = Countx(A,n,A[i]); if(temp<temp1) { temp = temp1; index = i; } } return A[index]; } //chuong trinh chinh void main(){ int B[max]; unsigned int n; printf("Nhap n = "); scanf("%d",&n); NhapMang(B,n); printf("Mang vua nhap:\n"); XuatMang(B,n); printf("\nPhan tu xuat hien nhieu nhat la: %d",Count(B,n)); getch(); }