c语言出现Users\Administrator\Desktop\Calendar.c(13) : error C2059: syntax error : '{'为什么意思?
部分程序(a[13]已定义)if((i%4==0)&&(i%100==0))a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};e...
部分程序(a[13]已定义)
if((i%4==0)&&(i%100==0))
a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
else a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
for(m=1;m<k;m++)
number+=a[m];
number+=q;
printf("´Ó1990Äêµ½½ñÌìÒ»¹²%dÌì\n",number);
}
错误如下
C:\Users\Administrator\Desktop\Calendar.c(13) : error C2059: syntax error : '{'
C:\Users\Administrator\Desktop\Calendar.c(14) : error C2059: syntax error : '{' 展开
if((i%4==0)&&(i%100==0))
a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
else a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
for(m=1;m<k;m++)
number+=a[m];
number+=q;
printf("´Ó1990Äêµ½½ñÌìÒ»¹²%dÌì\n",number);
}
错误如下
C:\Users\Administrator\Desktop\Calendar.c(13) : error C2059: syntax error : '{'
C:\Users\Administrator\Desktop\Calendar.c(14) : error C2059: syntax error : '{' 展开
5个回答
展开全部
声明时初始化允许写:
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
声明了 int a[13];
语句中下标不能用13,只能 0 到 12 。13 超界了。
也不允许 有 a[13]={0,31。。 这样的非法的赋值。
一般这种程序定义2维数组:
int a[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} };
int year=1900, number=0, leap;
if( (year%4==0)&&(year%100 !=0) || (year % 400 ==0 ) ) leap=1; else leap = 0;
// 闰年条件
然后 用 a[leap][m] 统计天数:
for(m=1;m<k;m++) number+=a[leap][m];
number+=q;
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
声明了 int a[13];
语句中下标不能用13,只能 0 到 12 。13 超界了。
也不允许 有 a[13]={0,31。。 这样的非法的赋值。
一般这种程序定义2维数组:
int a[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} };
int year=1900, number=0, leap;
if( (year%4==0)&&(year%100 !=0) || (year % 400 ==0 ) ) leap=1; else leap = 0;
// 闰年条件
然后 用 a[leap][m] 统计天数:
for(m=1;m<k;m++) number+=a[leap][m];
number+=q;
2013-07-19
展开全部
数组只有初始化时直接赋值,其它时候只能对单个元素赋值或者整体赋值。可以这样
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
if((i%4==0)&&(i%100==0))
a[2]=29;
else a[2]=28;
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
if((i%4==0)&&(i%100==0))
a[2]=29;
else a[2]=28;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直译就是”表达式错误(在第13行的大括号处)“,说明在大括号之前至少有一处语法错误。
a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};这一句不能这么写,数组不能直接赋值,只有初始化的时候可以这么写。
a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};这一句不能这么写,数组不能直接赋值,只有初始化的时候可以这么写。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
13行或者14行 有语法错误,估计是标点符号或者是大括号的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a<12>,把零去掉。润年判断错误,题目是不是第几天呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询