你好,你這樣寫(xiě)肯定是的,我給你分析一下,當(dāng)程序執(zhí)行到第一個(gè)if時(shí)要判斷if語(yǔ)句的條件,假設(shè)滿足條件則執(zhí)行了語(yǔ)句1,這是對(duì)的,是吧,例如你求的是y的值,假設(shè)語(yǔ)句1是y=x+1,則第一個(gè)if語(yǔ)句執(zhí)行完后y=x+1;接著執(zhí)行第二個(gè)if語(yǔ)句,此時(shí)肯定是不滿足if的條件的是吧?(因?yàn)闈M足了第一個(gè)就不會(huì)再滿足第二個(gè)),所以就要執(zhí)行第二個(gè)if的第二個(gè)語(yǔ)句即else語(yǔ)句,假設(shè)語(yǔ)句3為y=y+2,則最終的結(jié)果就是y=y+2,也就是語(yǔ)句3.所以在這樣的情況下,你一定要排除你已經(jīng)用過(guò)的情況不能再使用,所以只需改為: if() 語(yǔ)句1;else if() 語(yǔ)句2; else 語(yǔ)句3;即可。
在石阡等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都營(yíng)銷網(wǎng)站建設(shè),外貿(mào)營(yíng)銷網(wǎng)站建設(shè),石阡網(wǎng)站建設(shè)費(fèi)用合理。
#include math.h
int main()
{
double x,y;
scanf("%lf",x);
if (x0)
y=0.5*(-x);
else
if (x10)
y=exp(x)+3;
else
if(x20)
y=log10(x);
else
if (x30)
y=pow(x,1.5);
else
if (x50)
y=pow (x,0.5)-1;
else
y=3*cos(x);
printf("y=%lf\n",y);
return 0;
}
擴(kuò)展資料
return 0代表程序正常退出。return是C++預(yù)定義的語(yǔ)句,它提供了終止函數(shù)執(zhí)行的一種方式。當(dāng)return語(yǔ)句提供了一個(gè)值時(shí),這個(gè)值就成為函數(shù)的返回值。
return語(yǔ)句用來(lái)結(jié)束循環(huán),或返回一個(gè)函數(shù)的值。
1、return 0,說(shuō)明程序正常退出,返回到主程序繼續(xù)往下執(zhí)行。
2、return 1,說(shuō)明程序異常退出,返回主調(diào)函數(shù)來(lái)處理,繼續(xù)往下執(zhí)行。return 0或return 1對(duì)程序執(zhí)行的順序沒(méi)有影響,只是大家習(xí)慣于使用return(0)退出子程序而已。
根據(jù)題目,寫(xiě)三個(gè)判斷,分別表示分段函數(shù)的三段,最后輸出結(jié)果。
C語(yǔ)言是一門(mén)面向過(guò)程、抽象化的通用程序設(shè)計(jì)語(yǔ)言,廣泛應(yīng)用于底層開(kāi)發(fā)。C語(yǔ)言能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器。C語(yǔ)言是僅產(chǎn)生少量的機(jī)器語(yǔ)言以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的高效率程序設(shè)計(jì)語(yǔ)言。盡管C語(yǔ)言提供了許多低級(jí)處理的功能,但仍然保持著跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫(xiě)出的C語(yǔ)言程序可在包括一些類似嵌入式處理器以及超級(jí)計(jì)算機(jī)等作業(yè)平臺(tái)的許多計(jì)算機(jī)平臺(tái)上進(jìn)行編譯。
你確定y也是0-40間的整數(shù)嗎?如果是的話,那么該分段函數(shù)中的第三段計(jì)算的結(jié)果已經(jīng)超出了數(shù)值范圍??;如果y的取值沒(méi)有限制,那么程序如下:
#include
stdio.h
void
main
()
{
int
x,y;
scanf("%d",x);
if(x=0x10)
y=x;
else
if(x=10x20)
y=10;
else
if(x=20x40)
y=x*x+3;
else
{
printf("error:x不是0-40之間的整數(shù)!\n");
return;
}
printf("%d\n",y);
}