當前位置:首頁 » 編程語言 » c語言賦值d678為什麼不對
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言賦值d678為什麼不對

發布時間: 2022-12-10 18:17:03

『壹』 c語言 關於賦值錯誤的問題

if((a<=b)&&((b-a+1)<=N)&&(((a+b)*(b-a+1))/2=M))
這句語句錯了,我不知道你是不是想寫成(((a+b)*(b-a+1))/2==M)(=變成==)
這個的錯誤是,等號前面是表達式,表達式的結果是一個臨時變數,你把M賦值給一個臨時變數,肯定錯了。臨時變數不能做左值
要不改成==,表示相等,如果就是賦值,把M寫前面就可以了,把運算的值賦給M

『貳』 c語言常見的賦值錯誤。。。

第二個是對的 char c = 32;

其他兩個是錯誤的。

int n1=n2=10; 這個n2聲明了嗎??n2是什麼類型的元素。
int n2=10;
int n1=n2; //這樣是對的。
int n1,n2;
n1=n2=10; //這樣也是對的。因為,n2在前面都聲明了。

float f=f+1.1; //後面的這個f是什麼?從哪裡來的?代表的值是多少?這些編譯器都不知道。
那麼即使這樣正確了,f的值也是不可預測的。所以,這個也不正確。

在C/C++中,變數都是先聲明,後使用。