關於c語言,就想問下那個if是什麼意思

2021-05-27 13:38:13 字數 3647 閱讀 6424

1樓:蘇嘉愛娛樂

%lf:表示輸入或者輸出雙精度浮點數。

雙精度浮點數(double)是計算機使用的一種資料型別,使用 64 位(8位元組) 來儲存一個浮點數。 它可以表示十進位制的15或16位有效數字,其可以表示的數字的絕對值範圍大約是:-1.

79e+308 ~ +1.79e+308

單精度浮點數是用來表示帶有小數部分的實數,一般用於科學計算。佔用4個位元組(32位)儲存空間,包括符號位1位,階碼8位,尾數23位。其數值範圍為-3.

4e38~3.4e38,單精度浮點數最多有7位十進位制有效數字,單精度浮點數的指數用「e」或「e」表示。

擴充套件資料單精度浮點數(float)與雙精度浮點數(double)的區別如下:

1、在記憶體中佔有的位元組數不同

單精度浮點數在機內佔4個位元組。雙精度浮點數在機內佔8個位元組2、有效數字位數不同

單精度浮點數有效數字7位,雙精度浮點數有效數字16位3、所能表示數的範圍不同

單精度浮點的表示範圍:-3.40e+38 ~ +3.40e+38。雙精度浮點的表示範圍:-1.79e+308 ~ +1.79e+308

2樓:文化廚子

在c語言的輸入輸出控制符中沒有%if,有%lf。

%lf:表示輸入或者輸出雙精度浮點數。

%f:表示輸入或者輸出單精度浮點數。

%i:接受整數值並將它表示為有符號的十進位制整數,i是老式寫法。

3樓:匿名使用者

%d是代表著一個int型別的值的格式,當裡面加入一個l的時候,%ld那麼代表著你輸出和輸入的是long長整型 float也是同樣的道理 記住 當你的型別是double的時候 你輸入的時候必須是%lf

4樓:龍__鳳

是%lf,一種輸入輸出格式,對應double型別資料

c語言中if(j%3)是什麼意思?

5樓:匿名使用者

j%3:j對3取餘

也就是求j除以3的餘數

比如:j=5,那麼j%3=2,因為5/3=1....餘2if(j%3)判斷j對3取餘以後是否為0,如果不是0,執行if下面的語句,

如果是0,執行另外的語句(例如else下面的語句).

6樓:匿名使用者

%是c語言的取餘運算子,又稱為模除運算子。

a%b的結果是,計算a/b後的餘數。

比如 5%3 = 2, 6%2=0等。

if是判斷語句,寫成if(expr)的格式,執行時判斷邏輯表示式expr的值,如果為真,則執行if後歸屬於if語句的程式段,否則不執行該段。

餘數if(j%3)的含義就是,當j是3的整數倍,或者說整數j有3的因子時不執行後續屬於if的程式段,否則執行。

7樓:383任一雄

意思是:如果j除以3餘數不是零就執行if的內容

若j除以3餘數是零就跳過if

8樓:匿名使用者

若a=1並且b=2(執行該步操作後,b的值加1為3)。

邏輯運算子是根據表示式的值來返回真值或是假值。其實在c語言中沒有所謂的真值和假值,只是認為非0為真值,0為假值。

符號 功能

&& 邏輯與

|| 邏輯或

! 邏輯非

當表示式進行&&運算時,只要有一個為假,總的表示式就為假,只有當所有都為真時,總的式子才為真。當表示式進行||運算時,只要有一個為真,總的值就為真,只有當所有的都為假時,總的式子才為假。邏輯非(!

)運算是把相應的變數資料轉換為相應的真/假值。若原先為假,則邏輯非以後為真,若原先為真,則邏輯非以後為假。

還有一點很重要,當一個邏輯表示式的後一部分的取值不會影響整個表示式的值時,後一部分就不會進行運算了。例如:

a=2,b=1;

a||b-1;

因為a=2,為真值,所以不管b-1是不是真值,總的表示式一定為真值,這時後面的表示式就不會再計算了。

這是一類特殊的運算子,自增運算子++和自減運算子--對變數的操作結果是增加1和減少1。例如:

--couter;

couter--;

