文件c语言
A. c语言中文件指的是什么
文件夹内的所有东西都是文件,不管有没有后缀。
不是说文件夹内的所有文件代表一个文件,而是说没一个文件都是一个文件……(真拗口)嘛……反正单个的东西就是一个文件
B. C语言文件
这个程序的流程是:
1.以“二进制写”方式打开一个文件,如果打开失败,则抛出异常并结束程序,如果打开成功则将一个已经初始化的double型数组以二进制方式写入这个文件
2.关闭文件
3.再以“二进制读”方式打开这个文件,如果打开失败,则抛出异常并结束程序,如果打开成功则进行下一步
4.要求用户不断输入一个索引值,比如用户想获得数组中第i个元素的值,就输入整数i
5.通过文件指针的移动在文件中找到存储这个值的位置,并存储在一个预定义的缓存中,最后打印在屏幕上
6.直到用户输入的索引值超出数组下标范围,循环结束,关闭文件,程序运行结束
具体的代码注释见下面:
#include <stdio.h>
#include <stdlib.h>
#define ARSIZE 1000
int main()
{
double numbers[ARSIZE];
double value;
const char * file = "numbers.dat";//定义常字符指针代表将要操作的文件numbers.dat
int i;
long pos;
FILE *iofile;
// 以下语句是将数组numbers[1000]的所有元素初始化为一个double型数值
for(i = 0; i < ARSIZE; i++)
numbers[i] = 100.0 * i + 1.0 / (i + 1);
// 文件指针iofile以“二进制写”的方式打开一个文件,以下语句判断是否打开成功,是则程序继续执行,否则程序异常结束
if ((iofile = fopen(file, "wb")) == NULL)
{
fprintf(stderr, "Could not open %s for output.\n", file);
exit(1);
}
// 将已经初始化的double型数组numbers[1000]以二进制方式写入文件numbers.dat,fwrite()的四个参数分别为:数据源数组指针,每次写入数据块字节数,写入数据块数,文件指针
fwrite(numbers, sizeof (double), ARSIZE, iofile);
//关闭文件指针
fclose(iofile);
//再次打开文件,但方式变为“二进制读”,同样判断是否打开成功
if ((iofile = fopen(file, "rb")) == NULL)
{
fprintf(stderr,
"Could not open %s for random access.\n", file);
exit(1);
}
// 请求用户从键盘输入一个整数i作为索引
printf("Enter an index in the range 0-%d.\n", ARSIZE - 1);
scanf("%d", &i);
//根据i值搜索整个文件,找到和用户输入的索引相对应的数值,循环直到用户输入的索引值超出数组下标范围时结束
while (i >= 0 && i < ARSIZE)
{
pos = (long) i * sizeof(double); // 通过用户输入的索引值计算对应数组中的值在文件中的偏移量
fseek(iofile, pos, SEEK_SET); // fseek()函数用于移动文件指针,三个参数分别为:文件指针名,移动的偏移量,移动前文件指针的位置(SEEK_SET为文件头位置)
fread(&value, sizeof (double), 1, iofile);//fread()函数用于读入文件中指定位置的内容到缓存,四个参数分别为:存储读入内容的缓存首地址,每次读入块的字节数,读入块数,文件指针
printf("The value there is %f.\n", value);//value即为读入的double值,将其输出
printf("Next index (out of range to quit):\n");
scanf("%d", &i);
}
// finish up
fclose(iofile);//关闭文件
puts("Bye!");
return 0;
}
C. 在c语言中什么是文件
C语言中FILE 叫文件;
FILE* 叫文件指针;
你是指这个文件吗?
如果你,要打开一个文件 ,使用fopen()函数来打或者新建;
如你要你写入文件,使用fwrite()函数来写入;
如果你要读取文件,请使用fread()函数来读取;
C语言中的文件真是一个好东西啊。
真是太有用了:
比如你我们有一个记录型的结构体
struct 女人
{
身高,
姓名,
三围,
头发,
联系电话
}
我们可以这个女人结构,使用fwrite()写到文件中,这样,我们看到一个漂亮的女人,就可把他保存到电脑,什么时候想联系哪个妞,我们就打开程序,
这时,C语言程序就会使用fread()函数读取这些结构体,从而显示在电脑上了。。
你就可以选一个喜欢的妞,快点,happy一下吧。
这就是文件,C语言中的文件,就是一个普通的文件。
和你电脑里的文件没有什么普通。
C语言中什么是文件?文件就是文件。英文叫FILE。
D. c语言如何打开文件
你只要把下面代码的file_path改成你要输出的文件就可以了。注意,一般window下的文件路径都是一个反斜杠,但是在file_name的字符串中,所有的反斜杠都写成两个反斜杠。比如
E:\abc\WTK\SW\source.txt
你要写成
E:\\abc\\WTK\\SW\\source.txt
#include <stdio.h>
#include <string.h>
main()
{
FILE *fp;
char ch;
char *file_path = "C:\\test\\myfile.txt";
if((fp=fopen(file_path,"r"))==NULL)
{
printf("\nSorry, Can't open the file! @_@\n");
exit(0);
}
else
{
while((ch=fgetc(fp))!=EOF)
{ printf("%c",ch); }
fclose(fp);
}
getch();
}
是否可以解决您的问题?
E. c语言中文件怎样调用文件
在文件最前面使用#include可以调用文件。例如
#include
<stdio.h>
/*调用系统stdio.h*/
#include
"test.h"
/*调用用户自定义文件test.h*/
被调用的文件多是.h文件,即头文件。当然也可以是.c文件,即c语言源文件,但一般不推荐使用这种方式。
F. C语言 文件
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
unsigned long num = 0; char name[32]=""; short score = 0; int i = 0;
FILE * f = fopen("7_2.txt", "w");
if (!f) {
printf("文件无法打开\n");
return 0;
}
printf("请从键盘输入5个同学的学号、姓名和数学成绩:");
for(i = 0; i < 5; i++) {
scanf("%d %s %d", &num, name, &score);
fprintf(f, "%d %s %d\n", num, name, &score);
}
fclose(f);
printf("数据已保存。现在从文件中读取并输出到屏幕上:\n");
f = fopen("7_2.txt", "r");
for(i = 0; i < 5; i++) {
fscanf(f, "%d %s %d", &num, name, &score);
printf("%d %s %d\n", num, name, &score);
}
fclose(f);
return 0;
}
G. c语言怎么创建一个txt文件
c语言创建txt文件的步骤如下:
1、打开C-Free5.0新建一个空白页面,然后将C语言的基础格式写完,注意格式缩进。
H. c语言中文件
估计是你程序中其他地方存在逻辑错误.给你一个我写的例子:
#include<stdio.h>
#define N 5
struct student
{
int num;
char name[20];
int course[3];
float ave;
};
void main(void)
{
int i,j;
FILE *fp;
struct student st[N];
for(i=0;i<N;i++)
{
printf("student %d:\n",i+1);
printf("num:");
scanf("%d",&st[i].num);
printf("name:");
scanf("%s",st[i].name);
st[i].ave=0.0;
for(j=0;j<3;j++)
{
printf("course %d:",j+1);
scanf("%d",&(st[i].course[j]));
st[i].ave+=st[i].course[j];
}
st[i].ave/=3;
}
for(i=0;i<5;i++)
{
printf("student %d:\n",i+1);
printf("num:");
printf("%d\n",st[i].num);
printf("name:");
printf("%s\n",st[i].name);
for(j=0;j<3;j++)
{
printf("course %d:",j+1);
printf("%d\n",(st[i].course[j]));
}
printf("ave=%f\n",st[i].ave);
}
if((fp=fopen("stud","wb"))==NULL)
{
printf("FILE OPEN ERROR!\n");
exit(0);
}
for(i=0;i<5;i++)
{
if(fwrite(&st[i],sizeof(struct student),1,fp)!=1)
{
printf("FILE WRITE ERROR!");
exit(0);
}
}
fclose(fp);
}
I. C语言中文件的概念是什么
头文件是你程序中需要用到东西,如需要某个数学函数,
则必须包括数学相关头文件,如math.h,当然,也可以自己写函数,只要你不怕麻烦!
头文件是你程序中需要用到东西,如需要某个数学函数,
则必须包括数学相关头文件,如math.h,当然,也可以自己写函数,只要你不怕麻烦! 头文件就是在你所编制的程序运行时要用到的文件!
如 math.h 和 stdio.h
头文件就是在你所编制的程序运行时要用到的文件!
如 math.h 和 stdio.h
头文件就是在你所编制的程序运行时要用到的文件!
如 math.h 和 stdio.h
J. c语言如何用文件存储数据
具体操作步骤如下:
1、首先,创建一个新文件夹,在该文件夹中创建一个文档,如下图所示,然后进入下一步。