为什么程序老是报错“else没有匹配的if”

如题所述

if后面多了个分号,这样编译器就认为if判断结束,这样的话else就和if无法匹配了
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-12-30
你if那句话之后写了个;代表if就结束了
第2个回答  2014-12-30
IF 那一行尾不要加;号

为什么程序老是报错“else没有匹配的if”
if后面多了个分号,这样编译器就认为if判断结束,这样的话else就和if无法匹配了

这个c语言程序为什么总是出现error C2181: illegal else without matchi...
这样就不符合C语言语法了,所以编译器报错说:else没有与之对应的if(因为中间隔了一条语句)。即便if或else后只有一条语句,也用{}扩起来,是一个好的编程习惯。这样容易发现错误。

c程序设计,请问为什么提示else没有if与之匹配呢?
因为你没有使用大括号{}将if和else之间的语句括起来。

求大神帮我看哪里错了,系统总是说if else不匹配。
你这程序写得太乱了。else必须和if紧挨着,也就是说else和if之间只能有一条语句,或者一个语句块(用{}包起来的),你的if后面有两个语句,所以else没有办法和if匹配 include"stdio.h"void main(){ int i,j,a,b,x;for(i=2;i<100;i++); \/\/这里的分号应该去掉,否则它表示一条空...

C++为什么总是提示没有if匹配的非法else
if和else没有正确配对,导致这样的错误。还有第二个if else 后面的分号应该去掉,不然就会逻辑错误。

C语音 用F7编译后 一直有错误:没有匹配 if 的非法 else
你的if ( a == b );后面多了一个分号;它把if语句给结束了,导致后面的else没有匹配到相应的if条件。这种错误是教科书级的,刚学习c语言的时候老师就举过这样的例子。

遇到的else没有匹配的if
我觉得应该是少了个花括号,可能是您复制粘贴时丢失了 在if(cmdtxt.text=="开始")后面应该有个{ 刚好和下面的else对应 如:jt.stop()cmd.addEventListener(MouseEvent.CLICK,onclk)function onclk(evt){ if(cmdtxt.text=="开始"){ cmdtxt.text="停止"jt.play()}else{ cmdtxt.text="开始"jt...

c语言程序编译时提示else没有匹配if,麻烦高手指点
这个程序的错误不是else匹配if的问题,而是你在#define语句的结尾加了分号。#define Yes 1

flash的脚本里“遇到的 'else' 没有匹配的 'if'” 是什么意思?
书写格式不对造成。

else没有匹配的if 高手帮看看
程序整体结构是对的,我发现程序的第65行(倒数第二行)的那个关大括号不是像你注释的End of TellTarget。这个大括号是对应的第一个else if。你可以用单步调试查看一下程序具体一步一步的执行顺序,是不是和你的编程逻辑一致。

相似回答
大家正在搜