c语言文件

一.完整代码展示

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct stu {
    char name[20];
    char num[50];
    char sex[10];
    char Class[10];
    char score[5];
    char name1[20];
};
struct stu a[10];
void writetxt(); //录入学生信息
void readtxt();  //查询学生信息
int main()
{
    int n;
    system("color F1");  //改变运行框背景及字体颜色
    printf("**************************************************************************\n");
    printf("                         学生信息管理系统    \n");
    printf("                           欢迎您的使用        \n");
    printf("                      如需添加学生信息请按[1]\n");
    printf("                      如需查询学生信息请按[2]\n");
    printf("                        否则按[0]退出该系统\n ");
    printf("**************************************************************************\n");
    scanf("%d", &n);
    while (1)
    {
        switch (n)
        {
        case 1:writetxt();
            break;
        case 2:readtxt();
            break;
        case 0:
            printf("感谢您的使用\n");
            return 0;
            break;
        }
    }
    return 0;
}
void writetxt()
{

    system("cls");  //实现清屏功能
    FILE* fp;
    char name1[20];
    int i;
    for (i = 0;i < 10;i++)
    {
        printf("%d.请输入姓名:", i + 1);
        scanf("%s", a[i].name);
        strcpy(a[i].name1, a[i].name);
        strcat(a[i].name, ".txt");  //创建文本文档
        if ((fp = fopen(a[i].name, "w")) == NULL)
        {
            printf("File open error!\n");
            exit(0);     //退出程序,关闭流,防止异常
        }
        printf("性别:   班级:    学号:           线代成绩:   \n");
        scanf("%s%s%s%s", a[i].sex, a[i].Class, a[i].num, a[i].score);
        fp = fopen(a[i].name, "w");
        fprintf(fp, "%s    %s     %s     %s\n", a[i].sex, a[i].Class, a[i].num, a[i].score);
        if (fclose(fp)) {     //关闭文件
            printf("Can not close the file!\n");
            exit(0);       //退出程序,关闭流,防止异常
        }
    }
}
void readtxt()
{
    system("cls");   //清屏功能
    FILE* fp;
    int i=10,n;
    char name[20], name1[20];
    printf("请输入需要查找的学生的个数:\n");
    scanf("%d", &n);
    while (n--)
    {
        printf("请输入需要查询的学生的姓名:");
        scanf("%s", name);
        strcpy(name1, name);
        strcat(name, ".txt");
        if ((fp = fopen(name, "r")) == NULL)
        {
            printf("无法找到该学生的信息\n");
        }
        fp = fopen(name, "r");
        fscanf(fp, "%s %s %s %s", a[i].num, a[i].sex, a[i].Class, a[i].score);
        printf("姓名:%s   学号:%s   性别:%s   班级:%s   线代成绩:%s\n", name1, a[i].num, a[i].sex, a[i].Class, a[i].score);   //输出录入的内容
        fclose(fp);   //关闭文件
        system("pause");  //冻结窗口
    }
}

二.运行结果展示

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 三.system命令

system("pause")  冻结窗口

 

system("CLS")    实现清屏

 

system("color F1");

其中color后面的F是背景色,1是字体色。

 

0=黑色         8=灰色

 

1 = 蓝色       9 = 淡蓝色

 

2 = 绿色       A = 淡绿色

 

3 = 浅绿色   B = 淡浅绿色

 

4 = 红色      C = 淡红色

 

5 = 紫色      D = 淡紫色

 

6 = 黄色      E = 淡黄色

 

7 = 白色      F = 亮白色

四.总结

1.这次实验遇到了很多难题,但通过百度和向别人咨询使我一步步战胜难关。

2.通过本次实验,掌握了文件的基本知识,也学会了使用system命令美化界面。

3.了解缓冲区以及EOF概念,学习了基本操作和概念。

posted @ 2019-12-17 18:20  GGG(郭其松)  阅读(519)  评论(0编辑  收藏  举报