全部问题 > 当前问题

编写的程序老显示警告

if(year%400==0)

printf("闰年\n");

else

{

if(tear%==0&&year%100!=0)

{

printf("闰年\n");

}

else

{

printf("不是闰年\n");

}

}


大鸡腿 2016-8-15 11:04:57

共 3 个回答

嘿嘿大人 2016-8-16 21:20:10

警告是什么?

大鸡腿 2016-8-17 11:04:35

回复 嘿嘿大人

--------------------Configuration: program10 - Win32 Debug--------------------

Compiling...

program10.c

d:\cÓïÑÔ\³ÌÐò\program10.c(1) : error C2059: syntax error : 'if'

d:\cÓïÑÔ\³ÌÐò\program10.c(5) : error C2059: syntax error : 'else'

Ö´ÐÐ cl.exe ʱ³ö´í.


program10.obj - 1 error(s), 0 warning(s)


大鸡腿 2016-8-17 11:05:02

回复 嘿嘿大人:咦怎么乱码了


问题来自: 嵌套的if语句
有以下程序
#include <stdio.h>
main()
{ int x=1,y=0;
  if(!x) y++;
  else if(x==0)
    if (x) y+=2;
    else y+=3;
  printf("%d\n",y);
}
程序运行后的输出结果是 ______ 。
A. 3
B. 2
C. 1
D. 0
答案:D
解析:这道题目if嵌套的很混乱,根据else的就近原则,我先把格式给大家复原调整一下。 if(!x) y++; else { if(x==0) { if(x) y+=2; else y+=3; } } 由于x=1,因此!x为假,进入else。x==0为假,结束执行,y没有赋值。因此选D。