C语言文件
C语言文件
一.代码块
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct student {
char name2[10];
char num[15];
char sex[6];
char Class[10];
char score[5];
};
int main ()
{
struct student name1[10];
char name[10][20];
char name3[10][20];
int i;
system("color F5");
printf("\n\n\n\n");
printf(" 学生成绩信息管理系统\n");
printf(" 欢迎使用此系统\n");
printf("\n\n\n\n");
system("pause");
system("cls");
FILE *fp1;
char num[15];
char sex[6];
char Class[10];
char score[5];
for(i=0;i<10;i++){
printf("\n\n\n\n");
printf(" 姓名 学号 性别 班级 线代成绩(各个信息之间加个空格)\n");
printf(" ");
scanf("%s",name[i]);
strcpy(name3[i],name[i]);
strcat(name[i],".txt");
FILE *fp=fopen(name[i],"w+");
fclose(fp);
if((fp1=fopen(name[i],"r+"))==NULL){
printf("File open error!\n");
exit(0);
}
scanf(" %s %s %s %s",num,sex,Class,score);
fprintf(fp1,"%s %s %s %s",num,sex,Class,score);
if(fclose(fp1)){
printf("Can not close the file!\n");
exit(0);
}
system("cls");
}
printf("\n\n\n\n");
printf(" ");
system("date");
system("cls");
printf("\n\n\n\n");
printf(" 下面请查看您所输入的同学信息");
system("pause");
system("cls");
printf("\n\n\n\n");
for(i=0;i<10;i++){
if((fp1=fopen(name[i],"r+"))==NULL){
printf("File open error!\n");
exit(0);
}
strcpy(name1[i].name2,name3[i]);
fscanf(fp1,"%s %s %s %s",name1[i].num,name1[i].sex,name1[i].Class,name1[i].score);
if(fclose(fp1)){
printf("Can not close the file!\n");
exit(0);
}
printf(" %s %s %s %s %s\n",name1[i].name2,name1[i].num,name1[i].sex,name1[i].Class,name1[i].score);
}
system("pause");
system("cls");
printf("\n\n\n\n");
printf(" 感谢您使用此系统,再见!");
printf("\n\n\n\n");
return 0;
}
二.代码分块解析与界面展示
struct student name1[10];
char name[10][20];
char name3[10][20];
int i;
system("color F5");
printf("\n\n\n\n");
printf(" 学生成绩信息管理系统\n");
printf(" 欢迎使用此系统\n");
printf("\n\n\n\n");
system("pause");
system("cls");
FILE *fp1;
char num[15];
char sex[6];
char Class[10];
char score[5];
显示封面。
2。
for(i=0;i<10;i++){
printf("\n\n\n\n");
printf(" 姓名 学号 性别 班级 线代成绩(各个信息之间加个空格)\n");
printf(" ");
scanf("%s",name[i]);
strcpy(name3[i],name[i]);
strcat(name[i],".txt");
FILE *fp=fopen(name[i],"w+");
fclose(fp);
if((fp1=fopen(name[i],"r+"))==NULL){
printf("File open error!\n");
exit(0);
}
scanf(" %s %s %s %s",num,sex,Class,score);
fprintf(fp1,"%s %s %s %s",num,sex,Class,score);
if(fclose(fp1)){
printf("Can not close the file!\n");
exit(0);
}
system("cls");
}
提示用户输入学生各个信息,并建立文件输入内容。
3。
printf("\n\n\n\n");
printf(" ");
system("date");
system("cls");
printf("\n\n\n\n");
printf(" 下面请查看您所输入的同学信息");
system("pause");
system("cls");
printf("\n\n\n\n");
for(i=0;i<10;i++){
if((fp1=fopen(name[i],"r+"))==NULL){
printf("File open error!\n");
exit(0);
}
strcpy(name1[i].name2,name3[i]);
fscanf(fp1,"%s %s %s %s",name1[i].num,name1[i].sex,name1[i].Class,name1[i].score);
if(fclose(fp1)){
printf("Can not close the file!\n");
exit(0);
}
printf(" %s %s %s %s %s\n",name1[i].name2,name1[i].num,name1[i].sex,name1[i].Class,name1[i].score);
}
显示时间,然后将所输入的同学信息展示给使用者看。
4。
system("pause");
system("cls");
printf("\n\n\n\n");
printf(" 感谢您使用此系统,再见!");
printf("\n\n\n\n");
return 0;
最后提醒使用者,使用系统结束。
三.system()
system("cls");
将当前界面内容清除,使得界面整洁。
system("pause");
使程序在此时暂停,使程序有阶段的进行。
system("data");
显示使用者当时使用时间,提醒使用者。
system("color ab");
改变界面背景色和字体颜色,a为背景色,b为字体颜色。
0=黑色 1 = 蓝色 2 = 绿色 3 = 浅绿色 4 = 红色 5 = 紫色 6 = 黄色 7 = 白色 8=灰色 9 = 淡蓝色 A = 淡绿色 B = 淡浅绿 C = 淡红色 D = 淡紫色 E = 淡黄色 F = 亮白色
四.总结
发现文件做系统这么好用,不会的知识上网查询或询问别人,是我收获很多,懂得文件的知识,还有system()语句,可以使整个使用界面更加的美观和整洁,还有许多system()语句是很好用的,我还没有学习到位,目前先是这样,为了后面的课设内容,我将会在加深学习。了解缓冲区以及EOF概念,虽然本次没用到二进制文件,但是对它有一定的了解。