其实从根本上说:
else if(表达式)
和else
if(表达式)
可以认为是相同的,即都要不满足else之前的if条件,并且要满足else之后的if条件
----------------解决方案--------------------------------------------------------
如果有else 那么肯定要和if配对,否则出错。
----------------解决方案--------------------------------------------------------
7楼说的对,在IF语句后面是1句就不用写{}如果是多句就要写{}。
----------------解决方案--------------------------------------------------------
回复:(w5630291)[求助]C语言小白 问个小白问题 高手...
#include<iostream>using namespace std;
int main()
{
float a,b,c,d,e,f;
scanf("%f%f",&a,&b);
c=(a-2)*(a-2)+(b-2)*(b-2);
d=(a-2)*(a-2)+(b+2)*(b+2);
e=(a+2)*(a+2)+(b+2)*(b+2);
f=(a+2)*(a+2)+(b-2)*(b-2);
if(c<=1||d<=1||e<=1||f<=1)
cout<<"10"<<endl;
else
cout<<"0"<<endl;
return 0;
}
----------------解决方案--------------------------------------------------------
发错地方了,
SORRY.
----------------解决方案--------------------------------------------------------
这是求高塔问题
----------------解决方案--------------------------------------------------------
`~~你程序可以这样看~~:
if (lirun<=10){
jiangjin=10*0.1; 这里是个IF语句~~
printf("\n%lf",jiangjin); 一个输出语句
else if(lirun>10&&lirun<20) 一个 esle 语句
jiangjin=10*0.1+(lirun-10)*0.075;
等价与
IF 语句;
普通语句;
else语句;
很明显``~你的IF-ELSE被打断了````
----------------解决方案--------------------------------------------------------
#include<stdio.h>
void main()
{
double lirun,jiangjin;
printf("\n 输入当年的利润:");
scanf("%lf",&lirun);
if (lirun<=10)
{
jiangjin=10*0.1;
printf("\n%lf",jiangjin);
}
else if(lirun>10&&lirun<20)
{
jiangjin=10*0.1+(lirun-10)*0.075;
printf("\n%lf",jiangjin);
}
}
----------------解决方案--------------------------------------------------------