利用结构体类型描述年、月、日,输入一个日期,统计该日期是本年度第多少天。

#include"stdio.h"voidmain(){structdate{intyear;intmonth;intday;}inti,leap;intdays=0;p... #include"stdio.h"
void main()
{
struct date
{
int year;
int month;
int day;
}
int i,leap;
int days=0;
printf("请输入年月日:");
scanf("%d %d %d",&date.yeas,&date.month,&date.day);
if(date.year/4==0&&date.year/100!=0||date.year/400==0)
leap=1;
for(i=1;i<date.month;i++)
{
if(i=1||3||5||7||8||10||12)
days+=30;
else if(i=4||6||9||11)
days+=30;
else if(leap==1)
days+=29;
else
days+=28;
}
days+=date.day;
printf("%d\t%d\t%d\t",date.year,date.month,date.day);
}
请高手帮我看看那这个程序哪里有问题,这是明天要交的作业,急求、急求。。
展开
 我来答
匿名用户
推荐于2016-10-14
展开全部
#include"stdio.h"
void main()
{
struct date
{
int year;
int month;
int day;
}date;
int i,leap;
int days=0;
printf("请输入年月日:");
scanf("%d %d %d",&date.year,&date.month,&date.day);
if((date.year%4==0&&date.year%100!=0)||date.year%400==0)
leap=1;
for(i=1;i<date.month;i++)
{
if(i==1 || i==3 || i==5 || i==7 || i==8 || i==10 || i==12)
days+=30;
else if(i==4 || i==6 || i==9 || i==11)
days+=30;
else
{
if(leap==1)
days+=29;
else
days+=28;
}
}
days+=date.day;
printf("%d\t%d\t%d\t%d\n",date.year,date.month,date.day,days);
}
追问
struct date
{
int year;
int month;
int day;
}date;
高手,我想问个很弱智的问题。。。就是这里的第二个date是神马意思,为什么要再写个date,我翻书书上也找不到。
追答
前面date是定义结构体名称,后面date是定义结构体变量,下面这样可以方便理解。

struct dat
{
int year;
int month;
int day;
}date[3];
scanf("%d %d %d",&date[0].year,&date[0].month,&date[0].day);
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式