By GokiSoft.com|
19:35 11/01/2022|
Lập Trình C
Quản lý sách - Lập trình C
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)
![Triệu Văn Lăng [T2008A]](https://www.gravatar.com/avatar/1348e3562c6492c26f796cb1f45982a1.jpg?s=80&d=mm&r=g)
Triệu Văn Lăng
2020-10-12 08:28:56
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void showMenu(){
printf("\nchon1. Nhap du lieu tung quyen sach");
printf("\nchon2. Sap xep, hien thi chi tiet tung quyen sach, thong ke theo nxb ");
printf("\nchon3. Tim sach theo the loai");
printf("\nchon4. Luu tap tin");
printf("\nchon5. Thoat");
printf("\nmoi chon");
}
typedef struct book_ST {
char ten[30], theloai[30];
int giatien, namxb, stt;
} book;
void inputbookList(book *p){
int i;
for(i=0;i<3;i++) {
printf("\nnhap stt "); scanf("%d", &p[i].stt);
printf("\nnhap ten quyen sach thu %d ",i+1);
fflush(stdin);fflush(stdout);
gets(p[i].ten);
printf("\nnhap the loai ");
fflush(stdin);fflush(stdout);
gets(p[i].theloai);
printf("\nnhap gia tien ");
scanf("%d",&p[i].giatien);
printf("\nnhap nam xuat ban ");
scanf("%d",&p[i].namxb);
}
}
void sx(book *p){
int i, j;
for(i=0;i<3;i++) {
for(j=i+1;j<4;j++) {
int cmp=strcmp(p[i].ten, p[j].ten);
if(cmp>0) {
book tmp=p[i];
p[i]=p[j];
p[j]=tmp;
}
}
}
}
void displaybookList(book *p) {
int i;
printf("\n||%-10d||%-30s||%-30s||%-15s||%-10s||","stt", "ten","theloai","giatien","namxb");
for(i=0;i<3;i++) {
printf("\n||%-10d||%-30s||%-30s||%-15d||%-10d||",p[i].stt, p[i].ten, p[i].theloai, p[i].giatien, p[i].namxb);
}
}
void searchbookList(book *p) {
int i;
char j;
printf("\nnhap the loai");
fflush(stdin);fflush(stdout);
gets(p[j].theloai);
printf("\n%-30s||%-30s||%-15s||%-10s||", "ten","theloai","giatien","namxb");
for(i=0;i<3;i++){
if(p[j].theloai==p[i].theloai){
printf("\n%-30s||%-30s||%-15d||%-10d", p[i].ten, p[i].theloai, p[i].giatien, p[i].namxb);
} else {
printf("\nkhong co ket qua");
}
}
}
void savebookList(book *p) {
FILE *fp;
fp=fopen("book.dat","wb");
fwrite(p, sizeof(book), 3, fp);
fclose(fp);
}
int main(int argc, char *argv[]) {
book bookList[4];
int n;
do {
showMenu();
scanf("%d", &n);
switch(n) {
case 1:
inputbookList(bookList);
break;
case 2:
sx(bookList);
displaybookList(bookList);
break;
case 3:
searchbookList(bookList);
break;
case 4:
savebookList(bookList);
break;
case 5:
printf("\nket thuc!!!");
break;
default:
printf("\nban nhap sai roi!!!!nhap lai");
}
}
while(n!=5);
return 0;
}
![Nguyễn Hữu Hiếu [T2008A]](https://www.gravatar.com/avatar/ca2884508b617fee77f000c7d99c219d.jpg?s=80&d=mm&r=g)
Nguyễn Hữu Hiếu
2020-10-03 14:20:51
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
typedef struct book_ST {
char name[30], type[20];
int money, year;
} book;
void show();
void input(book *p);
void sapxep(book *p);
void search(book *p);
void save(book *p);
int main(int argc, char *argv[]) {
int choose;
book bookList[3];
do {
show();
scanf("%d", &choose);
switch(choose) {
case 1:
input(bookList);
break;
case 2:
sapxep(bookList);
hienthi(bookList);
thongke(bookList);
break;
case 3:
search(bookList);
break;
case 4:
save(bookList);
break;
case 5:
printf("\nThoat chuong trinh!!!");
break;
default:
printf("\nNhap sai!!!");
break;
}
} while(choose != 5);
return 0;
}
void show() {
printf("\n1. Nhap du lieu: ");
printf("\n2. Sap xep, thong ke, hien thi: ");
printf("\n3. Tim sach theo the loai: ");
printf("\n4. Save .dat: ");
printf("\n5. Thoat: ");
printf("\nChon choose: ");
}
void input(book *p) {
int i;
for(i=0;i<3;i++) {
printf("\nNhap thong tin quyen sach thu %d", i+1);
printf("\nNhap ten: ");
fflush(stdin); fflush(stdout);
gets(p[i].name);
printf("\nNhap the loai: ");
fflush(stdin); fflush(stdout);
gets(p[i].type);
printf("\nNhap gia ban: ");
fflush(stdin); fflush(stdout);
scanf("%d", &p[i].money);
printf("\nNhap nam xuat ban: ");
fflush(stdin); fflush(stdout);
scanf("%d", &p[i].year);
}
}
void sapxep(book *p) {
int i,j,k;
book temp;
for(i=0;i<2;i++) {
for(j=i+1;j<3;j++) {
k = strcmp(p[i].type, p[j].type);
if( k == -1) {
temp = p[i];
p[i] = p[j];
p[j] = temp;
}
}
}
}
void hienthi(book *p) {
int i;
printf("\n%3s||%10s||%10s||%10s||%10s",
"STT", "Ten", "The Loai", "Gia ban", "Nam xuat ban");
for(i=0;i<3;i++) {
printf("\n%3d||%10s||%10s||%10d||%10d",
i+1, p[i].name, p[i].type, p[i].money, p[i].year);
}
}
void thongke(book *p) {
int k,i,j,count[3] = {1,1,1};
for(i=0;i<2;i++) {
for(j=i+1;j<3;j++) {
if(p[i].year == p[j].year) {
count[i]++;
count[j]--;
}
}
}
for(i=0;i<3;i++) {
if(count[i] != 0) {
printf("\nNam %d co %d quyen", p[i].year, count[i]);
}
}
}
void search(book *p) {
char typeNhap[30];
int i, k, count = 0;
printf("\nNhap the loai sach can tim:");
fflush(stdin); fflush(stdout);
gets(typeNhap);
for(i=0;i<3;i++) {
k = strcmp(typeNhap, p[i].type);
if(k == 0) {
count++;
}
}
printf("\nThe loai sach %s co %d quyen", typeNhap, count);
}
void save(book *p) {
FILE *fp;
fp = fopen("D://Quanlysach.dat","w");
fwrite(p,sizeof(book),3,fp);
fclose(fp);
}
![Nguyễn Tiến Đạt [T2008A]](https://www.gravatar.com/avatar/b5819cd0adc95c727c7ad0c2bcf6098b.jpg?s=80&d=mm&r=g)
Nguyễn Tiến Đạt
2020-10-03 01:49:51
//Assignment Quan li sach(checked)
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
typedef struct book_st{
char ten[30],theloai[30];
int giatien, namxuatban;
}Book;
void Menu(){
printf("\n1.Nhap du lieu cua tung quyen sach.");
printf("\n2.Sap xep va hien thi thong tin chi tiet cua tung quyen sach theo ten(Z->A), thong ke sach theo nam xuat ban.");
printf("\n3.Tim quyen sach theo the loai.");
printf("\n4.Ghi vao tap tin nhi phan book.dat.");
printf("\n5.Thoat.");
}
void nhaptruyen(Book *p){
int i;
for(i=0;i<3;i++){
fflush(stdin);fflush(stdout);
printf("\nNhap quyen sach %d:",i+1);
fflush(stdin);fflush(stdout);
printf("\nTen: ");
gets(p[i].ten);
fflush(stdin);fflush(stdout);
printf("\nThe loai: ");
gets(p[i].theloai);
fflush(stdin);fflush(stdout);
printf("\nGia tien: ");
scanf("%d",&p[i].giatien);
fflush(stdin);fflush(stdout);
printf("\nNam xuat ban: ");
scanf("%d",&p[i].namxuatban);
fflush(stdin);fflush(stdout);
}
}
void hienthitruyen(Book *p){
int i,j;
for(i=0;i<2;i++){
for(j=i+1;j<3;j++){
int cmp=strcmp(p[i].ten,p[j].ten);
if(cmp<0){
Book temp=p[i];
p[i]=p[j];
p[j]=temp;
}
}
}
printf("\n%-5s||%-30s||%-30s||%-12s||%-20s","STT","Ten","The loai","Gia tien","Nam xuat ban");
for(i=0;i<3;i++){
printf("\n00%d ||%-30s||%-30s||%-12d||%-20d",i+1,p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
}
printf("\n");
int count[3]={1,1,1};
for(i=0;i<2;i++){
if(count[i]==0){
continue;
}
for(j=i+1;j<3;j++){
if(count[j]==0){
continue;
}
if(p[i].namxuatban==p[j].namxuatban){
count[i]++;
count[j]--;
}
}
}
for(i=0;i<3;i++){
if(count[i]!=0){
printf("\nNam %d co %d quyen sach",p[i].namxuatban,count[i]);
}
}
printf("\n");
}
void timtheloai(Book *p){
int i;
int count=0;
char loai[50];
fflush(stdin);fflush(stdout);
printf("\nNhap the loai can tim: ");
gets(loai);
fflush(stdin);fflush(stdout);
for(i=0;i<3;i++){
int cmp=strcmp(loai,p[i].theloai);
if(cmp==0){
count++;
}
}
if(count!=0){
printf("\n%-5s||%-30s||%-30s||%-12s||%-20s","STT","Ten","The loai","Gia tien","Nam san xuat");
}
count=0;
for(i=0;i<3;i++){
int cmp=strcmp(loai,p[i].theloai);
if(cmp==0){
count++;
printf("\n00%d ||%-30s||%-30s||%-12d||%-20d",i+1,p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
}
}
if(count==0){
printf("\nKhong co quyen sach thuoc the loai nay");
}
printf("\n");
}
void ghithongtin(Book *p){
FILE *fp;
fp=fopen("book.dat","wb");
fread(p, sizeof(Book), 3, fp);
fclose(fp);
}
int main(){
Book bookList[3];
int choose;
while(1){
Menu();
printf("\nLua chon chuong trinh: ");
scanf("%d",&choose);
switch(choose){
case 1:
nhaptruyen(bookList);
break;
case 2:
hienthitruyen(bookList);
break;
case 3:
timtheloai(bookList);
break;
case 4:
ghithongtin(bookList);
printf("\nDa luu thanh cong!!\n");
break;
case 5:
printf("\nTam biet!!\n");
exit(0);
break;
default:
printf("\nLoi cu phap, moi chon lai!!\n");
break;
}
}
}
![Do Trung Duc [T2008A]](https://www.gravatar.com/avatar/2973ac07124f066b4605c535e8d39a99.jpg?s=80&d=mm&r=g)
Do Trung Duc
2020-10-01 13:47:33
#include <stdio.h>
#include <stdlib.h>
typedef struct book_st{
char ten[30], theloai[30];
int giatien, namxuatban;
} book;
int length = 3;
void menu(book *p){
printf("\n1.Nhap du lieu tung quyen sach");
printf("\n2.Sap xep, hien thi thong tin chi tiet cua tung quyen sach theo the loai (Z->A). Thong ke sach theo nam xuat ban");
printf("\n3.Tim quyen sach theo the loa");
printf("\n4.Ghi vao tap tin nhi phan book.dat");
printf("\n5.Thoat");
}
void nhapdulieu(book *p){
int i;
for(i=0;i<length;i++){
printf("\nNhap thong tin quyen sach %d", i+1);
printf("\nNhap ten: ");
fflush(stdin), fflush(stdout);
gets(p[i].ten);
printf("\nNhap theloai: ");
fflush(stdin), fflush(stdout);
gets(p[i].theloai);
printf("\nNhap gia tien: ");
fflush(stdin), fflush(stdout);
scanf("%d", &p[i].giatien);
printf("\nNhap nam xuat ban: ");
fflush(stdin), fflush(stdout);
scanf("%d", &p[i].namxuatban);
}
}
void sapxep(book *p){
int cmp, i,j;
book temp;
for(i=0;i<length-1;i++){
for(j=i+1;j<length;j++){
cmp = strcmp(p[i].theloai,p[j].theloai);
if(cmp>0){
temp = p[i];
p[i] = p[j];
p[j] = temp;
}
}
}
}
void hienthisausapxep(book *p){
printf("\n|%30s|%30s|%10s|%10s","Ten", "The loai", "Gia tien","Nam xuat ban");
int i;
for(i=0;i<length;i++){
printf("\n|%30s|%30s|%10d|%10d",p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
}
}
void thongketheonamxuatban(book *p){
int i,j;
int count[3] = {1,1,1};
for(i=0;i<length-1;i++){
if(count[i]==0){
continue;
}
for(j=i+1;j<length;j++){
if(count[j]==0){
continue;
}
if(p[i].namxuatban==p[j].namxuatban) {
count[i]++;
count[j]--;
}
}
}
for(i=0;i<3;i++){
if(count[i]!=0){
printf("\nNam %d co %d quyen sach", p[i].namxuatban, count[i]);
}
}
}
void timtheotheloai (book *p){
char name[50];
printf("Nhap the loai sach: ");
fflush(stdin), fflush(stdout);
gets(name);
printf("\n|%30s|%30s|%10s|%10s","Ten", "The loai", "Gia tien","Nam xuat ban");
int count,i;
count = 0;
for(i=0;i<length;i++){
int cmp = strcmp (name, p[i].theloai);
if(cmp==0){
printf("\n|%30s|%30s|%10d|%10d",p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
count++;
}
}
if(count==0){
printf("\nKhong co sach thuoc the loai nay");
}
}
void ghidulieu (book *p){
FILE *fp;
fp = fopen("book.dat","wb");
fwrite(p, sizeof (book), length, fp);
fclose(fp);
}
int main(int argc, char *argv[]) {
book bookList[3];
int choose;
do{
menu(bookList);
printf("\nNhap lua chon choose:");
scanf("%d",&choose);
switch(choose){
case 1:
nhapdulieu(bookList);
break;
case 2:
sapxep(bookList);
hienthisausapxep(bookList);
thongketheonamxuatban(bookList);
break;
case 3:
timtheotheloai(bookList);
break;
case 4:
ghidulieu(bookList);
break;
case 5:
printf("Thoat");
break;
default:
printf("Nhap choose sai!!!");
break;
}
}while(choose!=5);
return 0;
}
![An Văn Minh [T2008A]](https://www.gravatar.com/avatar/e0f14efe4b11f7d9d5901e8802319c92.jpg?s=80&d=mm&r=g)
An Văn Minh
2020-09-30 06:46:46
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct book_st{
char ten[30],theloai[30];
int giatien,namxuatban;
}Book;
void Showmenu();
void nhapdulieu(Book *p);
void sapxepdulieu(Book *p);
void hienthidulieu(Book *p);
void timkiemdulieu(Book *p);
void ghitep(Book *p);
int main(){
Book booklist[3];
int a;
while(a!=5){
Showmenu();
scanf("%d", &a);
switch(a){
case 1:
nhapdulieu(booklist);
break;
case 2:
sapxepdulieu(booklist);
hienthidulieu(booklist);
break;
case 3:
timkiemdulieu(booklist);
break;
case 4:
ghitep(booklist);
break;
case 5:
printf("\nGoodbye!!!");
break;
default:
printf("\nNhap sai!!!!!");
break;
}
}
return 0;
}
void Showmenu(){
printf("\n================MENU=================");
printf("\n1.Nhap du lieu tung quyen sach.");
printf("\n2.Sap xep va hien thi tung quyen sach.");
printf("\n3.Tim quyen sach theo the loai.");
printf("\n4.Ghi vao tep tin nhi phan book.dat.");
printf("\n5.Thoat!!!");
printf("\nChon: ");
}
void nhapdulieu(Book *p){
int i;
for(i=0;i<3;i++){
printf("\nNhap quyen sach %d", i+1);
printf("\nTen: ");
fflush(stdin);
gets(p[i].ten);
printf("\nThe loai: ");
fflush(stdin);
gets(p[i].theloai);
printf("\nGia tien: ");
fflush(stdin);
scanf("%d", &p[i].giatien);
printf("\nNam xuat ban: ");
scanf("%d", &p[i].namxuatban);
}
}
void sapxepdulieu(Book *p){
int i,j;
for(i=0;i<2;i++){
for(j=i+1;j<3;j++){
int cmp = strcmp(p[i].theloai,p[j].theloai);
if(cmp<0){
Book temp=p[i];
p[i]=p[j];
p[j]=temp;
}
}
}
}
void hienthidulieu(Book *p){
int i,j;
printf("\n%-3s||%-30s||%-30s||%-15s||%-10s||","STT","Ten","The loai","Gia tien","Nam xuat ban");
for(i=0;i<3;i++){
printf("\n00%d||%-30s||%-30s||%-15d||%-15d||",i+1,p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
}
printf("\n");
int count[3]={1,1,1};
for(i=0;i<2;i++){
if(count[i]==0){
continue;
}
for(j=i+1;j<3;j++){
if(count[j]==0){
continue;
}
if(p[i].namxuatban==p[j].namxuatban){
count[i]++;
count[j]--;
}
}
}
for(i=0;i<3;i++){
if(count[i]!=0){
printf("\nNam %d co %d quyen sach",p[i].namxuatban,count[i]);
}
}
}
void timkiemdulieu(Book *p){
int found=0;
int i,j;
char theloai[50];
fflush(stdin);fflush(stdout);
printf("\nNhap the loai can tim la: ");
gets(theloai);
fflush(stdin);fflush(stdout);
for(i=0;i<3;i++){
int cmp=strcmp(theloai,p[i].theloai);
if(cmp==0){
found++;
}
}
if(found!=0){
printf("\n%-3s||%-30s||%-30s||%-15s||%-10s||","STT","Ten","The loai","Gia tien","Nam xuat ban");
found=0;
}
for(i=0;i<3;i++){
int cmp=strcmp(theloai,p[i].theloai);
if(cmp==0){
printf("\n00%d||%-30s||%-30s||%-15d||%-15d||",i+1,p[i].ten,p[i].theloai,p[i].giatien,p[i].namxuatban);
found++;
}
}
if(found==0){
printf("\nKhong co quyen sach thuoc the loai nay.");
}
}
void ghitep(Book *p){
FILE *fp;
fp=fopen("book.dat", "wb");
fread(p, sizeof(Book), 3,fp );
fclose(fp);
}