我想問(wèn)你個(gè)問(wèn)題:你是不是用x = -1測(cè)試的??
成都創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供宿城企業(yè)網(wǎng)站建設(shè),專(zhuān)注與網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、HTML5、小程序制作等業(yè)務(wù)。10年已為宿城眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
那么y = x-1 跟 y = 2x的結(jié)果不是一樣么,都是-2啊。。。不要因此得出結(jié)論x=-1的時(shí)候y=2x
另外,你這個(gè)函數(shù)如果用if就全用if,如果用if--else-if,就全部這樣,不要混合用,很亂。
建議都用if--else if,這樣能夠看出是一個(gè)分段函數(shù)。
輸入語(yǔ)句格式復(fù)雜,難以滿(mǎn)足之故。
改成:
int x,f=0;
printf("input x:\n");
scanf("%d", x);
即可。
#include?"stdio.h"
#include?"math.h"
int?main(int?argc,char?*argv[]){
double?x,y;
printf("Input?x(R:)...\nx=");
scanf("%lf",x);
if(x5)
y=-x+3.5;
else?if(x=5??x10)
y=20-3.5*pow(x+3,7);//這里看著像7,是幾就把7改成幾
else
y=-3.5+sin(x);
printf("y?=?%g\t(x==%g)\n",y,x);
return?0;
}
運(yùn)行樣例:
幫你改了下代碼,VC6測(cè)試通過(guò),自己看看吧。
#includestdio.h
int main()
{
float x,y;//根據(jù)給定的測(cè)試用例,x,y應(yīng)該為float型
scanf("%f",x);//x為float型,所以改為%f
if(x20)
{
y=x+100;
}
else if(x=20x=100)
{
y=x;
}
else
y=x-100;
printf("x=%f,y=%f\n",x,y);
return 0;//缺少分號(hào)
}
#include
int?main()
{
int?x,y;
scanf("%d",x);
if(0xx10)?y=3*x+2;
else
{if(x=0)?y=0;
else
{if?(x0)?y=x*x;
else?printf("go?die\n");
}
}
printf("%d",y);
return?0;
}該程序的分段函數(shù)如下:
f(x)=3x+2? (0x10)
f(x)=1???????? (x=0)
f(x)?=?x*x??? (x0)
#include stdio.h
#include math.h
void main()
{
float x;
double y;
printf("Please input the value of x:");
scanf("%f",x);
if(x=-10x=4)
{
y=fabs(x-2);
printf("y=%.2f\n",y);
}
else if(x=5x=7)
{
y=x+10;
printf("y=%.2f\n",y);
}
else if(x=8x=12)
{
y=pow(x,4);
printf("y=%.2f\n",y);
}
else
printf("No answer\n");
}