『壹』 C語言中等於號的問題
一般來說,3==i 比較規范
因為如果==寫成了=,編譯器會報錯,而前者會當成賦值,不利於發現錯誤
『貳』 C語言,第六題為什麼是0
一、先明確一件事,表達式中間的等於號(=)如果只有一個,則這個表達式是錯誤的,不會有任何「值」。這是因為,C語言中,「=」(等於號)只是一個「賦值號」,它的作用是把右邊的值賦給左邊的變數,要求左邊必須是「變數名」!如:
a=6;
b=a+m;
如果左邊不是變數名,則會出現:3=4,53=a這樣滑稽的語句。
本例中賦值號左邊是一個數字,所以,語法錯誤的表達式不會有值。
二、如果表達式中間的等於號(=)有兩個,則這個表達式是9/2*2 ==9*2/2,這個表達式是有意義的。這是因為,C語言中,「==」(雙等於號)是一個判斷相等的「邏輯運算符」,它的作用是比較前後表達式的值是否相等。如:
5==6;前後不等,表達式的值是「邏輯假」,用0表示;
5==5,前後相等,表達式的值是「邏輯真」,用1表示。
三、(修改過的本例中)
9/2*2 ==9*2/2
4*2==18/2
8==9不成立,邏輯假,值為0。
若有不明白之處請留言。
『叄』 為什麼這個C語言計算結果總是等於100呢
出錯的原因是你程序代碼中的判斷語句寫錯了。應該改寫成:
if(answer==result)
只寫一個等於號,那是賦值語句,復制的結果只要不是零就被計算機判斷為「真」,所以輸入錯誤的答案也被他判定為正確了!
『肆』 C語言程序老是顯示錯誤但是沒有錯是什麼原因
從代碼上看沒有問題。
如果你是新安裝的編譯器,那麼有可能是編譯器配置問題。 (Errorspawningcl.exe)
也有可能是你工程中加了不止一個文件。(function main )
建議你滑鼠點在1 errors位置,然後滑鼠滾輪向上滾動,查看具體錯誤信息。根據錯誤信息分析具體原因。
『伍』 編寫的C語言程序是對的,確為什麼總是顯示有一個錯誤,而且看不到錯誤原因,重新關閉再啟動C語言還是這
實際上這個問題很多情況下是由於路徑設置的問題引起的,
「CL.exe」是VC使用真正的編譯器(編譯程序),其路徑在「VC根目錄\VC98\Bin」下面,
你可以到相應的路徑下找到這個應用程序。
因此問題可以按照以下方法解決:打開vc界面 點擊VC「TOOLS(工具)」—>「Option(選擇)」
—>「Directories(目錄)」重新設置「Excutable Fils、Include Files、
Library Files、Source Files」的路徑。很多情況可能就一個盤符的不同
(例如你的VC裝在C,但是這些路徑全部在D),改過來就OK了。
如果你是按照初始路徑安裝vc6.0的,路徑應為:
executatble files:
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin
C:\Program Files\Microsoft Visual Studio\VC98\BIN
C:\Program Files\Microsoft Visual Studio\Common\TOOLS
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT
include files:
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
library files:
C:\Program Files\Microsoft Visual Studio\VC98\LIB
C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB
source files:
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC
如果你裝在其他盤里,則仿照其路徑變通就行。
關鍵是microsoft visual studio\ 後面的東西要相同。
『陸』 C語言程序沒問題,但總顯示一個錯誤是怎麼回事
一般是你運行了一次還沒有輸入數據,所以還在等你輸入,可是你又「啟動」編譯執行了一次。把界面最小化檢查一下,看有沒有黑框框存在。若有,就是這個問題,把所有黑框框都關閉再運行就可以了……
『柒』 關於C語言的一個代碼 為什麼老提示出現錯誤
你的程序犯了2個錯誤
1、main函數寫成了mian
2、邏輯或||的優先順序要高於賦值運算符=,括弧內的運算時這樣的:先算j==5,這個表達式不成立,為0,然後算0||k,因為||的優先順序高於=,此時j==5||k的表達式也是為0,你這時要進行賦值,賦值語句相當於0=k+1,這就當然錯了。
小技巧,如果判斷一個變數和某一值比較如if(a
==
1),程序員一般寫成if(1
==
a),這樣寫的好處是一旦失手寫成if(1=a)時編譯器就會報錯,而if(a=1)就不會報錯,這樣條件永遠為真,永遠執行,而且不容易發現這種錯誤。
『捌』 C語言變數突然之間無法用等於號賦值
按上述的描述,發生這樣的情況,只能是編譯器的問題。不過在下這個結論之前,最好先復查一下代碼。通常是代碼本身的問題。
『玖』 為什麼C語言老提示錯誤
1)sum重復定義了
2)sign未經定義
3)int main()無規定返回值(不確定)
#include<stdio.h>
intmain()
{intsign=1;
doubledone=2.0,sum=1.0,term;
while(done<=100)
{
sign=-sign;
term=sign/done;
sum=sum+term;
done=done+1;
}
printf("%f
",sum);
return0;
}