每日小练——《C++ Primer 5》

2023年7月23日,22:31!

命运的齿轮开始转动啦!!从今天起会每天找着书上写几题,写写自己的感悟。

题1:

P13 T1.4.3 读取数量不定的输入数据

#include<iostream>
int main(){
	int sum=0,value=0;
	while(std::cin>>value)
		sum+=value;
	std::cout<<"sum is : "<<sum<<std::endl;
	return 0;
}

当我们使用一个istream对象作为条件时,其效果是检测流的状态。如果流是有效的,即未遇到错误,那么检测成功。当遇到文件结束符,或遇到一个无效的输入时(如读入的值不是一个整数),istream对象的状态 就会变成无效。处于无效状态的istream对象会使条件变假,while循环结束,执行下一条语句。

文件结束符:Windows系统中,文件结束符是 ctrl+Z,然后再按Enter或Return键;

                      Unix、Mac OS X系统中,文件结束符是ctrl+D

输出:

1.遇到文件结束符(ctrl+Z)

 2.遇到无效的输入(此时小数4.2会被取整为4,并返回一个错误,跳出while循环)

 题2:

P15 T1.4.4

使用if条件语句来统计子啊输入中每个值连续出现了多少次。

#include<iostream>
int main(){
	int currVal=0,val=0;
	if(std::cin>>currVal){
		int cnt=1;
		while(std::cin>>val){
			if(val==currVal)
				++cnt;
			else{
				std::cout<<currVal<<" occurs "<<cnt<<" times "<<std::endl;
				currVal=val;
				cnt=1;
			}
		}
		std::cout<<currVal<<" occurs "<<cnt<<" times "<<std::endl;
	}
	return 0;
}

bug:只能顺序计数,不能跳转。

输出1;

输出2:

 

 题3.1

Sales_item类的作用是表示一本书的总销售额、售出册数和平均售价

读写Sales_item

#include<iostream>
#include "Sales_item.h"  //导入Sales_item类

  
int main() 
{
    Sales_item book;//定义变量
    // 读取 ISBN, 售出的册数, 和单价
    std::cin >> book;
    // 输出 ISBN, 售出的册数, 总销售额和平均价格
    std::cout << book << std::endl;

    return 0;
}

输入:

0201-70353-x 4 24.99

输出:

0201-70353-x 4 99.96 24.99

题3.2

Sales_item对象的加法

#include <iostream>
#include "Sales_item.h"

int main()
{
    Sales_item item1, item2;

    std::cin >> item1 >> item2;   //读取一对交易记录
    std::cout << item1 + item2 << std::endl; //打印它们的和

    return 0;
}

输入

0201-78345-x 3 20.00

0201-78345-x 2 25.00

输出

0201-78345-x 5 110 22

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值