Hi, I am

Ngô Tôn

I am a programmer.

Home / Programming / C/C++ / Kiểm tra phần tử mảng 1 chiều khi nhập từ bàn phím

Kiểm tra phần tử mảng 1 chiều khi nhập từ bàn phím

Yêu cầu:

– Viết chương trình nhập vào mảng A gồm n phần tử, trong quá trình nhập kiểm tra các phần tử nhập vào không được trùng, nếu trùng thông báo và yêu cầu nhập lại.

Thuật toán:

– So sánh giá trị nhập vào với các phần tử trong mảng.

Code:

/************************************************************
#include <stdio.h>
#include <conio.h>
#define MAX_SIZE 100


void print_arr(int A[], int n, char name_arr);
void import_arr(int A[], int n);
bool is_existed_arr(int A[], int n, int x);

void main()
{
int A[MAX_SIZE];
int n = 5;
import_arr(A, n);
print_arr(A, n, 'A');

getch();
}


void print_arr(int A[], int n, char name_arr)
{
int i;
if(n == 0)
{
printf("\nArray %c is empty", name_arr);
return;
}
printf("\nMang %c", name_arr);
for(i = 0; i < n; i++)
printf("\n%c[%d] = %d", name_arr, i, A[i]);
}

void import_arr(int A[], int n)
{
int i, j;
int temp;
for(i = 0; i < n; i++)
{
do
{
printf("\nNhap vao A[%i] = ", i);
scanf("%d", &temp);
}while( i > 0 && is_existed_arr(A, i+1, temp));
A[i] = temp;
}
}

// Ham kiem tra xem x da xuat hien trong mang A hay chua?
bool is_existed_arr(int A[], int n, int x)
{
int i;
for(i = 0; i < n; i++)
if(x == A[i])
return true;
return false;
}

Kết quả:

Yêu cầu: – Viết chương trình nhập vào mảng A gồm n phần tử, trong quá trình nhập kiểm tra các phần tử nhập vào không được trùng, nếu trùng thông báo và yêu cầu nhập lại. Thuật toán: – So sánh giá trị nhập vào với các phần tử trong mảng. Code: Kết quả: [crayon-5d13bc43a5785668039690/]

User Rating: 5 ( 1 votes)

About ngoton

Ngô Tôn is a programmer with passion for tailored software solutions. Comes with 6+ years of IT experience, to execute beautiful front-end experiences with secure and robust back-end solutions.

Check Also

Xây dựng hàm bạn để tính diện tích hình chữ nhật

Yêu cầu: Xây dựng hàm bạn để tính diện tích hình chữ nhật Code: Giải …

Leave a Reply

Your email address will not be published. Required fields are marked *