1樓:等乙個人灰咖啡
c 看下c語言中關於/是怎麼解釋的就懂了 兩個整數/結果還是整數 x3=x1/x2; 還有這裡printf(「%d\n」,x3) 格式控制要求輸出d 也是整數
float x1,x2; x1=3/2; x2=x1/2; printf(「%d,%.lf」,(int)x1,x2);除錯了下,為什麼x1... 20
2樓:聽不清啊
第乙個是因為3/2是兩個整數的商,也是乙個整數,所以就等於1(小數部分丟棄了)。
第二個是因為1.0/2=0.5,但是「%.lf"格式符指定輸出0位小數,所以小數部分四捨五入,就也是1了。
3樓:飄零↗落羽
x1 = 1.5
(int) x1 保留x1整數部分(小數部分捨去),是1x2 = 0.75
%.lf x2四捨五入輸出,是1
如果用%lf,預設保留6位
形如%.1lf這樣就是保留一位,%.2lf就是保留兩位
4樓:劉琰明
x1是1 是因為你print (int)。x2 try %f or %lf 不是 %.lf 那個decimal point 估計是錯了。
5樓:匿名使用者
輸出是: 1,0.500000 你是不是 看錯了
6樓:
float後面得加l
有如下程式 main0{int y=3,x=3,z=1;printf(「%d %d\n」,(++x,y++),z+2);} 答案為什是3 3
7樓:匿名使用者
這是逗號
表示式bai的用法,在逗號表示式du中,總體的值是逗zhi號後面那個dao
式子值,比如a=(5,6),a的值應該是專6;
上面式子中(++x,y++)相當於y++,那個屬 printf語句其實跟printf(「%d %d\n」,y++,z+2)效果是一樣的.後面那個3就是1+2=3
c語言 輸入:x1,x2....xn 輸出:y1=x1/1,y2=(x1+x2)/2,y3=(x1+x2+x3)/3,yn=(x1+x2...+xn)/n(求各項平均值) 250
8樓:匿名使用者
輸出:s=[(∑(xt-y)^2)^1/2]/n (標準差)
這段公式,可不可以清楚一點。
9樓:匿名使用者
for(i=1;i<=n;i++)scanf("%lf",&x[i]);
sx[1]=x[1];
for(i=2;i<=n;i++)sx[i]=sx[i-1]+x[i]; //求字首和
for(i=1;i<=n;i++)y[i]=sx[i]/i;
z[1]=x[1]-y[1];
for(i=2;i<=n;i++)z[i]=z[i-1]+x[i]-y[i];
擂台法求maxz,minz......
float x1,x2; x1=3/2; x2=x1/2; printf("%d%.1f",(int)x1,x2); 輸出值是多少
10樓:
x1=3/2;
x2=x1/2;
printf("%f\n",x1);
你會發現 x1 就等於1
因為 x1=3/2; 3和2都是整型,除下來結果也為整型,是1,然後賦值給float,變成1.0
若有說明intp,a1,b以下正確的程式段是
這個,不在於 p b 還是 p a 關鍵是之前的語句 p b 也就是讓p指向了變數b,但是b中,沒有讓p指向某個變數,也就是p是個野指標,語法上雖然沒錯,但是實際執行的話,有風險的 因為在b中p指標沒有初始化。在d中p被初始化後指向b的位址所以可以用。若有說明 int p,m 5,n 以下正確的程式...
若有intw 12對以下程式段描述正確的是
程式抄最後的輸出語句有誤,其一,三個 d連在一起寫而中間沒有空位,會導致輸出連到一起 其二要輸出值的變數要寫在雙引號外面,寫到雙引號裡面會照 原樣輸出字母而不是變數的值。如下修改後會輸出 2 0 0 main else if c 0 w a b else t c printf d d d s,w,t...
執行以下程式段時x1doxxx
應該就是執行一次就退出迴圈了,你c選項是什麼呢 a x值沒有限制,不能結束迴圈 程式段int k 10 while k 0 k k 1 迴圈體語句執行 次.0。因為k 0是乙個賦值語句,即將0賦予給變數k。while是計算機的一種基本迴圈模式。當滿足條件時進入迴圈,進入迴圈後,當條件不滿足時,跳出迴...