第一题:基础结构体------单个学生信息输出。定义学生结构体(姓名、年龄、分数),给一组固定数据,打印学生信息。
1、struct Student:自定义一个新数据类型,就像int,float,用来装一整组学生信息。2、大括号内部:结构体成员,可以放名字,年龄,成绩多个不同的类型数据。3、struct Student s1:用这个模板创建一个学生s1。4、={"张三",18、86.5}:初始化,一次性给结构体里面的成员赋值。5、s1.name、s1,age:点运算符.,读取结构体内部的数据。
第二题:结构体数组------多名学生批量输出。结构体数组存放3名固定学生数据,循环打印全部信息。
1、struct Student stu3:结构体数组,普通数组只能存数字:结构体数组每一格都是一整个学生。2、打括号里面的三种数据,依次给数组里面的3个学生赋值。3、stui.name:先取数组第i个学生,再用.读取内部成员。4、for循环批量输出,不需要一个个手写printf。
第三题:文件写入,把结构体学生数据保存到txt文件。程序运行,自动创建text.txt,写入一段固定文字,写入成功打印提示。
1、FILE *fp;文件指针,所有文件操作都依靠它。2、fopen("student.txt","w")"w" =写入模式(write) 文件生成位置:和文件放在一个同一个文件夹。3、if(fp==NULL)容错判断:打不开直接提示退出。4、fprintf(fp,内容):往文件里面打印文字,和printf用法几乎一样,多第一个参数文件指针。5、fclose(fp);强制必须写,写完关闭,不然数据可能存不进去。
第四题:文件读取,读取刚才保存txt里面的数据。打开test.txt,读取里面的文字,输出到屏幕。
1、fopen("student.txt","r");"r"读取模式,只能读文件内容,不能写入修改。2、前提:第三题运行过,文件里面已经有了stdent.txt,否则打开失败。fgets(buf,100,fp):从文件读取一行文字,存到字符数组buf。4、printf把读到的内容输出到终端屏幕。5、fclose(fp);读取完毕也要关闭文件。