c语言(结构体)---实现学生信息输入,输出,查询

c语言(结构体)---实现学生信息输入,输出,查询


利用结构体实现学生信息的输入,输出,以及生日日期查询

#include<stdio.h>
#define NUM 3
//日期结构体
typedef struct{
	int year;
	int month;
	int day;
}DATE;
//学生信息结构体
typedef struct{
	int num;
	char name[20];
	DATE birthday;
	char department[50];
	char major[50];
}STUDENT;
//输入信息函数
void inputStudent(STUDENT[]);
//输出信息函数
void outputStudent(STUDENT[]);
//查询信息函数
void searchStudent(STUDENT[],DATE);
void main(){
	STUDENT s[NUM];
	DATE date;
	inputStudent(s);
	outputStudent(s);
	printf("\n Enter a date(month,day) \n");
	scanf("%d%d",&date.month,&date.day);
	searchStudent(s,date);
}
void inputStudent(STUDENT s[]){
	int i;
	for(i=0;i<NUM;i++){
		printf("\n Enter a student infomation \n");
		s[i].num = i+1;
		scanf("%s",&s[i].name);
		scanf("%d%d%d",&s[i].birthday.year,&s[i].birthday.month,&s[i].birthday.day);
		scanf("%s",&s[i].department);
		scanf("%s",&s[i].major);
	}
}
void outputStudent(STUDENT s[]){
	int i;
	printf("\n printf all student infomation");
	for(i=0;i<NUM;i++){
		printf("\n%4d%10s%8d%3d%3d%8s%8s",s[i].num,s[i].name,s[i].birthday.year,s[i].birthday.month,s[i].birthday.day,s[i].department,s[i].major);
	}
}
void searchStudent(STUDENT s[], DATE date){
	int i;
	printf("\n searched in all student infomation");
	for(i=0;i<NUM;i++){
		if(s[i].birthday.month>date.month){
			printf("\n%4d%10s%8d%3d%3d",s[i].num,s[i].name,s[i].birthday.year,s[i].birthday.month,s[i].birthday.day);
			continue;
		}
		if(s[i].birthday.month==date.month && s[i].birthday.day>date.day){
			printf("\n%4d%10s%8d%3d%3d",s[i].num,s[i].name,s[i].birthday.year,s[i].birthday.month,s[i].birthday.day);
		}
	}
	printf("\n");
}

结果:





版权声明:本文为Ag_nevergiveup原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。