#include<stdio.h>
struct date //struct是数据体,将一些有共同特征(比如同属某一类事物的属性)的变量封装在内部,通过一定方法访问修改内部变量
{
int year;
int month;
int day;
};
main()
{
struct date now,term;
int ago,year,day;
printf("today is year/month/day : ");
scanf("%d %d %d",&now.year,&now.month,&now.day);
term.month = 12;
term.day = 31;
for( ago = 0,year = 1990; year<now.year; year++)
{
term.year = year;
ago += f(term);
}
ago += f(now);
day = ago%5;
if( day >= 1 && day <= 3 )
printf("he is fishing.\n");
else
printf("he is sleeping.\n");
}
f(struct date day)
{
static int day_tab[ 2 ] [ 13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31},};
//静止修饰符
int i,j;
i= day.year%4 == 0 && day.year%100 != 0 || day.year%400 == 0;
for( j = 1; j<day.month; j++)
day.day += day_tab[ i ] [ j ];
return (day.day);
}
struct date
{
int year;
int month;
int day;
};
而结构内也可以由不同数据类型组成,如:
struct stu
{
char name;
int number;
}
在调用时,以第二个例子为例,stu.name为char型,stu.number为int型。