| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 635 人关注过本帖
标题:如何半路中断此程序
取消只看楼主 加入收藏
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
结帖率:95%
收藏
已结贴  问题点数:10 回复次数:3 
如何半路中断此程序
程序说明:输入年月日,判断出这一天是这一年的第几天
#include <stdio.h>
void main( )
{
  int day, month, year, sum, leap;
  printf("please input year,month,day\n");
  scanf("%d %d %d",&year,&month,&day);
  switch(month)
  {
   case 1:sum=0;break;
   case 2:sum=31;break;
   case 3:sum=59;break;
   case 4:sum=90;break;
   case 5:sum=120;break;
   case 6:sum=151;break;
   case 7:sum=181;break;
   case 8:sum=212;break;
   case 9:sum=243;break;  
   case 10:sum=273;break;
   case 11:sum=304;break;
   case 12:sum=334;break;
   default:printf("data error\n");/*输入的月大于12*/
  }
  sum=sum+day;
  if(year%400==0||(year%4==0&&year%100!=0))/*是否为闰年*/
    leap=1;
  else  
    leap=0;
  if(leap==1&&month>2)/*若是闰年且月份大于2*/
    sum++;
  printf("it is the %d day.\n",sum);
}
问题:若输入1983 13 21,则输出结果为data error
                                    it is the -858993439 day.
请教:如何发现month大于12时,即输出data error ,然后结束程序。谢谢!
搜索更多相关主题的帖子: void include please 年月日 
2010-11-29 17:34
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 3楼 freedgun
若输入的月份大于12,则输出data error 后中断

非计算机专业自学新手向大家请教
2010-11-29 19:24
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 4楼 xiaomarn
可行!非常感谢!
能稍微讲解一下原理吗?为何是return,而不是return加其它字符。谢谢!

非计算机专业自学新手向大家请教
2010-11-29 19:29
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 7楼 xiaomarn
您的意思是:return一个空值就会中断程序,不执行后面的步骤?

非计算机专业自学新手向大家请教
2010-11-29 19:45
快速回复:如何半路中断此程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017902 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved