Làm thế nào để in ra "Không có dữ liệu" khi lựa chọn hiển thị danh sách rỗng?

Mọi người cho em hỏi chút, có cách nào để khi em nhập lựa chọn 2, nếu không có dữ liệu thì màn hình xuất ra " Khong co du lieu " không ạ?
Em cảm ơn !!!

image

#include<iostream>
#include<string>
#define max 100
using namespace std;


struct CD
{
	string ten_dia;
	string ca_si;
	string loai_nhac;
};

struct DanhSach
{
	struct CD cd[max];
	int soluong;
};

int main()
{  
    struct DanhSach ds;
    CD cd[max];
	int luachon;
	
	//So luong dia CD can nhap

    while(true)
    {
      cout<<"==== CHUONG TRINH QUAN LY DIA CD ====";	
      cout<<"\n1.Them dia CD";
      cout<<"\n2.Hien thi danh sach dia CD";
      //cout<<"\n3.Hien thi danh sach dia CD theo loai";
      //cout<<"\n4.Tim thong tin cua 1 dia CD thong qua ten dia";
      //cout<<"\n5.Sua thong tin cua 1 dia CD thong qua ten dia";
      //cout<<"\n6.Sap xep dia CD theo vi tri va hien thi danh sach da duoc sap xep";
      //cout<<"\n7.Thoat";
      
      cout <<"\n\nNhap lua chon: "; 
      cin >> luachon;
      
      {
        //Them dia CD
	  	if(luachon==1)
      	{
      		system("cls");
      		cout << "So luong dia CD can nhap: ";
      		cin >> ds.soluong;
	        cin.ignore();
	        cout << endl;
	        for(int i=1;i<=ds.soluong;i++)
	        {   
				cout <<"Ma dia: "<< i << endl;
	        	cout << "Ten dia: ";
             	getline(cin, cd[i].ten_dia);	
				cout << "Ca si: ";
	        	getline(cin, cd[i].ca_si);
	        	cout << "Loai nhac: ";
	        	getline(cin, cd[i].loai_nhac);
	        	cout<<"Them dia thanh cong!" << endl << endl;
			}  
		}
		//Hien thi danh sach dia CD
		if(luachon==2)
		{   
		    
		    cout << "Ma dia" << "\t\tTen dia" << "\t\tCa si" << "\t\tLoai nhac" << endl;
			for(int i=1;i<=ds.soluong;i++)
			{   
				cout << i << "\t\t" << cd[i].ten_dia << "\t\t" << cd[i].ca_si << "\t\t" << cd[i].loai_nhac << endl;
			}
		}
		/* 
		if(luachon==3)
		{
			
		}
		
 		if(luachon==4)
		{   
		
		}
		
		if(luachon==5)
		{
			
		}
		
		if(luachon==6)
		{
			
		}
		*/
		//Thoat
		if(luachon==7)
		{
			exit(0);
		}
	  } 
    }
	return 0;
}

Đầu tiên, cậu phải khởi tạo biến ds. Chí ít là cho trường soluong = 0 đã.
Tiếp theo, cậu hoàn toàn có thể viết 1 câu lệnh if để kiểm tra ds.soluong bằng hay khác 0. Nếu bằng 0 thì cậu in ra thông điệp cậu muốn, nếu khác 0 thì cậu làm điều như cậu đang làm ở lựa chọn 2.

Hope it helps!

3 Likes

Trong struct DanhSach đã có mảng CD rồi, bạn tạo thêm mảng CDmain để làm gì nữa vậy? À, để bạn lưu các CD mà bạn nhập vào! Nhưng cái mảng CD ở trong DanhSach thì bạn tạo ra chỉ để “trưng bày” thôi à?

Tôi tự nấu 5 tô mì cho gia đình tôi, sau đó tôi ra tiệm mua 5 tô mì để cả nhà ăn, vứt 5 tô mì mà tôi đã làm. Tôi thật tiết kiệm!

Về câu hỏi của bạn: Trước khi nhập thì soluong bằng mấy? Chưa nhập gì thì soluong phải bằng 0 (không) rồi. Gán mặc đinh là 0, sau đó chỉ cần kiểm tra soluong là biết nó có hay không thôi.

3 Likes

Cảm ơn bạn đã chỉ bảo !!!

1 Like

Dạ vâng, em cảm ơn !!!

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?