人人學編程 C語言入門 學會這些,讓你寫的程序更有邏輯性
GIF/343K
周末愉快
相關鏈接: 程序中的多條件判斷
相關鏈接:程序中的分支和跳轉
摘要: C提供一種簡寫方式來表示if else語句的一種形式。這被稱為條件表達式,並使用條件運算符(? :)。
這是個有三個操作數的分兩部分的運算符。有三個操作數的運算符就稱為三元運算符。下面是一個得到一個數的絕對值的例子:
x = (y
想要一起學習C++的可以加裙六二六八七一九一六,裙內有各種資料滿足大家,歡迎加裙
在等號和分號之間就是條件表達式。以if else的語法可以這樣寫:
x = -y;
else
x = y;
下面是條件表達式的一般形式:
expression1 ? expression2 : expression3
如果1為真,整個條件表達式的值和2的值相同。如果1為假,整個條件表達式的值等於3的值。
當希望將兩個可能的值中的一個賦給變數時,可以使用條件表達式。典型的例子是將兩個值中的最大值賦給變數:
max = (a>b) ? a : b;
如果a>b,那麼max的值等於a,否則等於b。
一個噴漆程序的例子:
這個程序計算向給定的平方英尺的面積塗漆,全部塗完需要多少罐油漆。基本的數學法則很簡單:用平方英尺數除以每罐能塗抹的平方英尺數。但是假設結果是1.7罐會怎麼樣?商店整罐賣漆,而不拆開賣,所以必須買兩罐。所以程序在得到非整數罐的結果時應該進1。條件運算符常用於處理這種情況,而且在適當的時候也用來列印can或cans。
上例表明,條件運算符也可以使用字元串作為它的第二個和第三個操作數。
摘要: C有三個邏輯運算符:與&&、或||、非!
假設需要編寫一個程序,用來計算在一個輸入的句子中,除單引號和雙引號以外的字元出現了多少次。可以用邏輯運算符來實現該目的,可以用英文的句號來標識一個句子的結束。
程序 chcount.c
邏輯運算符的優先順序低於關係運算符,所以不必使用圓括弧組合表達式。
C的邏輯運算符
假設A和B是兩個簡單的關係表達式,那麼可以聲明如下:
*僅當A和B都為真時,A&&B才為真。
*如果A為真或B為真或二者都為真,A||B為真。
*如果A為真,!A為假;如果A為假,!A為真。
改變拼寫法:iso646.h
C99標準為邏輯運算符增加了可供選擇的拼寫法。它們在iso646.h頭文件中定義。
表7.4 邏輯運算符的可選表示法
優先順序
!運算符擁有最高的優先順序,它高於乘法運算,和增量運算符的優先順序相同,僅次於圓括弧。&&運算符的優先順序高於||,這二者的優先順序都低於關係運算符而高於賦值運算符。
求值的順序
C保證邏輯運算符是從左到右求值的。&&和||運算符是序列的分界點,因此在程序從一個操作數前進到下一個操作數之前,所有的副作用都會生效。而且,C保證一旦發現某個元素使表達式總體無效,求值將立刻停止。
範圍
可以把&&運算符用於測試範圍。例如:range>=90 && range
想要一起學習C++的可以加裙六二六八七一九一六,裙內有各種資料滿足大家,歡迎加裙
點擊展開全文
※C語言趣味猜拳遊戲誰贏誰上去一個梯子
※關於C語言與編程的發展前景!
※自學編程的幾大要素,你知道嗎?
※程序員大佬,還記得最初C語言的經典演算法?
TAG:C加加 |
※為什麼學了編程語言還是不會做軟體?
※想轉行做程序員,學哪種編程語言比較好?
※為別人選擇一門編程語言
※科學家說,學習語言的大腦系統早於人類產生,人類不是唯一會學語言的?
※程序員,不要急於學習編程語言,先學會如何解決問題
※你會在什麼時候學習或放棄一門編程語言?
※對於沒有編程經驗的人,R 語言是否很難掌握?
※C語言編程入門經典N個程序,你會嗎?
※家長對語言學習過程的覺知,是孩子外語學習入門非常重要的部分
※有趣的人造語言,多學一門總沒錯
※程序員是否應該創造面向 IDE 而非人類的編程語言?
※語言,你要這樣學
※學會編程是不是黑客入門,做黑客至少要懂幾種語言?
※現在想學變編程,學什麼語言比較有前景?
※C語言編程新手基礎入門學習
※人生苦短,我學Python!非計算機專業的老師和同學最適合的編程語言!
※如何學習一門新的編程語言?
※為什麼這麼多人學不會C語言?
※你應該學習哪種編程語言?
※不學C+也能玩轉超算編程,斯坦福大學推出超算編程語言Regent