C语言文件

C语言文件

C语言文件

一.代码展示

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define ROW 26
#define COL 74
void show();//定义运行框的大小和背景颜色
void printhome();//显示首页
void printend();//显示尾页

int i, j,COL2=74, flag=1;
typedef struct {
	char num[14];
	char name[20];
	char sex[3];
	char Class[10];
	char score[4];
}STU;
int main()
{
	char name1[10][20];//用来指定生成名字文件
	char name2[10][20];//储存名字
	int i;
	FILE* fp;
	STU stu1[10],stu2[10];//stu1用来写入文件,stu2用来读取文件
	show();
	printhome();
	printf("\n\n\n\n");
	printf("                               欢迎使用!\n");
	printf("                              请进入系统!\n");
	printf("\n\n\n\n");
	printf("                            ");
	system("pause");//暂停
	for (i = 0; i < 10; i++)
	{
		printhome();
		printf("\n\n");
		printf("               %d.\n", i + 1);
		printf("               请输入姓名:\n");
		printf("               ");
		gets_s(name1[i]);
		strcpy(name2[i], name1[i]);
		strcat(name1[i], ".txt");//生成文件后缀名
		strcpy(stu1[i].name, name1[i]);
		fp = fopen(name1[i], "w");
		if (fp== NULL)
		{
			printf("File open error!\n");
			exit(0);
		}
		printf("               请输入学号:   性别:   班级:     线代成绩:\n");
		printf("               ");
		scanf("%s  %s      %s%s", stu1[i].num, stu1[i].sex, stu1[i].Class, stu1[i].score);
		fprintf(fp, "%s    %s    %s    %s\n", stu1[i].num, stu1[i].sex, stu1[i].Class, stu1[i].score);
		if (fclose(fp))
		{
			printf("Can not close the file!\n");
			exit(0);
		}
		getchar();
		system("cls");//清空界面
		
	}
	printhome();
	printf("\n\n\n\n");
	printf("                        下面查看所录入的学生信息!\n");
	printf("\n\n\n\n");
	printf("                            ");
	system("pause");
	system("cls");
	printhome();
	printf("             姓名:    学号:         性别:   班级:     线代成绩:\n");
	for (i = 0; i < 10; i++)
	{
		if ((fp = fopen(name1[i], "r")) == NULL)
		{
			printf("File open error!\n");
			exit(0);
		}
		strcpy(stu2[i].name, name2[i]);
		fscanf(fp, "%s %s %s %s\n", stu2[i].num, stu2[i].sex, stu2[i].Class, stu2[i].score);
		if (fclose(fp))
		{
			printf("Can not close the file!\n");
			exit(0);
		}
		printf("             ");
		printf("%-10s", stu2[i].name);
		printf("%-15s", stu2[i].num);
		printf("%-9s", stu2[i].sex);
		printf("%-11s", stu2[i].Class);
		printf("%-4s\n", stu2[i].score);

	}
	printf("\n\n\n\n");
	printf("                     请输入0退出系统!\n");
	printf("                     ");
	scanf("%d", &flag);
	if (flag == 0)//用来退出系统
    {
		printend();
	}
	return 0;
}
void show()//定义运行框的大小和背景颜色
{
	system("mode con cols=79 lines=34");//DOS窗口的尺寸会变为34行79列
	system("color F4");//F指改变背景为白色,4指改变字体颜色为红色。
}
void printhome()//显示首页
{
	system("cls");
	printf("┏");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┓\n");
	printf("┃  ★☆★☆★☆★☆★☆★ 欢迎使用学生信息管理系统 ★☆★☆★☆★☆★☆★  ┃\n");
	printf("┣");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┫\n");
	
	printf("┗");
	
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┛\n");
}
void printend()//显示尾页 
{
	system("cls");
	printf("┏");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┓\n");
	printf("┃  ★☆★☆★☆★☆★☆★ 欢迎使用学生信息管理系统 ★☆★☆★☆★☆★☆★  ┃\n");
	printf("┣");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┫\n");
	for (i = 0; i < ROW; i++)
	{
		printf("┃");
		if (i == ROW / 2)
		{
			printf("                               感谢您的使用!                             ");
		}
		else
		{
			for (j = 0; j < COL; j++)
			{
				printf(" ");
			}
		}
		printf("┃\n");
	}
	printf("┣");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┫\n");
	printf("┃                               成功退出系统。                             ┃\n");
	printf("┗");
	for (j = 0; j < COL2; j++)
	{
		printf("━");
	}
	printf("┛\n");
}

