- Chương 1. Tổng quan về ngôn ngữ C
- Chương 2. Các thành phần cơ bản
- Chương 3. Các lệnh có cấu trúc
- Chương 4. Hàm
- Chương 5. Mảng
- Chương 6. Con trỏ
- Chương 7. Chuỗi kí tự
- Chương 8. Đọc, ghi file
- THỰC HÀNH TỔNG HỢP
1. Chương trình nhập, xuất mảng số nguyên a.
2. Chương trình thực hiện xử lý một số hàm về mảng.
NỘI DUNG THỰC HÀNH
Chương 1. Tổng quan về ngôn ngữ C☝
//1. Khai bao thu vien #include <stdio.h> #include <conio.h> //2. Khai bao hang so (neu co) #define PI 3.14 //cach 1 const float pi = 3.14; //cach 2 //3. Khai bao bien toan cuc int a; //bien a co kieu so nguyen float x; //bien x co kieu so thuc //4. Ham chinh int main() { //5. Khai bao bien cuc bo (neu can) int i; float y = 10; //6. Khoi lenh printf("Pi = %f", pi); printf("\ny = %f", y); getch(); return 0; }
Chương 2. Các thành phần cơ bản ☝
Bài 1. Viết chương trình xuất ra màn hình dòng chữ “Xin chao ngon ngu C”.
Bài 2. Viết chương trình nhập vào 1 số nguyên, xuất ra màn hình số nguyên vừa nhập.
Bài 3. Viết chương trình tính tổng, hiệu, tích của 2 số nguyên a và b nhập từ bàn phím.
Bài 4. Viết chương trình tính thương của 2 số thực a và b nhập từ bàn phím. Kết quả lấy 1 số lẻ.
Bài 5. Viết chương trình đổi nhiệt đô từ đơn vị Ferarit ra độ C theo công thức: C = (F-32)/1.8
Bài 6. Viết chương trình tính diện tích, chu vi hình tròn với bán kính R nhập từ bàn phím.
Bài 7. Nhập vào 2 số nguyên a,b. Tìm số lớn nhất trong 2 số.
Bài 8. Nhập vào 5 số nguyên. Tính trung bình cộng 5 số đó.
Bài 9. Viết chương trình tính diện tích, chu vi của hình chữ nhật với 2 cạnh a và b nhập từ bàn phím.
Bài 10. Viết chương trình tính diện tích, chu vi của tam giác vuông với 2 cạnh a và b nhập từ bà
Xem lý thuyết: https://www.vnkha.com/2022/02/chuong-2-cac-thanh-phan-co-ban.html
Chương 3. Các lệnh có cấu trúc ☝
Bài 1. Giải phương trình bật nhất ax + b = 0
#include <stdio.h> int main(){ int a; int b; float nghiem; printf("Nhap a = "); scanf("%d", &a); printf("Nhap b = "); scanf("%d", &b); if(a == 0) { if(b == 0) { printf("\nPhuong co vo so nghiem."); } else { printf("\nPhuong trinh vo nghiem."); } } else { nghiem = (float)-b/a; printf("\nPhuong trinh co nghiem: x = %0.2f",nghiem); } return 0; }
Bài 2. Giải phương trình bật hai ax2 + bx + c = 0
#include <stdio.h> #include <conio.h> #include <math.h> main() { float a, b, c, delta, x1, x2; printf("=== GIAI PHUONG TRINH BAC 2 ===\n"); printf("Nhap vao 3 so a, b, c: "); scanf("%f%f%f", &a, &b, &c); if(a==0) { if(b==0) { if(c==0) printf("Phuong trinh co vo so nghiem!"); else printf("Phuong trinh vo nghiem!"); } else printf("Phuong trinh co nghiem duy nhat la: %f",-c/b); } else { delta = b*b-4*a*c; if (delta < 0) printf("Phuong trinh vo nghiem!"); else if (delta == 0) printf("Phuong trinh co nghiem kep la: %f", -b/(2*a)); else { x1 = (-b+sqrt(delta))/(2*a); x2 = (-b-sqrt(delta))/(2*a); printf("Phuong trinh co 2 nghiem phan biet la: \n x1 = %f \n x2 = %f", x1, x2); } } return 0; }
Bài 3. Dùng cấu trúc lặp for, while, do..while xuất ra màn hình từ 1 đến 10
#include <stdio.h> int main() { //Dung cau truc for for(int i=1;i<=10;i++) printf("\n for - dong: %d",i); //Dung cau truc while int j = 1; while(j<=10) { printf("\n while - dong: %d",j); j++; } //Dung cau truc do..while int k = 1; do{ printf("\n do..while - dong: %d",k); k++; } while(k<=10); return 0; }
Bài 4. Tính tổng S = 1 + 2 + 3 + .. + n với n là số nguyên dương nhập từ bàn phím
#include <stdio.h> int main() { int n, s; //Nhap n tu ban phim printf("Nhap n = "); scanf("%d", &n); s = 0; for(int i=1;i<=n;i++) { s = s+i; } //Xuat ra ket qua, tong s printf("Tong n = %d",s); return 0; }
Bài 5. Tính tổng số chẵn SC = 2 + 4 + 6 + .. + n với n là số nguyên dương nhập từ bàn phím
#include <stdio.h> int main() { //Khai bao bien int n, tong_chan; printf("=== TINH TONG CAC SO CHAN TU 1..n ===\n"); //Nhap n tu ban phim printf("Nhap so nguyen n = "); scanf("%d",&n); tong_chan = 0; for(int i=1;i<=n;i++) { //Tinh tong chan if(i%2 == 0) tong_chan = tong_chan + i; } //Xuat ra ket qua printf("\nTong chan = %d",tong_chan); return 0; }
Bài 6. Tính tổng số lẻ SL = 1 + 3 + 5 + .. + n với n là số nguyên dương nhập từ bàn phím
#include <stdio.h> int main() { //Khai bao bien int n, tong_le; printf("=== TINH TONG CAC SO LE TU 1..n ===\n"); //Nhap n tu ban phim printf("Nhap so nguyen n = "); scanf("%d",&n); tong_le = 0; for(int i=1;i<=n;i++) { //Tinh tong le if(i%2 != 0) tong_le = tong_le + i; } //Xuat ra ket qua printf("\nTong chan = %d",tong_le); return 0; }
Bài 7. Tìm các ước số của n, với n là số nguyên dương nhập từ bàn phím
#include<stdio.h> #include<conio.h> int main() { int n; do { //Nhap n printf("\nNhap n(n > 0): "); scanf("%d", &n); //Kiem tra n co phai nguyen duong if(n <= 0) { printf("\n N phai > 0. Vui long nhap lai !"); } }while(n <= 0); //Tim cac Uoc so for(int i=1; i<=n; i++) { if(n % i == 0) printf("%4d", i); } getch(); return 0; }
Bài 8. Tính tổng các ước số của n, với n là số nguyên dương nhập từ bàn phím
#include<stdio.h> #include<conio.h> int main() { int n; do { //Nhap n printf("\nNhap n(n > 0): "); scanf("%d", &n); //Kiem tra n co phai nguyen duong if(n <= 0) { printf("\n N phai > 0. Vui long nhap lai !"); } }while(n <= 0); //Tim tong cac Uoc so for(int i=1; i<=n; i++) { if(n % i == 0) printf("%4d", i); } getch(); return 0; }
Bài 9. Tìm các số nguyên tố từ 1..n, với n là số nguyên dương nhập từ bàn phím
#include <stdio.h> #include <conio.h> int main() { int n; printf("\nNhap n = "); scanf("%d", &n); printf("Day so nguyen to tu 1..%d la:\n", n); for(int j=2; j<=n; j++) { int dem = 0; for(int i = 2; i < j; i++) { if(j % i == 0) dem++; } if(dem == 0) printf("\t%d", j); } getch(); return 0; }
Bài 10. Tìm các số hoàn hảo từ 1..n, với n là số nguyên dương nhập từ bàn phím
#include <stdio.h> #include <conio.h> int main() { int n; printf("\nNhap n = "); scanf("%d", &n); printf("Day so hoan hao tu 1..%d la:\n", n); for(int j=2; j<=n; j++) { int s = 0; for(int i = 1; i < j; i++) { if(j%i == 0) s = s + i; } if(s == j) printf("\t%d", j); } getch(); return 0; }
Chương 4. Hàm ☝
#include <stdio.h> //Ham tinh tong 2 so nguyen int tong_2_so(int a, int b) { int tong; tong = a + b; return tong; } //Ham tinh hieu 2 so nguyen int hieu_2_so(int a, int b) { int hieu; hieu = a - b; return hieu; } //Ham tinh tich 2 so nguyen int tich_2_so(int a, int b) { int tich; tich = a*b; return tich; } //Ham tinh thuong 2 so nguyen float thuong_2_so(int a, int b) { float thuong; thuong = (float) a/b; return thuong; } int main() { int x, y; int tong, hieu, tich; float thuong; printf("Nhap 2 so nguyen x, y: "); scanf("%d%d",&x, &y); tong = tong_2_so(x,y); hieu = hieu_2_so(x,y); tich = tich_2_so(x,y); thuong = thuong_2_so(x,y); printf("Tong %d + %d = %d", x,y,tong); printf("\nHieu %d - %d = %d", x,y,hieu); printf("\nTich %d * %d = %d", x,y,tich); printf("\nThuong %d / %d = %.2f", x,y,thuong); return 0; }
Chương 5. Mảng ☝
Bài 1. Chương trình nhập, xuất mảng số nguyên a: ☝
#include <stdio.h> #include <conio.h> int main() { //1.Khai bao int a[100]; //khai bao mang co 100 phan tu int n; //Khai bao so pt nhap tu ban phim //2.Nhap so phan tu printf("Nhap so phan tu:"); scanf("%d",&n); //3.Nhap gia tri phan tu for(int i=0;i<n;i++) { printf("Nhap phan tu thu %d: ",i+1); scanf("%d",&a[i]); } //4.Xuat gia tri cua cac phan tu printf("Gia tri cac phan tu trong mang a:"); for (int i=0;i<n;i++) { printf("\nGia tri cac phan tu thu %d la: %d",i+1, a[i]); } getch(); return 0; }
Bài 2. Chương trình thực hiện xử lý một số hàm về mảng ☝
#include <stdio.h> #include <conio.h> void nhap_mang(int a[], int n) { for(int i=0;i<n;i++) { printf("Nhap phan tu thu %d: ",i+1); scanf("%d",&a[i]); } } void xuat_mang(int a[], int n) { printf("Danh sach cac phan tu trong mang:\n"); for(int i=0;i<n;i++) printf("\t %d: ",a[i]); } int dem_pt_le(int a[], int n) { int dem = 0; for(int i=0; i<n; i++) { if(a[i]%2 != 0) dem++; } return dem; } int dem_pt_chan(int a[], int n) { int dem = 0; for(int i=0;i<n;i++) { if(a[i]%2 == 0) dem++; } return dem; } int tinh_tong_pt(int a[], int n) { int tong = 0; for(int i=0;i<n;i++) { tong = tong + a[i]; } return tong; } int tong_pt_le(int a[], int n) { int tong = 0; for(int i=0;i<n;i++) { if(a[i]%2 != 0) tong = tong + a[i]; } return tong; } int tong_pt_chan(int a[], int n) { int tong = 0; for(int i=0;i<n;i++) { if(a[i]%2 == 0) tong = tong + a[i]; } return tong; } int max(int a[], int n) { int max; max = a[1]; for(int i=0;i<n;i++) { if(a[i] > max) max = a[i]; } return max; } int min(int a[], int n) { int min; min = a[1]; for(int i=0;i<n;i++) { if(a[i] < min) min = a[i]; } return min; } int main() { int a[100]; int n; printf("THAO TAC VOI CAC PHAN TU TRONG MANG\n"); printf("Nhap so phan tu cho mang: "); scanf("%d",&n); nhap_mang(a,n); xuat_mang(a,n); printf("\nSo pt le trong mang: %d",dem_pt_le(a, n)); printf("\nSo pt chan trong mang: %d",dem_pt_chan( a, n)); printf("\nTong cac pt trong mang: %d",tinh_tong_pt(a, n)); printf("\nTong cac pt le trong mang: %d",tong_pt_le( a, n)); printf("\nTong cac pt chan trong mang: %d",tong_pt_chan(a, n)); printf("\nPhan tu Max: %d",max(a, n)); printf("\nPhan tu Min: %d",min(a, n)); getch(); return 0; }
Chương 6. Con trỏ ☝
Bài 1.
(đang cập nhật)Chương 7. Chuỗi kí tự ☝
Bài 1.
(đang cập nhật)Chương 8. Đọc, ghi file ☝
Bài 1.
(đang cập nhật)-----------------------------------------