Website học trực tuyến – www.videobook.vn} /* ket thuc ham max3s */ Chương trình được chạy trên C-Free 4.0 Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Cl
Trang 1Website học trực tuyến – www.videobook.vn
BÀI 1: TỔ CHỨC MỘT CHƯƠNG TRÌNH DÙNG CÁC
HÀM
Nhập vào 3 số từ bàn phím để biết được sô lớn nhất
Hàm có thể xem là một đơn vị độc lập của chương trình Các hàm trong C có vai trò ngang nhau vì vậy không cho phép xây dựng một hàm bên trong các hàm khác Hàm xây dựng như xau:
Dòng đầu tiên là dòng tiêu đề chứa các thông tin về: kiểu hàm, tên hàm, kiểu và tên mỗi đối: ví dụ Float max3s (float a, float b, float c)
Thân hàm là nội dung chính của hàm băt đầu bằng dấu { và kết thúc bằng dấu } trong thân hàm chứa các câu lệnh cần thiết để thực hiện một yêu cầu nào đó đã đề
ra cho hàm
/* to chuc chuong trinh thanh ham */
#include <stdio.h>
#include <conio.h>
Float max3s (float a, float b, float c); /* nguyen mau cua ham */
void main() /* bat dau ham main */(thân hàm là một đoạn chương trình)
} /* ket thuc ham main */
/* dong dau khai bao kieu ham, ten ham, kieu doi va ten doi */
Float max3s (float a, float b, float c)
Trang 2Website học trực tuyến – www.videobook.vn
} /* ket thuc ham max3s */
Chương trình được chạy trên C-Free 4.0
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 3Website học trực tuyến – www.videobook.vn
Bài 2: Chuong trinh tinh max dung xay dung ham
dung toan tu for
Trang 4Website học trực tuyến – www.videobook.vn
} printf("\nPhan tu am dau tien la phan tu thu %d\
co tri = %8.2f",i+1,a[i]);
printf("\nSo phan tu duong dau tien la = %d",k);
printf("\nTong cac phan tu duong dau tien la= %8.2f",s);
printf("\nMax cua phan tu duong dau tien la %8.2f",max);
getch();
} Chương trình được chạy trên C-Free 4.0
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 5Website học trực tuyến – www.videobook.vn
BÀI 3: SỬ DỤNG BIẾN CON TRỎ
Con trỏ là một biến dùng để chứa địa chỉ, vì có nhiều loại địa chỉ nên cũng có nhiều kiểu con trỏ tương ứng, con trỏ kiểu INT dùng để chứa địa chỉ các biến kiểu INT… một con trỏ thường khai báo trước khi sử dụng
printf("-Vi tri cua bien x la : %p \n",&x);
printf("*Noi dung cua bien x la :%d \n",x);
printf("-Vi tri cua bien con tro px la :%p \n",px);
printf("*Noi dung cua bien con tro px la : %d \n",*px);
getch();
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 6Website học trực tuyến – www.videobook.vn
Trang 7Website học trực tuyến – www.videobook.vn
BÀI 4 : ĐỊA CHỈ TÊN MẢNG CHỎ TỚI
/* dia chi ten mang tro toi */
Con trỏ dùng để lưu trữ địa chỉ mỗi kiểu địa chỉ cần có kiểu con trỏ tương ứng Phép gán địa chỉ cho con trỏ chỉ diễn ra suôn sẻ khi kiểu địa chỉ phù hợp với kiểu con trỏ
printf("\nDia chi ten mang tro toi %p ",a);
printf("\nDia chi byte dau tien %p ",&a[0]);
getch();
}
Khi các hàm và các lệnh của chương trình đã hoàn tất đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 8Website học trực tuyến – www.videobook.vn
Trang 9Website học trực tuyến – www.videobook.vn
int a[MAX], b[MAX], c[2*MAX], n1, n2, i, i1, i2;
printf("\nCho biet so phan tu cua mang thu nhat : ");
scanf("%d", &n1);
printf("Nhap vao cac phan tu (giam dan) cua mang thu nhat : ");
for (i=0; i<n1; i++)
scanf("%d", &a[i]);
printf("\nCho biet so phan tu cua mang thu hai : ");
scanf("%d", &n2);
printf("Nhap vao cac phan tu (giam dan) cua mang thu hai : ");
for (i=0; i<n2; i++)
Trang 10Website học trực tuyến – www.videobook.vn
Trang 11Website học trực tuyến – www.videobook.vn
c[i++] = b[i2 ];
printf("\nCac phan tu cua mang tron : ");
for (i=0; i<n1+n2; i++)
Trang 12Website học trực tuyến – www.videobook.vn
BÀI 6: GIẢI BÀI TOÁN BẰNG ĐỆ QUY
* - Trinh bay cac buoc chuyen n dia tu coc A sang coc C
trong bai toan thap Hanoi dung ba dia */
Trang 13Website học trực tuyến – www.videobook.vn
else if ((from == A && to == B) || (from == B && to == A))
Trang 14Website học trực tuyến – www.videobook.vn
Trang 15Website học trực tuyến – www.videobook.vn
BÀI 7: SỬ DỤNG CON TRỎ ĐỂ NHẬP DỮ LIỆU
VÀO TẬP TIN
Trước khi xây dựng một hoặc một số cấu trúc có cùng một kiểu
ta cần phải mô tả kiểu của nó Khi định nghĩa một kiểu cấu trúc cần
chỉ ra: tên của kiểu cấu trúc và các thành phần của nó: như sau
Struct_ tên kiểu cấu trúc là từ khóa do người lập trình tự đặt
{ thành phần cấu trúc } có thể là biến, mảng , nhóm bit hợp hoặc một
cấu trúc khác mà kiểu của nó đã định nghĩa từ trước
#include"stdio.h"
#include"stdlib.h"
#include"conio.h"
#define ESC 27
typedef struct cautruc *contro;
typedef struct cautruc
Trang 16Website học trực tuyến – www.videobook.vn
Trang 17Website học trực tuyến – www.videobook.vn
printf("\n+Bam phim <ESC> de ket thuc nhap"); c=getchar();
c=getch();
} while (c!=ESC); /*Bam ESC de cham dut nhap*/
printf("\n\t+Da ghi vao tap tin TEN_TUOI.DAT");
printf("\n\tBam phim bat ky de ket thuc");
Trang 18Website học trực tuyến – www.videobook.vn
getch();
} Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và
chính xác bạn Click Tab Buid run (F5) chương trình chạy như
sau
Trang 19Website học trực tuyến – www.videobook.vn
BÀI 8: KHAI BÁO TOÁN TỬ CẤU TRÚC, SỬ DỤNG
struct x M[]={"Nguyen Dinh Te","35/6 Bui Vien, Quan 1","8-360.124",
"Hoang Duc Hai","231 Nguyen Van Cu, Quan 5","8-350.656",
"Pham Hoang Dung","352/8 Nguyen Dinh Chieu, Quan 3","8-326.667",
"Truong Thi Thanh Mai","70 Ham Nghi, Quan 1","8-214.545"};
char k;
void hien_thi(struct x ct) /* Truy xuat bang toan tu dau cham (.) */
{
printf("\n\t -");
printf("\n\t Ong: %s ",ct.ten);
printf("\n\t Dia chi: %s",ct.diachi);
Trang 20Website học trực tuyến – www.videobook.vn
printf("\n\t Dien thoai: %s",ct.dienthoai);
Trang 21Website học trực tuyến – www.videobook.vn
BÀI 9: BÀI TẬP VỀ CẤU TRÚC IN MỘT BIỂU
THỨC TƯƠNG ỨNG
#include <stdio.h>
#include <conio.h>
#define MAX 100
#define PLUS 0 /* Dau cong */
#define MINUS 1 /* Dau tru */
#define MULTIPLE 2 /* Dau nhan */
#define DIVIDE 3 /* Dau chia */
#define LPAREN 4 /* Dau mo ngoac don */
#define RPAREN 5 /* Dau dong ngoac don */
Trang 22Website học trực tuyến – www.videobook.vn
Trang 23Website học trực tuyến – www.videobook.vn
Trang 24Website học trực tuyến – www.videobook.vn
Trang 25Website học trực tuyến – www.videobook.vn
case '9' : printf("%c ", c); break;
case '+' : xet(PLUS); break;
case '-' : xet(MINUS); break;
case '*' : xet(MULTIPLE); break;
case '/' : xet(DIVIDE); break;
case '(' : push(LPAREN); break;
case ')' : done = 0;
do {
Trang 26Website học trực tuyến – www.videobook.vn
Trang 27Website học trực tuyến – www.videobook.vn
void main()
{
char expr[50];
int done = 0;
printf("\nChuong trinh in bieu thuc hau to tuong ung voi mot bieu thuc"
"trung to hop le"
"\nChu y :"
"\nCac toan hang chi tu 0 den 9"
"\nCac toan tu chi gom + - * / ( )\n");
Trang 28Website học trực tuyến – www.videobook.vn
Trang 29Website học trực tuyến – www.videobook.vn
BÀI 10: BÀI TOÁN CON TRỎ CẤU TRÚC VÀ ĐỊA
typedef struct cautruc *contro;
/*Dung kieu ban ghi truoc khi dinh nghiq */
typedef struct cautruc
Trang 30Website học trực tuyến – www.videobook.vn
moi=(struct cautruc *) malloc(sizeof(struct cautruc));
printf("\n NHAP TEN VA TIEN LUONG TRONG TUAN");
printf("\n\t DANH SACH TEN VA TIEN LUONG TRONG TUAN"); printf("\n\t **************************************");
Trang 31Website học trực tuyến – www.videobook.vn
while (dau !=NULL)
getch();
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 32Website học trực tuyến – www.videobook.vn
BÀI 11: HIỂN THỊ BẢN MÃ ASCII DÙNG HÀM CÁC
Trang 33Website học trực tuyến – www.videobook.vn
Trang 34Website học trực tuyến – www.videobook.vn
Trang 35Website học trực tuyến – www.videobook.vn
BÀI 12: ĐẶT MÀU NỀN VÀ CHỮ CHO VĂN
BẢN
Giả sử ta muốn có một màn hình cở 25 x 80 ( 25 hàng 80 cột )màu CYAN xanh lơ giữa màn hình là một cửa sổ màu đỏ RED
Trang 36Website học trực tuyến – www.videobook.vn
/* dong chu mau trang */
textcolor(WHITE);
gotoxy(1,4);
cprintf("\n\n%10c happy new year",' ');
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và
chính xác bạn Click Tab Buid run (F5) chương trình chạy như
sau
Trang 37Website học trực tuyến – www.videobook.vn
BÀI 13: CÁC THAO TÁC TRÊN TẬP TIN, MỞ
fclose(f); /* đóng tệp */
printf("\n Bam phim bat ky de ket thuc");
Trang 38Website học trực tuyến – www.videobook.vn
getch();
} Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 39Website học trực tuyến – www.videobook.vn
BÀI 14: ĐỌC TẬP TIN DÙNG HÀM PUTC
printf("\nDOC TAP TIN VA THONG KE CHU");
printf("\n-Cho biet ten tap tin can doc: ");
gets(tap_tin);
f=fopen(tap_tin,"rt");
if (f==NULL)
{ perror("\nKhong doc duoc, vi: ");
Trang 40Website học trực tuyến – www.videobook.vn
printf("\nBam phim bat ky de ket thuc");
getch();
exit(1);
} else
printf("\n-Kich thuoc tap tin: %ld bytes",kich_thuoc+1);
printf("\n\tBam phim bat ky de thong ke chu");
Trang 41Website học trực tuyến – www.videobook.vn
printf("\n Bam phim bat ky de ket thuc");
getch();
}
} Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 42BÀI 15: ĐỌC DỮ LIỆU TỪ TẬP TIN BẤT KỲ
Trang 43printf("\n\t DOC DU LIEU TU TAP TIN"); }
} fclose(f);
printf("\n Bam phim bat ky de ket thuc");
getch();
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 44Website học trực tuyến – www.videobook.vn
BÀI 16: KHAI BÁO BIẾN TẬP TIN
f=fopen("chuoi.txt","a"); /* Mo tap tin CHUOI.TXT */
fputs("\n\tKy niem 300 nam Sai Gon - Thanh pho Ho Chi Minh",f);
printf("\n\tDa ghi them vao tap tin CHUOI.TXT");
printf("\n\t Bam phim bat ky de ket thuc");
getch();
Trang 45Website học trực tuyến – www.videobook.vn
}
Trang 46Website học trực tuyến – www.videobook.vn
BÀI 17: ĐOẠN CHƯƠNG TRÌNH CHỬA CÁC CHỈ
Trang 47Website học trực tuyến – www.videobook.vn
Trang 48Website học trực tuyến – www.videobook.vn
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 49Website học trực tuyến – www.videobook.vn
Trang 50Website học trực tuyến – www.videobook.vn
BÀI 18: VIẾT CHƯƠNG TRÌNH NHẬP BẢNG
Trang 51Website học trực tuyến – www.videobook.vn
printf("\nNhap cac phan tu cua mang : ");
for (i=0; i<n; i++)
Trang 52Website học trực tuyến – www.videobook.vn
Trang 53Website học trực tuyến – www.videobook.vn
BÀI 19: Giai gan dung phuong trinh vi phan cap mot
bang phuong phap các chỉ thị
tiền xử lý đơn giản
/* Giai gan dung phuong trinh vi phan cap mot bang phuong phap Kutta */
Trang 54Website học trực tuyến – www.videobook.vn
printf("\nGia tri diem dau a = ");
printf("\nGia tri dau Y[%6.2lf] = %lf", a, y[0]);
printf("\nSo khoang chia n = %d", n);
printf("\n X Y y(x)");
Trang 55Website học trực tuyến – www.videobook.vn
for (i=0; i<n; i++)
printf("\n %10.4lf %10.4lf %10.4lf", x[i], y[i], f(x[i],y[i]));
getch();
}
Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính xác
bạn Click Tab Buid run (F5) chương trình chạy như sau
Trang 56Website học trực tuyến – www.videobook.vn
BÀI 20: THIẾT LẬP MỘT MA TRẬN CHUYỂN VỊ
/* Thiet lap ma tran chuyen vi */
Trang 57Website học trực tuyến – www.videobook.vn
printf("\nCho biet cap ma tran : ");
printf("\nMa tran chuyen vi cua no = ");
for (i=0; i<n; i++)
Trang 58Website học trực tuyến – www.videobook.vn
getch();
} Khi các hàm và các lệnh của chương trình đã hoàn tât đầy đủ và chính
xác bạn Click Tab Buid run (F5) chương trình chạy như sau