C语言产生正弦数据序列并能写入文件中
C语言标准IO:
{
1、fopen:打开一个文件
FILE *fopen(const char *path, const char *mode);
第一个参数path:文件的路径(默认当前文件夹)及文件名,若无此文件名,直接创建并打开
第二个参数mode:打开方式(r、r+、w、w+、a、a+)
返回值:标识所打开的文件
2、fread:读文件
size_t fread(char *ptr, size_t size, size_t nmemb, FILE *stream);
第一个参数:缓冲区
第二个参数:要读取的每片空间大小
第三个参数:要读取几片空间
第四个参数:标识要读取的文件
返回值:实际读取到了几片空间
数据流向:由文件到缓冲区
3、fwrite:写文件
size_t fwrite(const void *ptr, size_t size, size_t nmemb,FILE *stream);
第一个参数:缓冲区
第二个参数:要写的每片空间大小
第三个参数:要写几片空间
第四个参数:标识要写的文件
返回值:实际写了几片空间
数据流向:由缓冲区到文件
4、fclose:关闭文件
int fclose(FILE *fp);
参数指明要关闭的文件
}
打开方式:
{
r:只读打开(文件必须存在)
r+:读写打开,追加写(文件必须存在)
w:只写打开,文件内容清空
w+:读写打开,文件内容清空
a:只写打开,追加写
a+:读写打开,追加写
}
源代码:
#include <stdio.h>
#include "math.h"
void main(void)
{
int i;
float s ;
const float PI = 3.141593;
FILE *fpt;
fpt = fopen("Sine.txt","w"); //创建txt文件存储正弦数列值
for(i=0; i< 32;i++) //每周期以32点抽样取值
{
s = sin(2*PI*i/32.0); //获取抽样值
fprintf(fpt,"%d : %f;\n", i,s); //把抽样序号和抽样值输出到文件中
}
}
编译无错后运行:
结果当前文件夹产生一个txt文件
文件内记录了正弦序列值:
共记录了32个值