写一个关于结构体的 C语言程序

写一个关于结构体的 C语言程序,第1张

enum WeekDay {Monday=0, Tuesday, Wednesday, Thursday, Friday, Staturday, Sunday}

char *name[] = { "Monday",

"Tuesday",

"Wednesday",

"Thursday",

"Friday",

"Saturday",

"Sunday"

}

typedef struct date

{

int year

int month

int day

enum WeekDay weekday

}date

int main()

{

date d

printf("Day: ")fflush(stdout)

scanf("%d",&d.day)

printf("Month: ")fflush(stdout)

scanf("%d",&d.month)

printf("液塌Year: ")fflush(stdout)

scanf("%d",&d.year)

if ((d.month == 1) || (d.month == 2)){

d.month += 12

d.year--

}

d.weekday = (WeekDay)((d.day + 2*d.month + 3*(d.month+1)/5 + d.year + d.year/4 - d.year/橘卖100 + d.year/400) % 7)

printf("%d-%d-%d is %s.\n",d.year, d.month, d.day, name[d.weekday])

return 0

}

其中的公式参考:

http://www.cppblog.com/qywyh/articles/14021.html

希望能解决圆埋逗你的问题

正好有个现成的:#include"stdio.h"

#define yes 1

#define no 0typedef struct date

{

int year

int month

int day

}DATE

long timedef(DATE d1,DATE d2)

int leap(int year)

int main()

{

DATE date1,date2

date1.year=2008

date1.month=11

date1.day=1

date2.year=2009

date2.month=12

date2.day=1 printf("%ld\n",timedef(date1,date2))}

int leap(int year)

{

if(year%400==0 ||(year%4==0&&year%100!=0))

return yes

else

return no

}

long timedef(DATE d1,DATE d2)

{

int i

long day=0,dayt1=0,dayt2=0

int d[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}}

for(i=d1.yeari<d2.yeari++)

if(leap(i)==no) day+=365

else day+=366 for(i=1i<d1.month++i) dayt1+=d[leap(d1.year)][i]

dayt1+=d1.day for(i=1i<d2.month++i) dayt2+=d[leap(d2.year)][i]

dayt2+=d2.day return day+dayt2-dayt1

}

#include "stdio.h"

void main(){

struct Student{

      char id[10]

      char name[10]

      int score

  }

  stu = {"001", "Sam", 80}

  printf("%s\t%s\t%d", stu.id, stu.name, stu.score)

}

扩展资料

在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型缓嫌(aggregate data type)的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问。

C++提供了许多种基本的数据类型(如int、float、double、char等)供用户使用。但是由于程序需要处理的问题往往比较复杂,而且呈多样化,已有的数据类型显得不能满足使用要求。

因此C++允许用户根据需要自己声明一些类型,用户可以自己声明的类型还有结构体升裤类型(structure)、共用体类型(union)、枚举类型(enumeration)、类类型(class )等,吵哪简这些统称为用户自定义类型(user-defined type,UDT)。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12390184.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存