By GokiSoft.com| 19:38 02/10/2023|
Lập Trình C

Ôn tập tổng quát - quản lý sinh viên - Lập trình C BT1919

Liên kết rút gọn:

https://gokisoft.com/1919

Bình luận

avatar
GokiSoft.com
2023-10-02 14:34:58


#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 ten[30], theloai[30];
	int giatien, namxuatban;
} Book;

int main(int argc, char *argv[]) {
	Book bookList[3];
	int i, j;
	
	for(i=0;i<3;i++) {
		printf("\nNhap thong tin quan sach: %d", i+1);
		printf("\nNhap ten sach: ");
		fflush(stdin);fflush(stdout);
		gets(bookList[i].ten);
		printf("\nNhap the loai: ");
		fflush(stdin);fflush(stdout);
		gets(bookList[i].theloai);
		printf("\nNhap gia tien: ");
		fflush(stdin);fflush(stdout);
		scanf("%d", &bookList[i].giatien);
		printf("\nNhap nam xuat ban: ");
		fflush(stdin);fflush(stdout);
		scanf("%d", &bookList[i].namxuatban);
	}
	
	//B1. Khoi tao mang countList -> co cac phan tu bang 1
	int countList[3];
	for(i=0;i<3;i++) {
		countList[i] = 1;
	}
	
	//B2. Duyet mang
	for(i=0;i<2;i++) {
		if(countList[i] == 0) {
			continue;
		}
		for(j=i+1;j<3;j++) {
			if(countList[j] == 0) {
				continue;
			}
			//danh cho string
			//int cmp = strcmp(bookList[i].namxuatban, bookList[j].namxuatban);
			if(bookList[i].namxuatban == bookList[j].namxuatban) {
				countList[i]++;
				countList[j]--;
			}
		}
	}
	
	//B3. In ket qua
	for(i=0;i<3;i++) {
		if(countList[i] > 0) {
			printf("\nNam %d co %d quyen sach", bookList[i].namxuatban, countList[i]);
		}
	}
	
	return 0;
}



avatar
Nguyễn Tiến Đạt [T2008A]
2020-10-03 01:49:34



//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;	
		}
	}
}


avatar
hainguyen [T2008A]
2020-10-01 16:08:49



#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 */

typedef struct book_st {
	char ten[30], theloai[30];
	int giatien, namxuatban;
} Book ;

void showMenu() {
	
	printf("\n1. Nhap du lieu cua tung quyen sach");
	printf("\n2. Sap xep, hien thi, thong ke");
	printf("\n3. Tim sach theo the loai");
	printf("\n4. Save file");
	printf("\n5. Thoat");
	printf("\nChon: ");
	
}

void Nhapthongtin(Book *p);
void Sapxep(Book *p);
void Hienthi(Book *p);
void Thongke(Book *p);
void Timkiem(Book *p);
void Save(Book *p);

int main(int argc, char *argv[]) {
	
	Book bookLish[3];
	int choose;
	
	do {
		
		showMenu();
		scanf("%d", &choose);
		
		switch(choose){
			
			case 1:
				Nhapthongtin(bookLish);
				break;
			case 2:
				Sapxep(bookLish);
				Hienthi(bookLish);
				Thongke(bookLish);
				break;
			case 3:
				Timkiem(bookLish);
				break;
			case 4:
				Save(bookLish);
				break;
			case 5:
				printf("\nThoat.");
				break;
			default:
				printf("\nNhap sai.");
				break;
			
		}
		
	} while (choose != 5);
	
	return 0;
}

void Nhapthongtin(Book *p) {
	
	int i;
	for(i=0;i<3;i++){
		
		printf("\nNhap quyen sach thu : %d", i+1);
		
		printf("\nNhap ten: ");
		fflush(stdin); fflush(stdout);
		gets(p[i].ten);
		
		printf("\nThe loai: ");
		fflush(stdin); fflush(stdout);
		gets(p[i].theloai);
		
		printf("\nGia tien: ");
		fflush(stdin); fflush(stdout);
		scanf("%d", &p[i].giatien);
		
		printf("\nNam xuat ban: ");
		fflush(stdin); fflush(stdout);
		scanf("%d", &p[i].namxuatban);
		
	}
	
}

void Sapxep(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 tmp = p[i];
				p[i] = p[j];
				p[j] = tmp;
				
			}
			
		}
	}
	
}

void Hienthi(Book *p) {
	
	int i;
	
	printf("\n");
	for(i=0;i<66;i++){
		printf("-");
	}
	
	printf("\n%3s||%15s||%15s||%10s||%15s", "STT", "Ten", "The loai", "Gia ban", "Nam xuat ban");

for(i=0;i<3;i++){
	
	printf("\n%003d||%15s||%15s||%10d||%15d", i+1, p[i].ten, p[i].theloai, p[i].giatien, p[i].namxuatban);
	
}

printf("\n");
for(i=0;i<66;i++){
	
	printf("-");
}
}
void Thongke(Book *p) {
	
	int i,j;
	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 Timkiem(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||%15s||%15s||%10s||%15s||","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||%15s||%15s||%10d||%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 Save(Book *p) {
	FILE *fp;
	fp=fopen("book.dat", "wb");
	fread(p, sizeof(Book), 3, fp);
	fclose(fp);
}


avatar
An Văn Minh [T2008A]
2020-09-30 06:46:31



#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);
}