#include <iostream>
#include "Sales_item.h"
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv)
{
Sales_item item1,item2;int cnt=0;
if(std::cin>>item1)
{
cnt=1;
while(std::cin>>item2)
{
if(item1.isbn()==item2.isbn())
{
item1+=item2;
cnt++;
}
else{
std::cout<<item1<<" occours "<<cnt<<" times " <<std::endl;
item1=item2;
cnt=1;
}
}
std::cout<<item1<<" occpurs "<<cnt<<" times "<< std::endl;
}
/* int main(int argc, char** argv) {
Sales_item total;
if (std::cin >> total)
{
Sales_item trans;
int count = 1; //统计记录
while (std::cin >> trans){
if (total.isbn() == trans.isbn()){
total +=trans;
++count;
}
else{
std::cout << total << std::endl;
std::cout << count << std::endl;
total = trans;
count = 1;
}
}
std::cout << total << std::endl;
std::cout << count << std::endl;
} else {
std::cerr << "Wrong input!" << std::endl;
return -1;
} */
return 0;
}
#include "Sales_item.h"
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv)
{
Sales_item item1,item2;int cnt=0;
if(std::cin>>item1)
{
cnt=1;
while(std::cin>>item2)
{
if(item1.isbn()==item2.isbn())
{
item1+=item2;
cnt++;
}
else{
std::cout<<item1<<" occours "<<cnt<<" times " <<std::endl;
item1=item2;
cnt=1;
}
}
std::cout<<item1<<" occpurs "<<cnt<<" times "<< std::endl;
}
/* int main(int argc, char** argv) {
Sales_item total;
if (std::cin >> total)
{
Sales_item trans;
int count = 1; //统计记录
while (std::cin >> trans){
if (total.isbn() == trans.isbn()){
total +=trans;
++count;
}
else{
std::cout << total << std::endl;
std::cout << count << std::endl;
total = trans;
count = 1;
}
}
std::cout << total << std::endl;
std::cout << count << std::endl;
} else {
std::cerr << "Wrong input!" << std::endl;
return -1;
} */
return 0;
}
上边的代码,第一部分是我自己写的,第二部分是是复制的别人的,即被注释掉的部分,两个代码都有相同的问题,即最后一个输入的数据是无法打印出来的,原因是无法跳出while,无法跳出while是因为,当while读到最后一个数字之后,即后面已经没有数字,while不会跳出,还在等待输入,如何才能让while在读完最后一个数字之后,能跳出while。这个是可以解决的,但是我更想明白的是为什么while在没有输入时,不会跳出,先写到这,等我解决的了,再修改这个博客。