c语言文件
时间:2019-12-19
本文章向大家介绍c语言文件,主要包括c语言文件使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
任务一:
你现在拥有一个数组,数组中储存着总共10个人的姓名字符串
你需要为每个人创建一个txt文件,以他们的名字命名。
例如: 生成 笨笨.txt文件
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main() {
FILE * fp;
int i;
char name_classmates[10][20] = { "张旭","陈烜","朱仕岳","茅志雄","李龙生","吴执涛","洪礼强","李欣欣","笨笨","宋思坡" };
for (i = 0; i < 10; i++) {
strcat(name_classmates[i], ".txt");
if ((fp = fopen(name_classmates[i], "w"))==NULL) {
printf("File open error!\n");
exit(0);
}
if (fclose(fp)) {
printf("Can not close the file\n");
exit(0);
}
}
return 0;
}
运行结果:
任务二:
在任务一的基础上,这次不仅仅要创建txt文件,还需要往文件中写入
每个人的学号,性别,班级,线代成绩
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct astudent {
char name[10];
char Number_stu[25];
char sex[10];
char Class[10];
char score[5];
};
int main() {
FILE * fp;
int i;
struct astudent students[10];
char name_classmates[10][20] = { "张旭","陈烜","朱仕岳","茅志雄","李龙生","吴执涛","洪礼强","李欣欣","笨笨","宋思坡" };
printf("请依次输入学号,性别,班级,线代成绩\n");
printf("姓名: 学号: 性别: 班级: 线代成绩: \n");
for (i = 0; i < 10; i++) {
printf("%s",name_classmates[i]);//在每行开头输出该同学的姓名,随后依次读入学号、性别、班级、线代成绩
strcat(name_classmates[i], ".txt");
if ((fp = fopen(name_classmates[i], "w"))==NULL) {
printf("File open error!\n");
exit(0);
}
scanf("%s %s %s %s", students[i].Number_stu, students[i].sex, students[i].Class, students[i].score);
fprintf(fp, "%s %s %s %s", students[i].Number_stu, students[i].sex, students[i].Class, students[i].score);
if (fclose(fp)) {
printf("Can not close the file\n");
exit(0);
}
}
return 0;
}
依次输入学号、性别、班级、线代成绩:
运行结果:
任务三:
在任务二生成的文件中,将每个人的信息再重新读取出来,放入数组中。
[要求使用结构体数组,结构体需要包含姓名,学号,性别,班级,线代成绩5个属性]
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct astudent {
char name[10];
char Number_stu[25];
char sex[10];
char Class[10];
char score[5];
};
int main() {
FILE * fp;
int i;
struct astudent students[10];
char name_classmates[10][20] = { "张旭","陈烜","朱仕岳","茅志雄","李龙生","吴执涛","洪礼强","李欣欣","笨笨","宋思坡" };
for (i = 0; i < 10; i++) {
strcpy(students[i].name, name_classmates[i]);
strcat(name_classmates[i], ".txt");
if ((fp = fopen(name_classmates[i], "r"))==NULL) {
printf("File open error!\n");
exit(0);
}
fscanf(fp, "%s %s %s %s", students[i].Number_stu, students[i].sex, students[i].Class, students[i].score);
if (fclose(fp)) {
printf("Can not close the file\n");
exit(0);
}
}
printf("姓名: 学号: 性别: 班级: 线代成绩: \n");
for (i = 0; i < 10; i++) {
printf("%-11s%-13s%-11s%-11s%s\n", students[i].name, students[i].Number_stu, students[i].sex, students[i].Class, students[i].score);
}
return 0;
}
运行结果截图:
任务四:
试着使用一下system("cls"),system("pause")这两个命令,看看这两个
命令能不能对你的程序起到一些美化的作用。
拓展:上网搜索类似的其他函数,使用并解释他们的作用。
system("pause") //暂停,按任意键继续
system("cls") //清屏
system("color 0A"); 其中color后面的0是背景色代号,A是前景色代号。
0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色 8=灰色 9=淡蓝色 A=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色 E=淡黄色 F=亮白色
四、总结
1.对文件的操作如fscanf、fprintf、fopen,fclose更加熟练。
2.学习了system("pause")和system("cls")命令,百度了一个改变运行框颜色的system语句——system("color 0A")。
3.本次作业主要练习关于文本文件的基本操作,没用到二进制文件的操作。
原文地址:https://www.cnblogs.com/cjt0722/p/12064123.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法