图5.7两层函数嵌套调用示意图函数的嵌套调用即一个函数在被调用的过程中又调用了另外的一个函数。函数fac和powers的返回值类型均被设计为double型,其主要目的是为了避免n!x:0.5//0.5从键盘输入的数据0.50 powers of e=1.648721//程序执行结果......
2023-11-20
为了能够实现对文件中构造数据类型对象的整体读取和加快文件数据读取处理速度,标准函数库中提供了关于数据块的读写函数fread和fwrite,它们的原型如下:
size_t fread(void*ptr,size_t size,size_t n,FILE*stream);
size_t fwrite(const void*ptr,size_t size,size_t n,FILE*stream);
函数fread的功能是从与文件指针stream相关联的文件中按指定长度读取一个数据块到内存储器的指定区域。
函数fwrite的功能则是将内存储器中指定区域的数据块写入与文件指针stream相关联的文件中。
fread和fwrite两个函数都有4个意义基本相同的参数,只不过操作方向刚好相反。4个参数的基本意义如下:
·ptr:指定内存储器中存储区域的首地址;
·size:指定读取或写入的一个数据项的字节长度;(www.chuimin.cn)
·n:指定一次函数操作(调用)读取或写入的数据项个数。由此可知函数每次操作数据块的字节长度为size×n;
·stream:为与操作文件相关联的文件类型指针。
【例7.10】 将一个5×10的整型二维数组数据存入指定文件中(数组数据用随机数填充)。
上面程序代码中,定义了一个5行10列的二维数组,调用函数mkarr用两位以内的随机数填充数组元素。然后利用循环,每次将二维数组中的一行写入文件,循环5次将二维数组全部数据写入的文件中。写入数据到文件中时,也可以考虑将二维数组一次性写入文件,写入函数的调用方法参见程序中的注释。
【例7.11】 编写程序实现功能:将例7.10所创建文件中的数据读出,并将数据按5行10列的矩阵形式进行显示。
由于要接收从文件中读出的二维数组数据,程序中需要定义构成方式与之对应的二维数组。在具体的读取数据过程中,既可以用循环每次读出二维数组一行的方式进行,也可以将数组数据一次性地全部读出(参见程序中的注释)。
有关C语言程序设计基础(第3版)的文章
图5.7两层函数嵌套调用示意图函数的嵌套调用即一个函数在被调用的过程中又调用了另外的一个函数。函数fac和powers的返回值类型均被设计为double型,其主要目的是为了避免n!x:0.5//0.5从键盘输入的数据0.50 powers of e=1.648721//程序执行结果......
2023-11-20
针对不同的实际应用,数据排序方法有很多种。本节介绍两种常用排序方法的基本思想和实现方法,帮助读者初步理解排序方法的计算机解决思路。②不考虑已排好序的数据,将剩下的数据作为待排序列。编写程序实现冒泡排序算法,对随机生成的10个3位整数按升序进行排序并输出。......
2023-11-20
一个函数直接或间接地调用自己,称为函数的递归调用。所以函数递归调用的实现必须依靠系统提供一个特殊部件(堆栈)存放未完成的操作,以保证当递归调用结束回溯时不会丢失任何应该执行而没有执行的操作。为了理解函数递归调用的特性,参照例5.9的程序讨论函数递归调用的执行过程,为了讨论方便为程序加上行号。函数递归调用示例。......
2023-11-20
例如,有如下所示的C语句序列:则结构体指针变量p1指向结构体数组元素a[2],其关系如图10.2所示。此时应该注意到被指针变量p1指向的结构体数组元素本身是不能作为整体操作的,所以*p1也不能作为整体操作。......
2023-11-20
for循环控制结构的执行过程如图4.3所示。②C语言的for循环控制结构不仅提供在其控制部分的exp3中修改循环控制变量的值,而且还允许在for循环的循环体中存在能改变循环控制条件的语句,使用时需特别注意。图4.3for控制结构的执行过程③无论exp1和exp3的取值如何,只要exp2是一个非0值常量表达式,则构成了死循环。......
2023-11-20
在C语言中,数据类型可分为4类,它们是基本数据类型、构造数据类型、指针类型、空类型,如图2.2所示。图2.2C语言的数据类型不同数据类型的存储空间大小和取值范围都不同,与使用的编译器版本也有一定的关系,见表2.2。表2.2C语言的标准数据类型1.整型数据整型数据分为两大类:有符号型和无符号型。在C程序中,用于存放整型数据的变量称为整型变量。C语言中,有十进制小数形式和指数形式两种表示实型常量的方法。......
2023-11-20
在文件in.txt中有两个用逗号分开的整数,请编写程序求出这两个整数之间的所有素数,并将求出的素数依次写到文件out.txt中。②写入文件out.txt中的数据用空格分隔。在需要按某种格式处理文件数据的程序中,特别要注意正确书写格式控制字符串中的输入输出控制格式,请读者参照程序中注释进行分析理解。......
2023-11-20
相关推荐