++amount;

amount++;

看這些例子裡,運算子在前面還是在後面對本身的影響都是一樣的,都是加1或者減1,但是當把他們作為其他表示式的一部分,兩者就有區別了。運算子放在變數前面,那麼在運算之前,變數先完成自增或自減運算;如果運算子放在後面,那麼自增自減運算是在變數參加表示式的運算後再運算。這樣講可能不太清楚,看下面的例子:

num1=4;

num2=8;

a=++num1;

b=num2++;

a =++num1;這總的來看是一個賦值,把++num1的值賦給a,因為自增運算子在變數的前面,所以num1先自增加1變為5,然後賦值給a,最終a也為5。b=num2++;這是把num2++的值賦給b,因為自增運算子在變數的後面,所以先把num2賦值給b,b應該為8,然後num2自增加1變為 9。

那麼如果出現這樣的情況我們怎麼處理呢?

c=num1+++num2;

到底是c=(num1++)+num2;還是c=num1+(++num2);這要根據編譯器來決定,不同的編譯器可能有不同的結果。所以我們在以後的程式設計當中,應該儘量避免出現上面複雜的情況。

9樓:匿名使用者

j%3 對3取餘

if(j%3) 這樣表示式有問題的吧?

if(裡面要有個條件判斷的吧)

10樓:喂_哥要你了

j對3取餘 %;是c中的取餘運算

11樓:—百du一下

如果 j 對 3 取餘的意思

c語言中if(!n)是什麼意思?

12樓:桑仁言雪

\n是換行符,通常在輸出中用作格式控制。如printf("what

agood

day!\n");

這樣,在輸出what

agood

day!之後,就可以換行,游標移動到下一行了。

希望可以幫到你。

13樓:匿名使用者

對於整數 ,當n為0時,轉換為布林值就是 假,此時 !n 就是 真 進入if後面的語句塊

當 n 為 非0值是,轉換為布林值 就是 真,此時 !n 就是假,不執行if後面的語句塊

如果n 本身就是布林值,也就是 在n為假的時候 執行if後面的語句塊,n為真的時候不執行 if後面的語句塊

希望可以幫助到你

14樓:匿名使用者

這個語句沒有什麼難理解的,急需要把if('\n' == ch)中的'\n'理解成一個字元變數。只要ch的值等於'\n',此判讀語句為真。

15樓:汝曼華劍念

「==」是判斷符號,c等於n時,c=='n'語句執行完後為1,所以總的來說就是c等於'n'或者'n'時,括號中的語句為真,那麼執行if下的指令語句

16樓:惠素芹慎煙

這是「轉義字元」。表示一個「換行(lf)」

,將當前位置移到下一行開頭。

17樓:偏愛你眼

if(!n)等價於if(n=0)

if(n)等價於if(n!=0)

c語言中printf3 2 5)右邊的那個是什麼意思

符號表判斷bai 當左右都不du為零時,答案取1 為按位運zhi算 2 的dao2進製表 示為00000010 5的二進版製表示為00000101 只有當同對權應的二進位同時為1時,運算結果相應的二進位才取1,否則取0 故 很明顯2 5 0 而3 0很顯然為0 是按位與 copy運算,它的規則是 1...

哪位大神幫我看看這個C語言的題那個“棧”是什麼意思啊

1 d c b a 2 3 4 5 棧,就像一個桶子,將5放進去,就到了最底下,依次4321堆在上一個的上面,然後退棧就從最上面依次拿出,順序就為12345,後面的類推。你往桶裡放東西是先沉入底部,拿出來時肯定你是從頂部依次拿出,棧 原理類似這樣 先進後出 望採納!棧是一種資料結構,存取資料時後進先...

關於c語言的一道題,答案為啥是,關於c語言的一道題,答案為啥是20?

i的取值包括1,5,9,13,共4次,j的取值包括3,7,11,15,19,共5次,所以m 的次數是 4乘以5 20,m的初始值是0,所以迴圈結束後 m 20 外迴圈4次,裡迴圈5次,故 總迴圈 4 5 20次 i迴圈4次j迴圈5次 i迴圈4次 1 5 9 13 j迴圈5次 3 7 11 15 19...