c语言 else 出现错误,“else”错误中出现意外的“else”

你需要重新排列你的大括号。您的第一个语句是完整的,所以R解释它,并在其他行产生语法错误。您的代码应如下所示:

if (dsnt<0.05) {

wilcox.test(distance[result=='nt'],distance[result=='t'],alternative=c("two.sided"),paired=TRUE)

} else if (dst<0.05) {

wilcox.test(distance[result=='nt'],distance[result=='t'],alternative=c("two.sided"),paired=TRUE)

} else {

t.test(distance[result=='nt'],distance[result=='t'],alternative=c("two.sided"),paired=TRUE)

}

更简单地说,如果你有:

if(condition == TRUE) x

else x

然后R读取第一行,因为它是完整的,完整的运行。当它到达下一行时,它会“”否则?否则什么?因为它是一个全新的语句。要让R解释else作为前面的if语句的一部分,你必须有大括号,告诉R你还没有完成:

if(condition == TRUE) {x

} else {x