if(x>y)
{z=xreturn
z}
else
{z=yreturn
z}
if(n=c1)printf("%f",c)
if else(n=d1)
printf("%f",d)
if else(n=e1)
printf("%f",e)
if else(n=f1)
printf("%f",f)
else
printf("Sorry!")
这一段代码错了,因为c里面和Vb的语法是不一样的。
c里面 if语句的格式是:
if(条件1)
{语句1;}
else if(条件2)
{语句2;}
。。。
else
{语句n}
而且c里面判断是否相同使用符号“==”(注意是两个),而不是“=”(一个)
所以你相应的程序段应该为:
if(n==c1)
printf("%f",c)
else if(n==d1)
printf("%f",d)
else if(n==e1)
printf("%f",e)
else if(n==f1)
printf("%f",f)
else
printf("Sorry!")
简化的话可以直接将if语句后面的c1,d1,e1,f1 换成‘h’,‘c’,‘j’,‘y’.
提供一个简单的方法,但是也有局限:
把 scanf("%f%f%c",&a,&b,&n)
改为:
scanf("%f%f%c",&a,&b)
do
{
scanf("%c",&n)
}while(n=='\n'||n==','||n==' ')
这样就可以在第二个值和符号之间插入若干个回车或者逗号或者空格来区分它们。但是对于除此以外的符号,依然会出错。