二.运行展示

C语言文件
C语言文件
C语言文件
C语言文件
C语言文件

自动生成文件,每个文件中存放着每个人的学号,性别,班级,线代成绩。

C语言文件

三.system()

system(“pause”)可以实现冻结屏幕,便于观察程序的执行结果。

system(“CLS”)可以实现清屏操作。

system(“color 0A”); 其中color后面的0是背景色代号,A是前景色代号。

0=黑色 8=灰色

1 = 蓝色 9 = 淡蓝色

2 = 绿色 A = 淡绿色

3 = 浅绿色 B = 淡浅绿色

4 = 红色 C = 淡红色

5 = 紫色 D = 淡紫色

6 = 黄色 E = 淡黄色

7 = 白色 F = 亮白色

system(“mode con cols=48 lines=25”)作用是定义运行框的大小,DOS窗口的尺寸会变为25行48列。

四.总结

1.通过书本和别人的帮助,学会了文件的基本操作,为之后的课设打下基础。

2.运用system()来美化运行界面。

3.利用百度搜索自己想要的界面美化,通过一步步的运行,调整,最终得到自己想要的界面。在接下来的课设中,界面美化是加分项,需要让用户有良好的操作体验。

4.了解缓冲区以及EOF概念,虽然本次没用到二进制文件,但是对它有一定的了解。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114452.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • arraylist和linkedlist的区别_arraylist 和linkedlist

    arraylist和linkedlist的区别_arraylist 和linkedlist&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这段时间把疯狂JAVA再看了一遍,发现Stack,ArrayDeque,LinkedList都可以作为栈使用,所以就稍微从性能以及实现的细节对比这三者的区别。类继承树&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;由继承树看出,三者都是Collection的间接实现类。&

    2022年9月20日
    0
  • Unity3D ML-Agent-0.8.1 学习四(模仿学习)

    Unity3D ML-Agent-0.8.1 学习四(模仿学习)Unity3DMl-Agent-0.8.1学习四(模仿学习)写的目的场景设置修改配置并训练总结写的目的本篇介绍模仿学习,即玩家边玩,代理边学习,主要分为在线学习和离线学习,在线就是跟着师傅一起学,离线就是看是师傅录制的资料学习,我们主要讲在线学习,就是玩家边玩,AI边学习,可以实时观察学习的效果,离线学习只是记录玩家信息,产生生成一个文件,命令行学习文件即可,不多做介绍。场景设置可以…

    2022年9月16日
    0
  • maven 打包命令的使用

    maven 打包命令的使用maven打包参数clean:clean能够保证上一次构建的输出不会影响到本次构建。package:命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库install:命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库deploy:命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其.

    2022年5月29日
    70
  • lspci命令详解_模态振型分析解读

    lspci命令详解_模态振型分析解读lspci详解分析一、PCI简介PCI是一种外设总线规范。我们先来看一下什么是总线:总线是一种传输信号的路径或信道。典型情况是,总线是连接于一个或多个导体的电气连线,总线上连接的所有设备可在同一时间收到所有的传输内容。总线由电气接口和编程接口组成。本文讨论Linux下的设备驱动,所以,重点关注编程接口。PCI是PeripheralComponentInterconnect(外围设备互…

    2022年9月9日
    0
  • 100道Go语言面试题

    100道Go语言面试题多选题1.【初级】下面属于关键字的是()A.funcB.defC.structD.class参考答案:AC2.【初级】定义一个包内全局字符串变量,下面语法正确的是()A.varstrstringB.str:=””C.str=””D.varstr=””参考答案:AD3.【初级】通过指针变量p访问其成员变量name,下面语法正确的是()A.p.nameB.(*p).nameC.(&…

    2022年6月28日
    34
  • Python变量命名规则

    Python变量命名规则Python变量命名规则变量名只能包含字母、数字和下划线。变量名可以字母或下划线开头,但不能以数字开头,例如,可将变量命名为message_1,但不能将其命名为1_message。变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greetingmessage会引发错误。不要将Python关键字和函数名用作变量名,即不要使用P…

    2022年6月12日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号