- -C语言的问题2.2

来源:百度知道 编辑:UC知道 时间:2024/05/27 09:26:19
通过接受键盘输入的月数量,再根据当前的月份,可以计算出某一年的月份。例如:当前的月份是10,加输入的月数量5,月份是3;加输入的月数量-13,月份是9.程序中输出的月份以英文字符显示,CURRENT为当前月份。程序有两处错误。
# define CURRENT 11
# include<stdio.h>
main()
{
int month,monthnum;
char *ch;
char *month-name(int);
printf("Input Month Number: ")
scanf("%d",&monthnum);
/*FOUND MISTAKE BELOW*/
if (monthnum>=0)
month=(CURRENT-1+monthnum)%12+1;
else
month=(12+(CURRENT-1+monthnum))%12+1;
ch=month_name(month);
printf("CURRENT month is%d\n"CURRENT)
printf("Add%d MONTH is: %s\n",month,ch);
/*FOUND MISTAKE BELOW*/
char *month_name(int n)
{
char
*name[]={"Jan","Feb","Mar","APR","May","Jun","Jnl","Aug","Sep","Oct","Nov","Dec"};
return(name[n]);
}

# define CURRENT 11
# include<stdio.h>
void main()
{
int month,monthnum;
char *ch;
char *month_name(int);
printf("Input Month Number: ");
scanf("%d",&monthnum);
/*FOUND MISTAKE BELOW*/
if (monthnum>=0)
month=(CURRENT-1+monthnum)%12+1;
else
month=(12+(CURRENT-1+monthnum))%12+1;
ch=month_name(month);
printf("CURRENT month is%d\n",CURRENT);
printf("Add%d MONTH is: %s\n",month,ch); \
}
/*FOUND MISTAKE BELOW*/
char *month_name(int n)
{
char *name[]={"Jan","Feb","Mar","APR","May","Jun","Jnl","Aug","Sep","Oct","Nov","Dec"};
return(name[n]);
}
你的错误主要是符号问题 ,以后注意点
这个程序编译通过 结果正确

# define CURRENT 11
# include<stdio.h>
main()
{
int month,mo