Bài ôn thi
unknown
c_cpp
a month ago
3.9 kB
7
Indexable
#include<stdio.h> //Ham Nhap Mang void NhapMang(int a[], int &n) { printf("Moi ban nhap so ptu mang : "); scanf("%d",&n); // printf("Mang co ptu : %d", n); ( Test xem mang co loi ko ) for(int i=0; i<n; i++) { printf("Nhap ptu thu a[%d] : ",i); scanf("%d",&a[i]); } } //Ham Xuat Mang void XuatMang(int a[], int n) { printf("\nXuat cac gtri trong mang : \n"); for(int i=0; i<n; i++) { printf(" %d ",a[i]); } printf("\n"); } //Ham Tim Kiem Abao dep hon void TimKiem(int a[], int socantim, int n) { bool timthay = timthay; for(int i=0; i<n; i++) { if(a[i]==socantim) { printf("So %d can tim nam o vi tri a[%d]. \n",socantim, i); timthay=true; } } if(timthay==false) { printf("Khong tim thay so %d trong mang.",socantim); } } //Ham Tim Kiem cach 2 sgk int Tim(int a[], int n, int x) { for(int i=0; i<n; i++) { if(x==a[i]) { return i; } } return -1; } //Ham Xoa Ptu trong Mang ( cach 1 ) void XoaPtu(int a[], int &n, int socanxoa) { /*int vitri=Tim(a,n,socanxoa); printf("\nso can xoa o a[%d] -> %d\n",vitri, a[vitri]); for(int i=vitri; i<n-1; i++) { printf("a[%d]=%d thay bang a[%d]=%d\n", i, a[i], i+1, a[i+1]); a[i]=a[i+1]; } n-=1;*/ int vitri=Tim(a,n,socanxoa); for(int i=vitri; i<n-1; i++) { a[i]=a[i+1]; } n-=1; } //Ham Chen Phan Tu void ChenPTu(int a[], int &n, int socanchen, int vitrichen) { for(int i=n; i>vitrichen; i--) { a[i]=a[i-1]; } a[vitrichen]=socanchen; n+=1; } // Ham sap xep mang bang thuat toan Bubble Sort void bubbleSort(int arr[], int n) { int i, j, temp; // Vong lap ngoai: chay qua tung phan tu cua mang for (i = 0; i < n - 1; i++) { // Vong lap trong: so sanh va doi cho cac cap phan tu lien ke for (j = 0; j < n - i - 1; j++) { // Neu phan tu hien tai lon hon phan tu ke tiep if (arr[j] > arr[j + 1]) { // Doi cho hai phan tu temp = arr[j]; // Luu gia tri phan tu hien tai vao bien tam arr[j] = arr[j + 1]; // Gan phan tu ke tiep cho phan tu hien tai arr[j + 1] = temp; // Gan gia tri bien tam cho phan tu ke tiep } } } } //Ham Chinh va Goi Ten int main() { int a[100]; //Khai bao mang a co 100ptu int n=5; NhapMang(a,n); //Goi ham Nhap Mang XuatMang(a,n); //Goi ham Xuat Mang int socantim; //Goi ham TimKiem printf("\n"); printf("Moi ban nhap so can tim : "); //Nho ngta nhap so can tim scanf("%d",&socantim); // TimKiem(a,socantim,n); ( cach 1) int vitri = Tim(a,n,socantim); if(vitri==-1) { printf("Ko tim thay"); } else { printf("Tim thay o vi tri a[%d]",vitri); } //Doi vi tri int vitri1; int vitri2; vitri1=Tim(a,n,8); vitri2=Tim(a,n,9); int tam=a[vitri1]; a[vitri1]=a[vitri2]; a[vitri2]=tam; XuatMang(a,n); //Goi lan 2 de xuat mang da doi vi tri //Xoa int socanxoa; printf("Nhap so can xoa : "); scanf("%d",&socanxoa); printf("\n\nQua trinh xoa : "); XoaPtu(a,n,socanxoa); printf("\nSau khi xoa : "); XuatMang(a,n); //Goi lan 3 de xuat mang da xoa ptu //Chen int socanchen; int vitrichen; printf("Moi nhap so can chen: "); scanf("%d",&socanchen); printf("Moi vi tri so can chen: "); scanf("%d",&vitrichen); ChenPTu(a,n,socanchen,vitrichen-1); XuatMang(a,n); //SapXep bubbleSort(arr,n); XuatMang(a,n); }
Editor is loading...
Leave a Comment