Bài toán: Đếm số phần tử x xuất hiện trong mảng
Input: mảng a có n phần tử
Xử lý: gán biến đếm=0
Duyệt mảng, tìm các giá trị bằng x, mỗi lần tìm được x thì đếm+1
Output: đếm số phần tử bằng x
Hàm đếm số phần tử x
int DemPTu(int a[], int n, int x) { int i,dem=0; for( i=0;i<n;i++) if(a[i]==x) dem++; return dem; }
Chương trình
#include<stdio.h> #include<conio.h> #include <stdlib.h> #define MAX 100 void nhapmang(int a[], int &n); void xuatmang(int a[], int n); int DemPTu(int a[], int n, int x); void main() { int a[MAX],n,x; nhapmang(a,n); printf("\nNoi dung cua mang"); xuatmang(a,n); printf("\nNhap x: "); scanf("%d",&x); int kq=DemPTu(a,n,x); printf("\nSo lan phan tu x co trong mang: %d",kq); printf("\nChuc cac ban hoc tot"); getch(); } void nhapmang(int a[], int &n) { do { printf("\nSo phan tu trong mang "); scanf("%d",&n); }while(n<=0 && n>100); for(int i=0 ; i<n ; i++ ) { printf("\nSo phan tu a[%d] la: ",i); scanf("%d",&a[i]); } } void xuatmang(int a[], int n) { for(int i=0 ; i<n ; i++ ) printf("%4d",a[i]); } int DemPTu(int a[], int n, int x) { int i,dem=0; for( i=0;i<n;i++) if(a[i]==x) dem++; return dem; }