C語言是面向過程的,而C++是面向對象的
C是一個結構化語言,它的重點在于算法和數據結構。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制)。
C++,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取對象的狀態信息得到輸出或實現過程(事務)控制。 所以C與C++的最大區別在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”。
C與C++的最大區別:在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”,而就語言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,錯!算法是程序設計的基礎,好的設計如果沒有好的算法,一樣不行。而且,“C加上好的設計”也能寫出非常好的東西。
閱讀須知:
小編推薦一個學C語言/C++的學習裙【 二六三,六八八,二七六 】,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多干貨和技術資料分享!
1.如何比較
生活中我們常常會做比較,通過比較我們知道6大于5,那么C語言中又是怎么來比較的呢?
C語言是通過>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)、!=(不等于),這些運算符來進行比較的,比如:
像上面的表達式叫做關系表達式,關系表達式的值為"真"或者"假",像上面a < b就為真,a > b就為假。
注意當比較兩個變量是否相等時是使用==來比較的,是兩個等號連著用哦,如果只是一個等號=這是賦值的意思,比如a = 4是把4賦值給a這個變量,而不是a是不是等于4的意思。
2.如何判斷真假
C語言除了會做比較運算外還有一種新的運算叫做邏輯運算,那什么叫邏輯運算呢?就是用"真"和"假"這兩個值來做運算。邏輯運算的值也是"真"和"假",用"0"表示假,用非0數字表示"真",一般使用"1"表示"真"。
首先我們先來介紹三種符號:&&與運算,規則:"真&&真"為真,"真&&假"為假,"假&&真"為假,"假&&假"為假||或運算,規則:"真||真"為真,"真||假"為真,"假||真"為真,"假||假"為假 ! 非運算,規則:"!真"為假,"!假"為真
舉個例子:
(a < b) && (b < c) 為真 (a < b) || (a < c) 為真 a < b 為真, !(a < b) 為假
3.判斷是正數還是負數
一個非0整數不是正數就是負數,如果我們想判斷一個數字是不是負數,用C語言該怎么解決呢?
我們知道小于0的數就是負數,現在用C語言來判斷一個數是不是負數,如果是就讓它自己說出來"我是負數":
這里出現一個新的用法--if語句,它就是C語言中的判斷語句。
if語句括號中的句子就是條件,條件可以是關系表達式也可以是邏輯表達式,比如a < 0就是一個條件。 if語句后面都會跟著一對花括號{},在這個花括號的里面的內容就是滿足if條件后的一些處理,在這里可以寫任意的C語言的語句。
當if語句中只有一個C語言的語句時可以不適用花括號,所以
if?(a < 0)
printf("我是負數!");
也是合法的,只不過為了代碼的可讀性考慮,一般都會加上花括號。
4.如何判斷是奇數還是偶數
一個整數不是奇數就是偶數,現實中我們判斷偶數的依據是看這個數是否能被2整除,也就是看看這個數字除以2之后的余數是否為0,如果不為0那肯定就是奇數。現在我們把這個想法轉化為C的語句吧!
在C語言中求余數是用%這個符號的,運用上個練習中我們學習的if()語句來試試吧。
嘿嘿,這里我們又使用了一個新的語句else,其實else就是它英文字面的意思,就是除了符合if條件之外的它都接收。比如上面的例子中如果不是偶數那剩下的肯定是奇數。
else的使用方法和if類似,也要在后面加上{}這對花括號,所有符合else條件的處理都要包含在花括號中。
5.分數等級查詢小系統
我們知道老師一般會把分數進行分級,學生可以根據自己的考試分數來查詢自己的成績是哪個等級:
80 < score <= 100 為優秀 60 <= score <= 80 為良好 score < 60 為不及格
既然我們知道了分等級的規則就幫著老師來做一個分數等級查詢的小系統吧。
優秀等級對應的C語言的語句是:
if?(score <= 100 && score >80)
{
printf("你的成績是優秀! ");
}
良好等級對應的C語言的語句是:
if(score <= 80 && score >=60)
{
printf("你的成績是良好! ");
}
不及格等級對應的C語言的語句是:
if?(score < 60)
{
printf("你的成績是不及格! ");
}
上面寫這么多的if語句是不是有點兒煩,C語言中有一種方法可以把上邊所有的if語句連起來,看清楚哦:
小編推薦一個學C語言/C++的學習裙【 二六三,六八八,二七六 】,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多干貨和技術資料分享!
這個代碼看起來有點兒長,但是非常好理解。如果不符合第一個條件的分支我就走到else里面,結果else里面還有條件判斷,再跟這個條件進行匹配,直到匹配到合適的條件為止。使用這么一層一層的if和else就叫條件語句的嵌套。使用時一定要注意格式對齊,這樣你的代碼看起來才清楚。
6.星期查詢小系統
我們已經學習了if和else的嵌套使用,當多層的嵌套使用時出錯的可能性就增加了。C語言中還有一種新的語句能解決這個問題,我一直叫它開關語句:switch,下面我們來講一下怎么使用switch語句:
switch?(weekday)
{
case1:
printf("Today is Monday ");
break;
case2:
printf("Today is Tuesday ");
break;
… …
case7:
printf("Today is Sunday ");
break;
default:
printf("You write number is wrong!");
break;
}
小編推薦一個學C語言/C++的學習裙【 二六三,六八八,二七六 】,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多干貨和技術資料分享!
上面的代碼就是switch的使用方法,switch后面的括號()里是一個變量,上面的例子中weekday就是個變量,用來存數字的,我們希望這個數字是1-7之間的整數。
case后面跟著的數字就是用來跟weekday進行匹配的,如果是weekday中存1,就進入case 1中,進行相應的處理,否則就不會進去。
case后面不只能寫數字,也可以是一個字母,但是不能是變量,每個case后面跟的不能重復。
default是用來處理異常的,比如weekday中存的不是1-7的數字而是別的,這時就會進入到default這個語句中進行相應的處理。
每個case后面必須有一個break,是跳出的意思。
7.打賭輸贏機
生活中我們經常會打賭,賭你贏了怎么樣我贏了怎么樣,C語言中有一個跟這個非常類似的語句,叫條件運算符:
(表達式 ? 值1 : 值2)
"表達式"就是賭注的內容,值1和值2就是賭贏的獎勵。
y = (x == 2 ? 100 : 50) ;
如果x等于2,那么y就等于100,如果x不等于2,那么y就等于50.
以上是基礎篇,更有思維篇,編程篇,那么今天分享就到這里結束了,謝謝大家