首页 > 编程语言 > 详细

C语言入门:结构体+文件的应用

时间:2020-02-11 13:24:06      阅读:70      评论:0      收藏:0      [点我收藏+]
 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 }

 

C语言入门:结构体+文件的应用

原文:https://www.cnblogs.com/ZJ-CN/p/12294485.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!