关于网友提出的“ 大家帮忙看看为什么没有输出”问题疑问,本网通过在网上对“ 大家帮忙看看为什么没有输出”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 大家帮忙看看为什么没有输出
描述: /*
*输入年、月、日,输出该日期是该年的第几天。
*/
#include
void numberofdays();
int main()
{
int yy,mm,dd;//年 月 日
//int i;
printf("please input the values of year month and day:\n");
scanf("%d,%d,%d",&yy,&mm,&dd);
printf("the days of this year:\n");
numberofdays();
return 0;
}
void numberofdays()
{
int yy=0,mm=0,dd=0;
int i;
int dayofmonth[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};//每月天数
if(((yy%4)!=0)||(((yy%100)==0&&(yy%400)!=0)))
dayofmonth[2]=28;//闰年的2月为28天
int total_day=0;
for(i=0;i<>
total_day=total_day+dayofmonth[i];
total_day+=dd;
}
解决方案1: numberofdays 函数没有打印语句 如何输出,计算机表示很为难。。。
解决方案2: static char daytab[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}
};
/* day_of_year: set day of year from month & day */
int day_of_year(int year, int month, int day)
{
int i, leap;
leap = year%4 == 0 && year%100 != 0 || year%400 == 0;
for (i = 1; i < month; i++)
day += daytab[leap][i];
return day;
}
/* month_day: set month, day from day of year */
void month_day(int year, int yearday, int *pmonth, int *pday)
{
int i, leap;
leap = year%4 == 0 && year%100 != 0 || year%400 == 0;
for (i = 1; yearday > daytab[leap][i]; i++)
yearday -= daytab[leap][i];
*pmonth = i;
*pday = yearday;
}
程序来自 the c programming language, 自己写个 main(),记得用printf() 输出
解决方案3: 楼主的输入的参数没有传到处理函数中
/*
*输入年、月、日,输出该日期是该年的第几天。
*/
#include
int numberofdays(int yy, int mm, int dd); // jernymy
int main()
{
int yy,mm,dd;//年 月 日
//int i;
int nTotalDay; // jernymy
printf("please input the values of year month and day:\n");
scanf("%d,%d,%d",&yy,&mm,&dd);
printf("[%d-%d-%d] the days of this year:", yy, mm, dd); // jernymy
nTotalDay = numberofdays(yy, mm, dd); // jernymy
printf("%d\n", nTotalDay); // jernymy
return 0;
}
int numberofdays(int yy, int mm, int dd) // jernymy
{
//int yy=0,mm=0,dd=0; // jernymy
int i;
int dayofmonth[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};//每月天数
if(((yy%4)!=0)||(((yy%100)==0&&(yy%400)!=0)))
dayofmonth[2]=28;//闰年的2月为28天
int total_day=0;
for(i=0;i<>
total_day=total_day+dayofmonth[i];
total_day+=dd;
return total_day;
}
解决方案4:
#include
#include
void main()
{
int year,month,day,days,i;
int m[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
while(1)
{
days=0;
do
{
printf("please input right year,month,day: ");
scanf("%d%d%d",&year,&month,&day);
if(year%400==0||(year%4==0&&year%100!=0)) m[2]=29;
else m[2]=28;
}while(year<0||month<0||month>12||day>m[month]);
for(i=0;i<>
days+=m[i];
days+=day;
printf("days=%d\n",days);
}
getch();
}
上面的代码可以参考下
解决方案5:
/*
*输入年、月、日,输出该日期是该年的第几天。
*/
#include
void numberofdays();
int main()
{
int yy,mm,dd;//年 月 日
//int i;
printf("please input the values of year month and day:\n");
scanf("%d,%d,%d",&yy,&mm,&dd);
printf("the days of this year:\n");
numberofdays();
return 0;
}
void numberofdays()
{
int yy=0,mm=0,dd=0;
int i;
int dayofmonth[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};//每月天数
if(((yy%4)!=0)||(((yy%100)==0&&(yy%400)!=0)))
dayofmonth[2]=28;//闰年的2月为28天
int total_day=0;
for(i=0;i<>
total_day=total_day+dayofmonth[i];
total_day+=dd;
printf("%d", total_day);//虽然我添加了输出 但是lz的计算逻辑ms有问题 自己debug吧
}
以上介绍了“ 大家帮忙看看为什么没有输出”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2727626.html