首页 > 编程语言 >【C++ Primer Plus习题】6.9

【C++ Primer Plus习题】6.9

时间:2024-08-29 18:21:34浏览次数:12  
标签:count donors cout money Plus file Donor 习题 Primer

问题:

这里是引用

解答:

#include <iostream>
#include <string>
#include <fstream>
using namespace std;

typedef struct _Donor
{
	string name;
	double money;
}Donor;

int main()
{
	ifstream file;
	string filename;
	int count = 0;
	cout << "请输入文件名:";
	getline(cin, filename);
	file.open(filename);
	if (!file.is_open())
	{
		cout << "文件打开失败!" << endl;
		exit(EXIT_FAILURE);
	}
	bool empty = true;;
	file >> count;
	Donor* donors = new Donor[count];
	file.get();
	for (int i = 0; i < count; i++)
	{
		getline(file, donors[i].name);
		file >> donors[i].money;
		file.get();
	}

	cout << "重要捐款人的信息如下:" << endl;
	for (int i = 0; i < count; i++)
	{
		if (donors[i].money >= 10000)
		{
			cout << donors[i].name << endl;
			empty = false;
		}
	}
	if (empty)
	{
		cout << "NONE" << endl;
	}

	cout << "普通借款人信息如下:" << endl;
	for (int i = 0; i < count; i++)
	{
		if (donors[i].money < 10000)
		{
			cout << donors[i].name << endl;
			empty = false;
		}
	}
	if (empty)
	{
		cout << "NONE" << endl;
	}

	return 0;
}

运行结果:
在这里插入图片描述
在这里插入图片描述

考查点:

  • 文件的读入

注意:

  • get()的用处
    在这里插入图片描述
    在这里插入图片描述

标签:count,donors,cout,money,Plus,file,Donor,习题,Primer
From: https://blog.csdn.net/qq_74047911/article/details/141650483

相关文章

  • 通过vue-draggable-plus实现一个简单的菜单拖拽功能
    <divclass="my-content-list"v-draggable="[nameList,{animation:300,}]":onStart="onStart":onUpdate="onUpdate">......
  • vue3导入excel表格并展示(使用xlsx插件+vite+element-plus)/js上传表格(js+xlsx)
    第一步:下载两个库npminstallfile-saver--savenpminstallxlsx--save第二步:引入import{saveAs}from'file-saver'import*asXLSXfrom'xlsx'第三步:给组件设置点击事件<el-form-item@click="handleExport">导出</el-for......
  • vue3导入excel表格并展示(使用xlsx插件+vite+element-plus)/js上传表格(js+xlsx)
    首先下载两个库npminstallxlsx--savenpminstallfile-saver--save然后在你需要导出的组件里引入库import{saveAs}from'file-saver'import*asXLSXfrom'xlsx'创建函数consthandleExport=()=>{letoneDimensionalArray=[]lettwoDimensionalArray......
  • 25版王道数据结构课后习题详细分析 第五章 树与二叉树 5.4 树、森林
    一、单项选择题————————————————————————————————————————解析:正确答案:D————————————————————————————————————————解析:森林与二叉树具有对应关系,因此,我们存储森林时应先将森林转换......
  • 算法练习题03:分解质因数
    【问题描述】求出区间[a,b]中所有整数的质因数分解,统计一共有多少种不同的分法【输入格式】输人两个整数a和b。【输出格式】输出一行,一个整数,代表区间内质因数分解方法之和。【输入样例】610【输出样例】10【样例说明】6的质因数为2和3,一共有两个。7的质因数有......
  • mybatis-plus getOne 内存溢出
    网上说是lambda表达式方式的条件构造器的问题mybatis-plus-boot-starter版本3.4.1Causedby:org.apache.ibatis.builder.BuilderException:Errorevaluatingexpression'ew.sqlSegment!=nullandew.sqlSegment!=''andew.nonEmptyOfWhere'.Cause:org.apache.iba......
  • MybatisPlus学习笔记
    MyBatisPlus从入门到精通1.概述MybatisPlus是一款Mybatis增强工具,用于简化开发,提高效率。它在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。官网:https://baomidou.com/2.快速入门2.0准备工作①准备数据CREATETABLE`user`(`id`bigint(20)NOTNULL......
  • 给自己复盘的随想录笔记-链表练习题(在整理ing)
    删除链表的倒数第N个节点双指针的经典应用,如果要删除倒数第n个节点,让fast移动n步,然后让fast和slow同时移动,直到fast指向链表末尾。删掉slow所指向的节点就可以了。思路是这样的,但要注意一些细节。分为如下几步:推荐大家使用虚拟头结点,这样方便处理删除实际头结点的逻辑,定......
  • 使用idea快速创建springbootWeb项目(springboot+springWeb+mybatis-Plus)
    idea快速创建springbootWeb项目详细步骤如下1)创建项目2)选择springboot版本3)添加web依赖4)添加Thymeleaf5)添加lombok依赖然后点击create进入下一步双击pom.xml文件6)添加mybatis-plus依赖        这里使用的springboot版本比较新,mybatis-plus-boot-star......
  • vue.js3+element-plus+typescript add,edit,del,search
     vite.config.tsserver:{cors:true,//默认启用并允许任何源host:'0.0.0.0',//这个用于启动port:5110,//指定启动端口open:true,//启动后是否自动打开浏览器proxy:{'/api':{target:'http://localhost:8081/',//实际请求地址......