1 /* Note:Your choice is C IDE */ 2 #include "stdio.h" 3 void main() 4 { 5 //使用文件的操作 步骤 6 //1.定义文件指针变量 7 char name[100]; 8 FILE *fp; 9 //2.打开文件 10 fp= fopen("E:\\八维.doc","w"); 11 //3.判断这个文件是否打开。 12 if(fp==NULL)//这个指针指向的位置 是空的。 13 { 14 printf("error"); 15 } 16 //4.读/写操作(核心)这里 写里放任何学过的东西。只要类型对,可以存里 17 printf("请输入一段话:"); 18 scanf("%s",name); 19 fprintf(fp,"俊哥刚才写的内容为:%s",name);//往文件里 输出内容。意思:就是往文件写内容 20 //5.关闭文件 21 fclose(fp); 22 //6.关闭程序 23 exit(0); 24 }
1 /* Note:Your choice is C IDE */ 2 #include "stdio.h" 3 struct student // ① 定义结构体类型变量存放学生信息 4 { 5 //内部成员 6 char name[100];//姓名 7 int id;//学号 8 int cj;//C语言成绩 9 }stu[3];//学生数组 10 void main() 11 { 12 //编程实现,从键盘录入3个学生的信息, 13 //包括姓名,学号,C语言成绩,并将这些数据打印到控制台。 输出到空 14 //数据录入后,将学生信息写入文件中,文件名为“import_student.txt”。 15 // ② 定义文件指针 16 FILE *fp; 17 int i;//循环变量 18 // ③ 提示输入学生信息 19 printf("提示输入学生信息\n"); 20 for(i=0;i<3;i++) 21 { 22 printf("第%d个学生的姓名:",i+1); 23 scanf("%s",stu[i].name); 24 printf("第%d个学生的学号:",i+1); 25 scanf("%d",&stu[i].id); 26 printf("第%d个学生的C语言成绩:",i+1); 27 scanf("%d",&stu[i].cj); 28 } 29 // ④ 提示输出学生信息 30 for(i=0;i<3;i++) 31 { 32 printf("第%d个学生的姓名:%s,学生的学号:%d,学生的C语言成绩:%d\n",i+1,stu[i].name,stu[i].id,stu[i].cj); 33 } 34 // ⑤ 正确将学生信息写入文件中 35 // ⑥ 打开文件 36 fp=fopen("E:\\18单元练习手册.doc","w"); 37 // ⑦ 判断是否正确打开文件 38 if(fp==NULL) 39 { 40 printf("没有找到文件,error\n"); 41 } 42 // ⑧ 将数据写入文件中 43 for(i=0;i<3;i++) 44 { 45 fprintf(fp,"第%d个学生的姓名:%s,学生的学号:%d,学生的C语言成绩:%d\n",i+1,stu[i].name,stu[i].id,stu[i].cj); 46 } 47 // ⑨ 关闭文件 48 fclose(fp); 49 }
1 /* Note:Your choice is C IDE */ 2 #include "stdio.h" 3 #include "string.h"//字符串头文件 4 #include "windows.h"//系统头文件 5 struct team //① 定义结构体数组,正确定义变量 6 { 7 char name[100];//员工 8 int yj;//业绩 9 }t[3]; //③ 正确定义结构体(用来存放员工的姓名和业绩绩点) 10 void main() 11 { 12 //存储一个团队3名员工的姓名和业绩绩点,然后输入一个员工的姓名, 13 //查找该人是否为团队的成员,如果是提示是团队成员, 14 //同时输出该员工的业绩绩点,如果不是提示不是团队成。 15 //要求:将查找到的员工信息写入到 D盘下文件夹名为staff的staff_inform.txt文件中(如果没有D盘,可以写在别的盘中) 16 //② 正确定义变量,数组,指针变量等 17 int i,maxb=0,max;//最大下标 最大业绩 18 char cz[100];//姓名 19 FILE *fp;//文件 20 int sf;//是否查找 21 //④ 定义结构体变量存储一个团队的3个员工的信息,利用循环赋值 22 for(i=0;i<3;i++) 23 { 24 printf("请输入第%d员工的姓名:",i+1); 25 scanf("%s",t[i].name); 26 printf("请输入第%d员工的业绩:",i+1); 27 scanf("%d",&t[i].yj); 28 } 29 max=t[0].yj; 30 //⑤ 比较三名员工的业绩绩点,输出绩点最高的员工信息 31 for(i=0;i<3;i++) 32 { 33 if(max<t[i].yj) 34 { 35 max=t[i].yj; //把最大值 赋值过来 36 maxb=i;//把最大值下标 赋值过来 37 } 38 } 39 printf("输出绩点最高的员工信息:姓名为:%s,业绩绩点为:%d\n",t[maxb].name,t[maxb].yj); 40 //⑥ 提示输入要查找的姓名 41 for(;;)//⑨ 询问是否继续查找,是则继续,否则退出程序 42 { 43 printf("提示输入要查找的姓名:"); 44 scanf("%s",cz); 45 //⑦ 判断是否是该团队的员工,并输出正确的结果 46 fp=fopen("E:\\staff\\staff_inform.txt","w"); 47 if(fp==NULL) 48 { 49 printf("没有找到该文件,error\n"); 50 } 51 for(i=0;i<3;i++) 52 { 53 if(strcmp(cz,t[i].name)==0)//查找。就是循环比较。 54 { 55 printf("该员工找到了姓名为:%s,业绩绩点为:%d\n",t[i].name,t[i].yj); 56 //⑧ 如果要查找的员工是该团队员工,要求将员工信息写入到 D盘下文件夹名为staff的staff_inform.txt文件 57 fprintf(fp,"该员工找到了姓名为:%s,业绩绩点为:%d\n",t[i].name,t[i].yj); 58 } 59 } 60 printf("是否继续查找:"); 61 scanf("%d",&sf); 62 if(sf==0)//⑨ 询问是否继续查找,是则继续,否则退出程序 63 { 64 exit(0); 65 } 66 } 67 68 69 }
原文:https://www.cnblogs.com/ZJ-CN/p/12294485.html