深海重苹果 2021-06-24 15:07 采纳率: 100%
浏览 19
已采纳

为这么这里输入0 0 0并不能控制循环结束

Book book[1000];//定义图书存储空间
	int count = 0;
	bool tag = true;
	while (tag) {
		cout << "请输入书号,书名和价格(中间以空格符隔开),以0 0 0结束" << endl;
		cin >> book[count].no;
		cin >> book[count].name;
		cin >> book[count].price;
		if (book[count].no == 0 && book[count].name == 0 && book[count].price == 0) { tag = false; }
		count++;
		if (count == M) { tag = false; }
	}
  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-06-24 15:12
    关注

    book[count].name 应该是一个字符数组吧,不能直接book[count].name == 0

    改成:

    strcmp(book[count].name,"0") == 0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?