1 //-------------------------------------------1
2 #include<stdio.h>
3 #include<stdlib.h>
4 void main()
5 {
6 FILE *fp;
7 int x;
8 if((fp=fopen("f1.txt","w+"))==NULL)//打开(创建)文件为写入数据做准备
9 {
10 printf("Can't open this file!\n");
11 exit(1);
12 }
13 printf("input x:");
14 scanf("%d",&x);
15 fprintf(fp,"%6d",x);//将变量x中的值写入文件
16 fclose(fp);//关闭文件
17
18 if((fp=fopen("f1.txt","r+"))==NULL)//再打开文件为写入数据做准备
19 {
20 printf("Can't open this file!\n");
21 exit(2);
22 }
23 fscanf(fp,"%d",&x);//由文件读出整数给变量x;
24 printf("%6d",x);
25 printf("\n");
26 fclose(fp);//再关闭文件
27 }
28 //---------------------------------------------------------2
29 /*
30 打开文件函数fopen().关闭文件函数fclose().
31 字符读取函数fgetc和fputc
32 字符串读取函数fgets和fputs
33 格式化读取函数fscanf和fprintf
34 数据块读取函数freed和fwrite
35 检测文件结束函数feof(),eof()
36 */
37 #include<stdio.h>
38 #include<stdlib.h>
39 void main()
40 {
41 FILE *fp;//定义文件指针
42 char ch,filename[10];//定义字符变量和字符数组,字符数组用来放文件名
43 gets(filename);//接受来自键盘输入的文件名
44 if((fp=fopen(filename,"w"))==NULL)//打开文件并判断是否成功
45 {
46 printf("can not open file\n");
47 exit(1);//打开文件失败结束过程,exit()函数在stdlib.h中
48 }
49 printf("Please input string:");
50 while ((ch=getchar())!='#')//循环接受字符,并判断是否是结束符
51 fputc(ch,fp);//将字符写入文件
52 fclose(fp);//关闭文件
53 }
54 //-------------------------------------------3
55 #include"stdio.h"
56 #include<stdlib.h>
57 void main()
58 {
59 FILE *in,*out;
60 char ch,infile[10],outfile[10];
61 scanf("%s",infile);
62 scanf("%s",outfile);
63 if((in=fopen(infile,"r"))==NULL)
64 {
65 printf("can not open infile\n");
66 exit(1);
67 }
68 if((out=fopen(outfile,"w"))==NULL)
69 {
70 printf("cannot open outfile\n");
71 exit(1);
72 }
73 while((ch=fgetc(in))!=EOF)
74 fputc(ch,out);
75 fclose(in);
76 fclose(out);
77 }
78 //-------------------------------------4
79 #include<stdio.h>
80 #include<string>
81 void main()
82 {
83 FILE *fp;
84 char string[81];//
85 if((fp=fopen("file1.txt","w"))==NULL)
86 {
87 printf("can't open file");
88 exit(1);
89 }
90 while(strlen(gets(string))>0)
91 {
92 fputs(string,fp);
93 fputs("\n",fp);
94 }
95 fclose(fp);
96 if((fp=fopen("file1.txt","r"))==NULL)
97 {
98 printf("can't open file");
99 exit(1);
100 }
101 while(fgets(string,81,fp)!=NULL)//while(!feof(fp))
102
103 fputs(string,stdout);//将string指向的字符串输出到stdout(显示器)上
104 fclose(fp);
105 }
106 //--------------------------------------5
107 #include<stdio.h>
108 #include<string>
109 #define N 10
110 void main()
111 {
112 FILE *fp;
113 int i,x;
114 if((fp=fopen("f1.txt","w+"))==NULL)
115 {
116 printf("Can't open this file!\n");
117 exit(1);
118 }
119 for(i=0;i<N;i++)
120 {
121 scanf("%d,&x");
122 fprintf(fp,"%6d",x);
123 }
124 fclose(fp);
125 if((fp=fopen("f1.txt","r+"))==NULL)
126 {
127 printf("Can't open this file!\n");
128 exit(2);
129 }
130 for(i=0;i<N;i++)
131 {
132 fscanf(fp,"%d",&x);
133 printf("%6d",x);
134 }
135 printf("\n");
136 fclose(fp);
137 }
138 //-----------------------------------------------6
139 #include<stdio.h>
140 #include<string>
141 struct stu
142 {
143 int num;
144 char name[10];
145 int score[3];
146 }student;
147 void main()
148 {
149 int i;
150 FILE *fp;
151 if((fp=fopen("list1","ab"))==NULL)
152 {
153 printf("cannot open file\n");
154 exit(1);
155 }
156 printf("student information:\n");
157 printf("num:\n");
158 scanf("%d",&student.num);
159 printf("name:\n");
160 scanf("%s",&student.name);
161 printf("score1:\n");
162 scanf("%d",&student.score[0]);
163 printf("score2:\n");
164 scanf("%d",&student.score[1]);
165 printf("score3:\n");
166 scanf("%d",&student.score[2]);
167 if(fwrite(&student,sizeof(struct stu),1,fp)!=1)//写一个学生数据块文件
168 printf("file write error:\n");
169 fclose(fp);
170 }
171 //----------------------------------------------------7
172 #include<stdio.h>
173 #include<stdlib.h>
174 #define N 3
175 struct stu
176 {
177 int num;
178 char name[10];
179 int score[3];
180 }students[N];
181 void main()
182 {
183 FILE*fp;
184 int i;
185 if((fp=fopen("list ","rb"))==NULL)//以读方式打开二进制文件
186 {
187 printf("cannot open file!\n");
188 exit(1);
189 }
190 for(i=0;i<N;i++)
191 {
192 fseek(fp,i*sizeof(struct stu),0);//以起点为基准,按学生数据块移动位置指针
193 fread(&students[i],sizeof(struct stu),1,fp);//读出一个学生数据
194 printf("%d,%s, %d,%d\n",students[i].num,students[i].name),students[i].score[0],students[i].score[1],students[i].score[2];);
195 }
196 fclose(fp);
197 }
198 //-------------------------------------------8
199 #include"stdio.h"
200 main()
201 {
202 FILE *fp1,*fp2;
203 char c;
204 fp1=fopen("work1","r");
205 fp2=fopen("f2.txt","w");
206 while((c=getc(fp1))!=EOF)
207 putchar(c);//读出work1中的信息并写到屏幕上
208 rewind(fp1);//把文件的内部指针移到文件的开始处
209 while((c=fgetc(fp1))!=EOF)//读出work1中的信息并写入到f2中
210 fputc(c,fp2);
211 fclose(fp1);
212 fclose(fp2);
213 }
214 //-----------------------------------9
215 #include<stdio.h>
216 #include<stdlib.h>
217 #define N 3
218 struct stu
219 {
220 int num;
221 char name[10];
222 int score[3];
223 }student[N];
224 void main()
225 {
226 FILE*fp;
227 int i;
228 for(i=0;i<N;i++)
229 {
230 printf("%d student information:\n");
231 printf("num:\n");
232 scanf("%d",&students[i].num);
233 printf("name:\n");
234 scanf("%s",students[i].name);
235 printf("score1:\n");
236 scanf("%d",students[i].score[0]);
237 printf("score2:\n");
238 scanf("%d",students[i].score[1]);
239 printf("score3:\n");
240 scanf("%d",students[i].score[2]);
241 }
242 if(fwrite(&students,sizeof(struct stu),N,fp)!=N)
243 printf("file write error\n");
244 fclose(fp);
245 if((fp=fopen("list","rb"))==NULL)
246 {
247 printf("Can't open this file!\n");
248 exit(1);
249 }
250 if(fread(&students,sizeof(struct stu),N,fp)!=N)
251 printf("file write error\n");
252 for(i=0;i<N;i++)
253 {
254 printf("%d,%s, %d,%d,%d\n",students[i].num,students[i].name,students[i].score[0],students[i].score[1],students[i].score[2]);
255 }
256 fclose(fp);
257 }
258 //-------------------------------------------10
259 #include<stdio.h>
260 #include<stdlib.h>
261 #define N 3
262 struct stu
263 {
264 int num;
265 char name[10];
266 int score[3];
267 }students[N];
268 void main()
269 {
270 FILE*fp;
271 int i;
272 for(i=0;i<N;i++)
273 {
274 printf("%d student information:\n");
275 printf("num:\n");
276 scanf("%d",&students[i].num);
277 printf("name:\n");
278 scanf("%s",students[i].name);
279 printf("score1:\n");
280 scanf("%d",students[i].score[0]);
281 printf("score2:\n");
282 scanf("%d",students[i].score[1]);
283 printf("score3:\n");
284 scanf("%d",students[i].score[2]);
285 }
286 if((fp=fopen("data.txt","w+"))==NULL)
287 {
288 printf("Can't open this file!\n");
289 exit(1);
290 }
291 for(i=0;i<N;i++)
292 {
293 printf("%d,%s, %d,%d,%d\n",students[i].num,students[i].name,students[i].score[0],students[i].score[1],students[i].score[2]);
294 }
295 fclose(fp);
296 }