c语言文件

任务一:

你现在拥有一个数组,数组中储存着总共10个人的姓名字符串

你需要为每个人创建一个txt文件,以他们的名字命名

执行代码如下:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main() {
	FILE* fp;
	char name[10][100] = { "小蛋1","小蛋2","小蛋3","小蛋4","小蛋5","小蛋6","小蛋7","小蛋8","小蛋9","小蛋10" };
	int i;
	for (i = 0; i < 10; i++) {
		strcat(name[i], ".txt");
		if ((fp = fopen(name[i], "w")) == NULL) {
			printf("File open error!\n");
			exit(0);
		}
		fclose(fp);
	}

	return 0;
}

运行结果如下:

 

 

 

 

任务二:

在任务一的基础上,这次不仅仅要创建txt文件,还需要往文件中写入

每个人的学号,性别,班级,线代成绩

执行代码如下:

 

 
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student {
   char name[10];
   char num[20];
   char sex[10];
   char Class[20];
   int score;
};
int main()
{
 system("color 0");
  printf("*****************************************\n");
  printf("             学生信息管理系统\n");
  printf("               欢迎您的使用\n");
  printf("              输入0进入系统\n");
  printf("******************************************\n");
 int n, i;
 scanf("%d", &n);
 system("cls");
 char name[10][100];
 struct student a[10], s[10];
 FILE* fp;
   printf("姓名:  学号:    性别:  班级:    线代成绩: \n");
     for (i = 0; i < 10; i++)
      {
       scanf("%s", name[i]);
       strcpy(s[i].name, name[i]);
       strcat(name[i], ".txt");
       fp = fopen(name[i], "w");
       scanf("%s %s %s %d", s[i].num, s[i].sex, s[i].Class, &s[i].score);
       fprintf(fp, "%s %s %s %s %d", s[i].name, s[i].num, s[i].sex, s[i].Class, s[i].score);
   if (fclose(fp)) {
     printf("Can not close the file!\n");
        exit(0);
  }
 }
 return 0;
}

  

运行结果如下:

 

 

 

 

 

 

任务三:

在任务二生成的文件中,将每个人的信息再重新读取出来,放入数组中。

[要求使用结构体数组,结构体需要包含姓名,学号,性别,班级,线代成绩5个属性]

执行代码如下:

 

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student {
	char name[10];
	char num[20];
	char sex[10];
	char Class[20];
	int score;
};
int main()
{
	system("color 0");
	printf("*****************************************\n");
	printf("             学生信息管理系统\n");
	printf("               欢迎您的使用\n");
	printf("              输入0进入系统\n");
	printf("******************************************\n");
	int n, i;
	scanf("%d", &n);
	system("cls");
	char name[10][100];
	struct student a[10], s[10];
	FILE* fp;
	printf("姓名:  学号:    性别:  班级:    线代成绩: \n");
	for (i = 0; i < 10; i++)
	{
		scanf("%s", name[i]);
		strcpy(s[i].name, name[i]);
		strcat(name[i], ".txt");
		fp = fopen(name[i], "w");
		scanf("%s %s %s %d", s[i].num, s[i].sex, s[i].Class, &s[i].score);
		fprintf(fp, "%s %s %s %s %d", s[i].name, s[i].num, s[i].sex, s[i].Class, s[i].score);
		if (fclose(fp)) {
			printf("Can not close the file!\n");
			exit(0);
		}
	}
	return 0;
}

 

  

任务四:

试着使用一下system("cls"),system("pause")这两个命令,看看这两个

命令能不能对你的程序起到一些美化的作用。

拓展:上网搜索类似的其他函数,使用并解释他们的作用。

1,system("cls")实现清屏

2,system("pause")冻结窗口

3,system("color 0")  0为字体颜色

0=黑色         8=灰色

 1 = 蓝色       9 = 淡蓝色

 2 = 绿色       A = 淡绿色

 3 = 浅绿色   B = 淡浅绿色

 4 = 红色      C = 淡红色

 5 = 紫色      D = 淡紫色

 6 = 黄色      E = 淡黄色

 7 = 白色      F = 亮白色

posted @ 2019-12-21 16:13  陈小蛋  阅读(190)  评论(0编辑  收藏  举报