⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filebin3.cpp

📁 C++的常用算法
💻 CPP
字号:
//这个程序在本书所带软盘中,文件名为FILEBIN3.CPP
//这个程序演示二进制文件的输入/输出。

#include <fstream.h>
#include <stdlib.h>
#include <iomanip.h>
#define	size	10

void main(void)
{
	fstream file;				//定义一个输出/输入文件

	int int_array[size] = {34, 56, 12, 32, 19, 80, 76, 54, 81, 40};
	int sum = 0;
	float avg, average;

	file.open("data.bin", ios::binary|ios::out);	//建立一个二进制文件, 
													//规定做输出操作
	if (!file) {				//检查文件建立是否成功
		cout << "建立文件错误。检查文件盘后再试..." << endl;
		exit(1);
	}
	for (int i = 0; i < size; i++)
		sum += int_array[i];
	avg = (float)sum / size;

	file.write((char *)int_array, size*sizeof(int));//将数组中所有单元的值
													//写到二进制文件中
	file.write((char *)&sum, sizeof(sum));			//将数组和写到二进制文件中
	file.write((char *)&avg, sizeof(avg));			//将平均值写到二进制文件中

	file.close();

	file.open("data.bin", ios::in);					//打开二进制文件
	if (!file) {
		cout << "打开文件错误。检查文件盘后再试..." << endl;
		exit(1);
	}
	while(file.peek() != EOF) {
		file.read((char *)int_array, size*sizeof(int));	
													//将文件中的10个整数值读入数组
		for(i = 0; i < 10; i++)
			cout << "int_array[" << i << "] = " << int_array[i] << endl;

		file.read((char *)&sum, sizeof(sum));		//读入一个数据
		cout << "sum = " << sum << endl;			//显示这个数据

		file.read((char *)&average, sizeof(average));
		cout << "average = " << average << endl;
	}
	file.close();
}

/*这个程序运行后将显示如下输出结果:
int_array[0] = 34
int_array[1] = 56
int_array[2] = 12
int_array[3] = 32
int_array[4] = 19
int_array[5] = 80
int_array[6] = 76
int_array[7] = 54
int_array[8] = 81
int_array[9] = 40
sum = 484
average = 48.4
*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -