By GokiSoft.com|
15:09 03/12/2021|
Lập Trình C
[Video] Bài tập tổng quát - quản lý mảng số nguyên - Lập trình C
Bài tập tổng quát - quản lý mảng số nguyên - Lập trình C
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
//Khai bao mang so nguyen -> max = 100
int dataList[100];
int count = 0; //Luu so phan tu hien tai cua mang
int choose; //lay ket qua lua chon cua nguoi dung
int x, i, j;
do {
printf("\n1. Them phan tu moi");
printf("\n2. Sap xep theo thu tu tang dan");
printf("\n3. Tim kiem");
printf("\n4. Xoa phan tu trong mang");
printf("\n5. Hien thi");
printf("\n6. Thoat");
printf("\nChon: ");
scanf("%d", &choose);
switch(choose) {
case 1: {
printf("\nNhap gia tri can them x = ");
scanf("%d", &x);
//Them vao mang nhu the nao
//dataList[count] = x;
//count++;//so phan tu trong mang tang len 1 don vi
//Cach viet ngan ngon
dataList[count++] = x;
break;
}
case 2: {
//So phan tu trong mang -> count -> chu y khong phai la 100
//Sap xep cac phan tu trong mang tu 0 -> count
//1, 5, 2, 10, 22, 3 -> 1, 2, 3, 5, 10, 22 -> Xu ly nhu the nao???
for(i=0;i<count-1;i++) {
//Tuong ung vs tung gia tri cua i
for(j=i+1;j<count;j++) {
//so sanh tu vi tri i vs j
if(dataList[i] > dataList[j]) {
//Vi tri sap xep chua dung -> can doi cho
//Bai toan doi cho
int tmp = dataList[i];
dataList[i] = dataList[j];
dataList[j] = tmp;
}
}
}
printf("\nSap xep thanh cong!!!");
break;
}
case 3: {
printf("\nNhap gia tri can tim: ");
scanf("%d", &x);
int findCount = 0;
for(i=0;i<count;i++) {
if(dataList[i] == x) {
findCount++;
}
}
if(findCount > 0) {
printf("\nSo phan tu tim duoc: %d", findCount);
} else {
printf("\nKhong tim thay phan tu nao");
}
break;
}
case 4: {
printf("\nNhap gia tri can xoa: ");
scanf("%d", &x);
for(i=0;i<count;i++) {
if(dataList[i] == x) {
//Tim thay vi tri xoa phan tu
//don mang -> i + 1 -> i, i+2 -> i + 1, ... count --
for(j=i+1;j<count;j++) {
dataList[j-1] = dataList[j];
}
count--;
i--;
}
}
break;
}
case 5: {
printf("\nDanh sach phan tu trong mang");
for(i=0;i<count;i++) {
printf("\n%d", dataList[i]);
}
break;
}
case 6: {
printf("\nThoat chuong trinh");
break;
}
default: {
printf("\nNhap sai!!!");
break;
}
}
} while(choose != 6);
return 0;
}
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)