首页 > 代码库 > 几年前做家教写的C教程(之五专讲结构体与文件操作)
几年前做家教写的C教程(之五专讲结构体与文件操作)
C语言学习宝典(5)
结构体:
将不同类型的数据组合成为一个有机的整体,这个整体就是一个结构体。
例如:
Struct student
{
Int name;
Char sex;
Float score;
};
使用方法:
类型名 成员名;
一般形式:
Struct
{
成员列表;
}变量名表列;
结构体变量的引用:
结构体变量名.成员名
文件:
FILE *fp;
Fp=fopen(文件名,文件打开方式);
Fclose(文件指针)
例1 对候选人得票的统计程序,设有3个后选人,每次输入一个候选人的名字,要求最后输出得票结果
/****************************** 功能:统计3个候选人得票*****************************/#include <stdio.h>#include "string.h" struct Person{ char name[20]; int count;};struct Person Leader[3]={"Li",0,"Zhang",0,"Wang",0};void main(){ int i,j; char Leader_name[20]; for(i=1;i<5;i++) { scanf("%s",Leader_name); for(j=0;j<3;j++) { if(strcmp(Leader_name,Leader[j].name)==0) Leader[j].count++; } } printf("\n"); for(i=0;i<3;i++) { printf("%5s:%d\n",Leader[i].name,Leader[i].count); }}
例2 从键盘输入一些字符,逐个把他们送到磁盘上去,知道输入一个”#”为止
/**********************功能:从键盘输入一些字符,直到输入"#"为止***********************/ #include <stdio.h>#include <stdlib.h> void main(){ FILE *fp; char ch,filename[10]; scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("can‘t open file!\n"); exit(0); } ch=getchar(); /*接受在执行scanf语句时最后的回车符*/ ch=getchar(); /*接受输入的第一个字符*/ while(ch!=‘#‘) { fputc(ch,fp); putchar(ch); ch=getchar(); /*接受putchar中的换行符*/ } putchar(10); /*想ping命令输出一个换行符*/ fclose(fp);}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。