Lập trình với cấu trúc trong C
Cấu trúc trong C
* Structure là một tập hợp các biến với kiểu dữ liệu khác nhau được cung cấp dưới một tên.
- Struct là một kiểu dữ liệu do người dung tự định nghĩa
- Ví dụ: Nếu muốn lưu thông tin của một người bao gồm: tên người, chứng minh nhân dân, mức lương. Ta có thể dễ dàng lưu trữ dưới các biến riêng biệt như họ tên, cmnd, mức lương một cách riêng biệt.
- Tuy nhiên, trong hệ thống sẽ có nhiều người, lúc đó ta sẽ cần đển một bộ các biến như: name1, citNo1, salary1, name2, citNo2, salary2
* Khai báo một cấu trúc trong C
- Từ khóa truct định nghĩa một kiểu cấu trúc được định dang bởi một tên duy nhất (tên của structure)
- Khai báo cấu trúc bên trong cặp ngoặc nhọn
* Phần sau đây định nghĩa một cấu trúc gồm 3 biến thành viên: name, age and salary.
* Truy cập vào 1 biến thành viên của cấu trúc
-Xem thêm code khác tại đây:
Bài tập thực hành 1
Xem code lab tại đây
Bài tập thực hành 1
Xây dựng cấu trúc
Gọi và sử dụng cấu trúc
Kết quả
Code của chương trình
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct Person
{
char name[50];
int age;
float salary;
};
int main ()
{
Person p1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(p1.name);
printf("Nhap tuoi:");
scanf("%d",&p1.age);
printf("Nhap muc luong: ");
scanf("%f",&p1.salary);
printf("\n===========================\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",p1.name);
printf("\nTuoi: %d",p1.age);
printf("\nMuc luong: %5.2f",p1.salary);
return 0;
}
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct Person
{
char name[50];
int age;
float salary;
};
int main ()
{
Person p1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(p1.name);
printf("Nhap tuoi:");
scanf("%d",&p1.age);
printf("Nhap muc luong: ");
scanf("%f",&p1.salary);
printf("\n===========================\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",p1.name);
printf("\nTuoi: %d",p1.age);
printf("\nMuc luong: %5.2f",p1.salary);
return 0;
}
|
Bài tập thực hành 2
Bài 2: Tạo chương trình tính mức lương của nhân viên bao gồm các thông tin như sau:
Tạo cấu trúc
· Họ và tên của nhân viên
· Chức vụ của nhân viên
· Mức mức lương hàng tháng
· Mức chi hàng tháng
Hãy lập trình theo các yêu cầu sau:
1. Tạo file: CNTT01_STT_HoTen_BaiSo1.cpp
2. Khai báo kiểu cấu trúc như trên
3. Tạo 1 nhân viên TP1
4. Tạo 1 mảng danh sách nhân viên DS1
5. Nhập vào từ bàn phím các thông tin như trên cho nhân viên TP1
6. Nhập vào từ bàn phím các thông tin như trên cho danh sách DS1
7. In ra màn hình tất cả các thông tin của nhân viên
8. Lưu thông tin TP1 ra file
Bài 2: Tạo chương trình tính mức lương của nhân viên bao gồm các thông tin như sau:
Tạo cấu trúc
· Họ và tên của nhân viên
· Chức vụ của nhân viên
· Mức mức lương hàng tháng
· Mức chi hàng tháng
Hãy lập trình theo các yêu cầu sau:
1. Tạo file: CNTT01_STT_HoTen_BaiSo1.cpp
2. Khai báo kiểu cấu trúc như trên
3. Tạo 1 nhân viên TP1
4. Tạo 1 mảng danh sách nhân viên DS1
5. Nhập vào từ bàn phím các thông tin như trên cho nhân viên TP1
6. Nhập vào từ bàn phím các thông tin như trên cho danh sách DS1
7. In ra màn hình tất cả các thông tin của nhân viên
8. Lưu thông tin TP1 ra file
|
Code phần tạo cấu trúc và nhập trưởng phòng
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct NhanVien
{
char hoten[50];
char chucvu[50];
float mucluong;
float mucchi;
};
int main ()
{
NhanVien TP1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(TP1.hoten);
printf("\nNhap chuc vu: ");
gets(TP1.chucvu);
printf("Nhap muc luong: ");
scanf("%f",&TP1.mucluong);
printf("Nhap muc chi:");
scanf("%f",&TP1.mucchi);
printf("\n===========================\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",TP1.hoten);
printf("\nChuc vu: %d",TP1.chucvu);
printf("\nMuc luong: %5.2f",TP1.mucluong);
printf("\nMuc chi: %5.2f",TP1.mucchi);
return 0;
}
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct NhanVien
{
char hoten[50];
char chucvu[50];
float mucluong;
float mucchi;
};
int main ()
{
NhanVien TP1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(TP1.hoten);
printf("\nNhap chuc vu: ");
gets(TP1.chucvu);
printf("Nhap muc luong: ");
scanf("%f",&TP1.mucluong);
printf("Nhap muc chi:");
scanf("%f",&TP1.mucchi);
printf("\n===========================\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",TP1.hoten);
printf("\nChuc vu: %d",TP1.chucvu);
printf("\nMuc luong: %5.2f",TP1.mucluong);
printf("\nMuc chi: %5.2f",TP1.mucchi);
return 0;
}
|
Code phần lưu ra file
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct NhanVien
{
char hoten[50];
char chucvu[50];
float mucluong;
float mucchi;
};
int main ()
{
NhanVien TP1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(TP1.hoten);
printf("\nNhap chuc vu: ");
gets(TP1.chucvu);
printf("Nhap muc luong: ");
scanf("%f",&TP1.mucluong);
printf("Nhap muc chi:");
scanf("%f",&TP1.mucchi);
printf("\n----------Hien ra man hinh----------\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",TP1.hoten);
printf("\nChuc vu: %d",TP1.chucvu);
printf("\nMuc luong: %5.2f",TP1.mucluong);
printf("\nMuc chi: %5.2f",TP1.mucchi);
printf("\n----------Luu ra file----------\n");
//3.1 Khai bao con tro kieu file
FILE *fptr;
//3.2 Mo file
fptr = fopen("D:\\Nhanvien.txt","w");
//3.3 Kiem tra xem file co ton tai khong
if(fptr == NULL)
{
printf("Error!");
return (1);
}
//3.4 Bat dau luu ra file
printf("\n----------Hien ra man hinh----------\n");
//printf(fptr,"%s","Thong tin cua nhan su:");
fprintf(fptr,"nHo ten: %s",TP1.hoten);
fprintf(fptr,"\nChuc vu: %d",TP1.chucvu);
fprintf(fptr,"\nMuc luong: %5.2f",TP1.mucluong);
fprintf(fptr,"\nMuc chi: %5.2f",TP1.mucchi);
fclose(fptr);
return 0;
}
/*
1. Tạo cấu trúc dữ liệu với các thông tin sinh viên
Tạo cấu trúc
Khai báo biến kiểu cấu trúc
Nhập dữ liệu vào biến
Hiện dữ liệu ra màn hình
Lưu biến ra file
*/
#include <stdio.h>
struct NhanVien
{
char hoten[50];
char chucvu[50];
float mucluong;
float mucchi;
};
int main ()
{
NhanVien TP1;
printf("Nhap gia tri: \n");
printf("\nNhap ho ten: ");
gets(TP1.hoten);
printf("\nNhap chuc vu: ");
gets(TP1.chucvu);
printf("Nhap muc luong: ");
scanf("%f",&TP1.mucluong);
printf("Nhap muc chi:");
scanf("%f",&TP1.mucchi);
printf("\n----------Hien ra man hinh----------\n");
printf("Thong tin cua nhan su:");
printf("Ho ten: %s",TP1.hoten);
printf("\nChuc vu: %d",TP1.chucvu);
printf("\nMuc luong: %5.2f",TP1.mucluong);
printf("\nMuc chi: %5.2f",TP1.mucchi);
printf("\n----------Luu ra file----------\n");
//3.1 Khai bao con tro kieu file
FILE *fptr;
//3.2 Mo file
fptr = fopen("D:\\Nhanvien.txt","w");
//3.3 Kiem tra xem file co ton tai khong
if(fptr == NULL)
{
printf("Error!");
return (1);
}
//3.4 Bat dau luu ra file
printf("\n----------Hien ra man hinh----------\n");
//printf(fptr,"%s","Thong tin cua nhan su:");
fprintf(fptr,"nHo ten: %s",TP1.hoten);
fprintf(fptr,"\nChuc vu: %d",TP1.chucvu);
fprintf(fptr,"\nMuc luong: %5.2f",TP1.mucluong);
fprintf(fptr,"\nMuc chi: %5.2f",TP1.mucchi);
fclose(fptr);
return 0;
}
|
No comments: