C語言數字3轉變字符 3 程序,大學c語言知識點總結

大學c語言知識點總結

C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。一起來看看大學c語言知識點總結吧!

9d897128941df9b47f0c6adf6e0ea9ae.png

大學c語言知識點總結

1、編譯預處理不是C語言的一部分,不再運行時間。C語言編譯的程序稱為源程序,它以ASCII數值存放在文本文件中。

2、每個C語言程序中main函數是有且只有一個。

3、在函數中不可以再定義函數。

4、算法的是一定要有輸出的,他可以沒有輸入。

5、break可用于循環結構和switch語句。

6、逗號運算符的級別最低。

第一章

1)合法的用戶標識符考查:

合法的要求是由字母,數字,下劃線組成。有其它元素就錯了。

并且第一個必須為字母或則是下劃線。第一個為數字就錯了。

關鍵字不可以作為用戶標識符號。main define scanf printf 都不是關鍵字。迷惑你的地方If是可以做為用戶標識符。因為If中的第一個字母大寫了,所以不是關鍵字。

2)實型數據的合法形式:

2.333e-1 就是合法的,且數據是2.333×10-1。

考試口訣:e前e后必有數,e后必為整數。.

3)字符數據的合法形式::

'1' 是字符占一個字節,"1"是字符串占兩個字節(含有一個結束符號)。

'0' 的ASCII數值表示為48,'a' 的ASCII數值是97,'A'的ASCII數值是65。

4) 整型一般是兩個字節, 字符型是一個字節,雙精度一般是4個字節:

考試時候一般會說,在16位編譯系統,或者是32位系統。碰到這種情況,不要去管,一樣做題。掌握整型一般是兩個字節, 字符型是一個字節,雙精度一般是4個字節就可以了。

5)轉義字符的考查:

在程序中 int a = 0x6d,是把一個十六進制的數給變量a 注意這里的0x必須存在。

在程序中 int a = 06d, 是一個八進制的形式。

在轉義字符中,’x6d’ 才是合法的,0不能寫,并且x是小寫。

‘141’ 是合法的, 0是不能寫的。

‘108’是非法的,因為不可以出現8。

6)算術運算符號的優先級別:

同級別的有的是從左到右,有的是從右到左。

7)強制類型轉換:

一定是 (int)a 不是 int(a),注意類型上一定有括號的。

注意(int)(a+b)和(int)a+b 的區別。 前是把a+b轉型,后是把a轉型再加b。

8)表達式的考查:

是表達式就一定有數值。

賦值表達式:表達式數值是最左邊的數值,a=b=5;該表達式為5,常量不可以賦值。

自加、自減表達式:假設a=5,++a(是為6), a++(為5);

運行的機理:++a 是先把變量的數值加上1,然后把得到的數值放到變量a中,然后再用這

個++a表達式的數值為6,而a++是先用該表達式的數值為5,然后再把a的數值加上1為6,

再放到變量a中。 進行了++a和a++后在下面的程序中再用到a的話都是變量a中的6了。

考試口訣:++在前先加后用,++在后先用后加。

逗號表達式:優先級別最低 ;表達式的數值逗號最右邊的那個表達式的數值。

(2,3,4)的表達式的數值就是4。

9)位運算的考查:

會有一到二題考試題目。

總的處理方法:幾乎所有的位運算的題目都要按這個流程來處理(先把十進制變成二進制再變成十進制)。

例1: char a = 6, b;

b = a<<2; 這種題目的計算是先要把a的.十進制6化成二進制,再做位運算。

例2: 一定要記住,

例3: 在沒有舍去數據的時候,<>右移一位表示除以2。

10)018的數值是非法的,八進制是沒有8的,逢8進1。

11)%符號兩邊要求是整數。不是整數就錯了。

12) 三種取整丟小數的情況:

1、int a =1.6;

2、(int)a

第二章

1)printf函數的格式考查:

%d對應整型;%c對應字符;%f對應單精度等等。寬度的,左對齊等修飾。

%ld對應 long int;%lf 對應double。

2)scanf函數的格式考察:

注意該函數的第二個部分是&a 這樣的地址,不是a;

Scanf(“%d%d%*d%d”,&a,&b,&c); 跳過輸入的第三個數據。

3)putchar ,getchar 函數的考查:

char a = get) 是沒有參數的,從鍵盤得到你輸入的一個字符給變量a。

put‘y’)把字符y輸出到屏幕中。

4)如何實現兩個變量x ,y中數值的互換(要求背下來)

不可以把 x=y ,y=x; 要用中間變量 t=x;x=y;y=t。

5)如何實現保留三位小數,第四位四舍五入的程序,(要求背下來)

這個有推廣的意義,注意 x = (int)x 這樣是把小數部分去掉。

第三章

特別要注意:c語言中是用非0表示邏輯真的,用0表示邏輯假的。

1)關系表達式:

表達式的數值只能為1(表示為真),或0(表示假)

當關系的表達是為真的時候得到1。如 9>8這個是真的,所以表達式的數值就是1;

2)邏輯表達式:

只能為1(表示為真),或0(表示假)

a) 共有&& || ! 三種邏輯運算符號。

b) !>&&>|| 優先的級別。

c) 注意短路現象。考試比較喜歡考到。

d) 要表示 x 是比0大,比10小的方法。0

3)if 語句

else 是與最接近的if且沒有else的相組合的。

4)條件表達式:

表達式1 ?表達式2 :表達式3

注意是當非0時候是表達式2的數值,當為0是就是表達式2的數值。

考試口訣:真前假后。

5)switch語句:

a)一定要注意 有break 和沒有break的差別,書上(34頁)的兩個例子,沒有break時候,只要有一個case匹配了,剩下的都要執行,有break則是直接跳出了swiche語句。

b)switch只可以和break一起用,不可以和continue用。

第四章

1)三種循環結構:

a)for() ; while(); do- while()三種。

b)for循環當中必須是兩個分號,千萬不要忘記。

c)寫程序的時候一定要注意,循環一定要有結束的條件,否則成了死循環。

d) do-while()循環的最后一個while();的分號一定不能夠丟。(當心上機改錯)

2) break 和 continue的差別

記憶方法:

break:是打破的意思,(破了整個循環)所以看見break就退出真個一層循環。

continue:是繼續的意思,(繼續循環運算),但是要結束本次循環,就是循環體內剩下的語句不再執行,跳到循環開始,然后判斷循環條件,進行新一輪的循環。

3)嵌套循環

就是有循環里面還有循環,這種比較復雜,要一層一層一步一步耐心的計算,一般記住兩層是處理二維數組的。

4) while((c=get))!=’

’) 和 while(c=get) !=’

’)的差別

先看a = 3 != 2 和 (a=3)!=2 的區別:

(!=號的級別高于=號 所以第一個先計算 3!=2) 第一個a的數值是得到的1;第二個a的數值是3。

【大學c語言知識點總結】相關文章:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/372050.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/372050.shtml
英文地址,請注明出處:http://en.pswp.cn/news/372050.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

接觸Jenkins(Hudson)API,第1部分

哪一個-哈德森還是詹金斯&#xff1f; 都。 幾個月前&#xff0c;我開始使用Hudson v1.395來從事這個小項目&#xff0c;在出現巨大分歧之后又回到了這個項目。 我以此為契機&#xff0c;看我將來選擇永久搬到詹金斯時是否會遇到任何重大問題。 有很多麻煩-最值得注意的是&…

使用javascript模擬常見數據結構(四)

七、樹 樹是一種非線性的分層的數據結構&#xff0c;在現實生活中比較常見的例子比如家譜和公司的組織架構圖&#xff0c;如下所示&#xff1a; 一個樹結構存在著一系列的父子結構&#xff0c;并且有著一個根節點&#xff0c;這種結構本質上表明了一對多的關系。 那&#xff0c…

C語言中實際參數太多,c – 宏的實際參數太多了?

碼&#xff1a;#include using namespace std;#define ADD(x,y) ((x)(y))int main( int argc, char** argv ){cout << ADD(1,2,) << endl;return 0;}編譯器輸出&#xff1a;1>Compiling…1>main.cpp1>c:\warn_test\main.cpp(9) : warning C4002: too many…

Web開發框架–第2部分:Play Framework 2.0

作為 評估系列 的第一個候選人&#xff0c; 我們回顧了 Play Framework v2.0 。 可以從Play 文檔站點獲得本文所使用的教程和參考文檔。 本文的第一部分將介紹我們建議對每個框架執行的一組任務&#xff0c;然后繼續評估每個標準項。 在開發工作站中安裝框架 非常簡單&#…

最全Pycharm教程(10)——Pycharm調試器總篇

最全Pycharm教程&#xff08;1&#xff09;——定制外觀 最全Pycharm教程&#xff08;2&#xff09;——代碼風格 最全Pycharm教程&#xff08;3&#xff09;——代碼的調試、執行 最全Pycharm教程&#xff08;4&#xff09;——有關Python解釋器的相關配置 最全Pycharm教程&am…

Looper.prepare()和Looper.loop()

什么時候需要 Looper Looper用于封裝了android線程中的消息循環&#xff0c;默認情況下一個線程是不存在消息循環&#xff08;message loop&#xff09;的&#xff0c;需要調用Looper.prepare()來給線程創建一個消息循環&#xff0c;調用Looper.loop()來使消息循環起作用&#…

超速問題的c語言編程,超速行駛問題--精選.doc

超速行駛問題摘要本文主要研究的是探討驅車從始發地至目的地的最短時間路徑問題和最少花費問題&#xff0c;以及在超速情況下的最短時間和最少花費問題。首先&#xff0c;從整個題目的兩個問題入手&#xff0c;發現兩個問題都是優化問題&#xff0c;具有一定的聯系。然后針對第…

重新查看Play Framework發布的值

與Play Framework 2.0一起使用發布的值而不定義表單映射&#xff0c;可能不像Play 1.x那樣明顯&#xff0c;這就是為什么我要編寫此快速備忘單。 對于此快速示例&#xff0c;讓我們定義以下視圖&#xff1a; app / views / index.scala.html (message: String)message: messa…

matlab 微積分

符號變量&#xff0c;symbolic variable 1. 高階導數 高階導數的計算&#xff0c;當然可以用手工的方式&#xff0c;但顯然這種機械重復的推導&#xff0c;更適用于計算機的計算方式&#xff1a; f(x)sinxx24x3?d4fdx4>> syms x; >> f sin(x) / (x^24*x3); >&…

如何查看Ubuntu版本,以及Linux內核版本??

查看Ubuntu版本&#xff1a; 方法一&#xff1a; cat /etc/issue 方法二&#xff1a; sudo lsb_release -a 查看內核版本&#xff1a; uname -r 轉載于:https://www.cnblogs.com/tanrong/p/6937749.html

c語言編碼風格,講嵌入式C語言編碼風格.ppt

講嵌入式C語言編碼風格目 錄 簡介及說明 語言規則 1.基礎 2.數據 3.說明與表達式 4.函數 5.內存及資源 6.源文件 風格指導 7.程序書寫 8.命名 9.文檔 簡介及說明 正確性 易維護性 易移植性 代碼的高效性 語言規則——基礎 編寫清晰表達設計思路和意圖的代碼 針對易讀來優化代碼…

使用Gradle引導舊式Ant構建

Gradle提供了幾種不同的方式來利用您現有的對Ant的投資&#xff0c;包括積累的知識和您已經放入構建文件中的時間。 這可以極大地方便將Ant生成的項目移植到Gradle的過程&#xff0c;并為您提供逐步進行此操作的路徑。 Gradle文檔在描述如何在Gradle構建腳本中使用Ant方面做得很…

實現chrome擴展啟動本地進程 - 補充

實現chrome擴展啟動本地進程 - 補充 標簽&#xff1a; chrome擴展啟動本地程序訪問本地磁盤2014-10-17 11:42 6753人閱讀 評論(17) 收藏 舉報分類&#xff1a;Chrome Plugin版權聲明&#xff1a;本文為博主原創文章&#xff0c;未經博主允許不得轉載。 示例 主要包含如下部分 c…

SpringMVC整合MongoDB

首先&#xff0c;在pom文件中新增spring-data-mongodb的依賴&#xff1a; <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>1.8.1.RELEASE</version>&l…

單路電壓表c語言編程,用AT89C51單片機制作的數字電壓表

此數字電壓表&#xff0c;利用A/D轉換原理將被測模擬量轉換成數字量&#xff0c;并通過控制系統用數字方式顯示測量結果。本設計采用AT89C51單片機&#xff0c;ADC0809進行模/數轉換&#xff0c;能夠測量8路0&#xff5e;5V的輸入電壓值&#xff0c;可用四位LED數碼管輪流或單路…

ZK的實際應用:MVVM –加載和渲染數據

先前的文章簡要介紹了RIA框架ZK&#xff0c;以及它CSS Selector啟發式控制器機制如何通過使在控制器類中引用UI組件的任務變得相對靈活來減輕UI更改所帶來的一些負擔。 然后&#xff0c;我們在上一篇文章中探討了ZK中的MVVM模式如何允許單個ViewModel提供不同的視圖。 這篇文章…

搭建一個簡單的mybatis框架

一、Mybatis介紹 MyBatis是一個支持普通SQL查詢&#xff0c;存儲過程和高級映射的優秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數的手工設置以及對結果集的檢索封裝。MyBatis可以使用簡單的XML或注解用于配置和原始映射&#xff0c;將接口和Java的POJO&#xff08;Pla…

定時操作范例

1 package timetask.demo;2 3 import java.text.SimpleDateFormat;4 import java.util.Date;5 import java.util.Timer;6 import java.util.TimerTask;7 8 /*9 * time類 是一個線程實施&#xff0c;可以用來實現在某一個時間或者某一個時間段后安排某一個任務執行一次或者定期…

c語言空格符 r t,c語言中、\t \r \n 和空格什么意思

具體意思&#xff1a;都是轉義字符&#xff0c;空格就是單純的空格&#xff0c;輸入時可以輸入空格\t 跳格 \r 回車 \n 換行\\ 反斜杠 \a 警告 \b 退格 \f 換頁 \v 垂直跳格 \ddd ddd 是 1、2 或 3 位八進制數字。轉義字符串(Escap…

如何在運行時更改日志記錄級別

在運行時中更改日志記錄級別很重要&#xff0c;這主要在生產環境中非常重要&#xff0c;在生產環境中&#xff0c;您可能希望在有限的時間內進行調試日志記錄。 好了&#xff0c;更改根記錄器非常簡單–假設您有一個具有所需記錄級別的輸入參數&#xff0c;只需獲取根記錄器并…