网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月27日漏签0天
c语言吧 关注:799,033贴子:4,359,502
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 0回复贴,共1页
<<返回c语言吧
>0< 加载中...

请教高手,如何判断输入是否合符规定的语句

  • 只看楼主
  • 收藏

  • 回复
  • azhou1021
  • 毛蛋
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
main()
{
int year,month,day,days;
printf("\ninput data(year,mouth,day):");
scanf("%d,%d,%d",&year,&month,&day);
if(month<=12)
{
days=sum_day(month,day);
if(leap(year)&& month>=3)
days=days+1;
printf("is the %dth day in this year.\n",days);
}
else
printf("\n error");
}

int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

int sum_day(int month,int day)
{
int i;
for(i=1;i<month;i++)
day=day+day_tab[i];
return(day);
}

int leap(int year)
{
int leap;
leap=year%4==0 && year%100!=0||year%400==0;
return(leap);
}


这个代码是给出年月日,计算该日是该年的第几天。我想加入一个判断输入的月份是否超过12的语句,也就是这段:
if(month<=12)
{
days=sum_day(month,day);
if(leap(year)&& month>=3)
days=days+1;
printf("is the %dth day in this year.\n",days);
}
else
printf("\n error");
}
但是运行结果确出了问题,无论输入什么出来的都是“error”请问问题出在哪里?我该怎么改?
另,我想加入一个判断语句,判断如果month>12的话,就提示重新输入,怎么写这段代码?谢谢


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 0回复贴,共1页
<<返回c语言吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示