c語言複習技巧,c語言 技巧

本文目錄一覽:

我考研專業課考C語言,就是老譚的那本 C程序設計 。請問怎麼複習最有效啊?

複習,其實最有效的方法就是兩個字:動手

無論是哪一種的複習與考試,或是學習其它知識,都不能只是簡單地用眼睛看,用大腦思考,其更重要的是動手去計算,動手去解答問題,而動手的概念主要有兩種:

其一、實際操作類。就是需要實物進行的操作,例如製作簡單的紙飛機、複雜的機械人,這都是需要實物來實際動手操作才能理會其內涵的知識,光靠看書看資料是不能根本解決問題的。

其二、模擬考核類。就是找一些試卷進行答題,然後再核對哪裡答錯了,答錯的題目要反覆多看幾遍,主要的是看看錯在哪裡,思考下為什麼會答錯。對於答對了的題目也要再看一遍,鞏固下記憶。之後再重新答題,如此反覆練習,則是最有效的複習方式。

對於C語言的複習,則可以利用C語言編程軟件來練習編程技巧,可根據書本上給出的題目進行編程,最終得到正確的答案。

初次得到答案也不要停止學習,要思考下利用其它方法來得到同樣的答案,因為C語言是一個很靈活的語言,對於任何一個問題的解決方法,都有幾個甚至幾十個不同的解決辦法。

C語言學習技巧

1、學習C語言,要從入門到精通,需要讀哪些書(從簡單的到難的排序,越詳細越好,最好都能注釋下選擇這本書的理由)?

入門階段:還是老譚那本。

理由:雖然不能說它寫得有多好,但是你現在要做的是入門,要快速的掌握c的基本語法,這本書很好理解,能夠讓你在最短的時間內大致掌握這門語言的概更。

第二階段:《c程序設計語言》(The C Programming Language)和《C語言解惑》(The C puzzle book)

理由:《the c programming language》號稱c語言聖經。其實它也只是一本介紹基礎語法的書,不做入門教程是因為對於初學者來說,它難度稍大,之所以推薦,是因為它能讓你—系統而嚴密的—把C語言知識構架整理一遍。《c語言解惑》,系統的整理了c語法中容易讓你產生迷惑或容易犯錯的地方(如a+++++b等),這時候你才算真正開始學習c語言了.(以上兩本現在出重印了,應該在書店可以買到)

第三階段:《C陷阱與缺陷》(C Traps and Pitfalls)和《高質量c/c++編程指南》

理由:《c陷阱與缺陷》是讓對c的理解有質變得一本書,如如何理解(*(void(*)())0)()等問題,我的感覺是看完這本書讓我真正從小菜鳥變成了老菜鳥。《高質量…》,終於有一本國產的了,呵呵,我認為這本書是把你從土匪變成正規軍的最好指南,該書涉及編程風格、效率、重載、健壯性等一些列之前很難注意的問題。(以上兩本《c陷阱…》已絕版,不過網上可以下載到中英文版,《高質量…》本身就是網絡書,很容易找到)

其它推薦書:《c專家編程》《c和指針》

C語言考試技巧

一.特點和注意事項 1、填空題

(1)上機填空題一般包含2個(或3個)空。 (2)要填空的位置用___、___、___表示。

(3)考生在考試時應刪除標識___、___、___後填入相應的符號。

特別要注意的是:只能在要填空的位置上進行修改,不要添行、刪除、合併或分解,不要改動程序行的順序,更不要自己另編程序。 2.改錯題

(1)上機改錯題中有2個(或3個)錯誤需要修改。

(2)試題中用「/******found******/」來提示在下一行(或下面第二行)有錯。 (3)錯誤的性質基本分為語法錯誤和邏輯錯誤,也有些試題要求把語句添加在下劃線處。

(4)特別要注意的是:只能在出錯的行上進行修 二.做題技巧

以下是對上機考試改錯題的做題方法和總結,改錯題的錯誤主要分為以下幾類:

一般情況,錯誤主要分為語法錯誤和邏輯錯誤。

先檢查語法錯誤,編譯程序後發現沒有錯誤及警告,說明沒有語法錯誤,只有邏輯錯誤;邏輯錯誤必須根據程序的功能及預期結果來考查。

因此,對於程序改錯題,應先編譯查找其中的語法錯誤,通過編譯器的提示容易找到錯誤的地方及原因,然後再尋找邏輯錯誤。修改了語法錯誤後再次編譯,直到修改完所有的語法錯誤。而查找邏輯錯誤時,需要運行程序根據結果來檢查。

1、if或while語句

若錯誤行是if或者while語句,則要注意以下點: 1)首先判斷是否正確書寫if或while關鍵字;

2)然後看有沒有用小括號把整個表達式括起來,若沒有則加上小括號; 3)若條件表達式中有指針變量而且沒有指針運算符時,則加上指針運算符; 4)若if條件表達式中只有一個等於號即數學等號(=),則要改寫成兩個等於號即邏輯等號(==);

若if條件表達式為其他的比較運算符,則一般是進行逆轉或加一個等於號; 2、for語句

若錯誤行是for語句,則要注意以下幾點: 1)首先判斷for有沒有書寫正確;

2)然後看for中的表達式是不是用分號(;)隔開,若不是則改為分號。 3、記住是分號(;),不是逗號(,)!

再者,分析for中的三個表達式,是否符合題意; 第一個表達式表示起始條件, 第二個表達式表示終止條件,

第三個表達式表示循環變量的變化。 4、return語句

若錯誤行為return語句,則要注意以下幾點: 1)首先看是不是正確書寫return關鍵字;

2)然後看是不是缺少分號,若是則加上分號即可;

3)再者判斷return後的變量或表達式是否正確;

這種錯誤需要根據題意來分析,分析返回變量或表達式的值和類型。 5、賦值語句

若錯誤行是賦值語句,則要看賦值是否正確,然後看賦值運算符是否寫正確。 6、定義語句

若錯誤行是定義語句,則要注意: 1)首先分析變量類型是否符合;

2)然後分析賦初值是否正確,求和初值賦0,求積初值賦1;

3)若以上均不是,則看是不是少定義了某個變量或少了花括號; 7、關鍵字拼寫錯誤。如:main-mian(錯誤) printf – pirntf (錯誤)

Return- return(錯誤) while- While (錯誤)

8、表達式錯誤問題

表達式錯誤占的份量最多,並且沒有統一的改法,我們只能通過題目要求來分析並修改),

1)若錯誤行中有整數1除以某個表達式或變量時,必須把整數1改為1.0;若變量或表達式是整型時,則只能進行強制類型轉換。

2)變量必須先賦值,後才參與運算,沒有賦值就不能參與運算;例如,long k;k*=num%10;

3)運算符書寫錯誤,例如,把/寫成\(num\=10);,==寫成=。 4)丟失括號() 9、字符串類問題

1)若錯誤行中有字符串結束符,則特別要要注意結束符有沒有寫錯(『\0』不要寫成”\0」)。

2)新組建的字符串一定要加結束標識符(『\0』); 3)要區分清楚字符『o』和數字『0』。

4)字符串複製、比較必須使用用字符串處理函數(strcpy或strcmp)實現,不能用賦值語句或關係運算符。 10、指針類問題

若錯誤行中有指針變量,並且該變量名之前沒有指針運算符,則般都是加上指針運算符;即注意p和*p的區別; 11、函數首部類問題:

若錯誤行是函數首部,則要注意:

1)首先看該行最後有沒有分號,若有則刪掉分號;若中間有分號則要改為逗號;

2)形參和實參類型不一致問題

① 若實參是個地址或數組名或指針變量名,則對應的形參肯定是指針或數組;

②若實參是二維數組名,則對應的形參應該是指針數組或是二維數組; ③若後面用到形參時有指針運算符,則該形參應為指針類型;

④若形參是二維數組或指向M 個元素的指針變量,則該二維的長度必須與main中對於數組的第二維的長度相同。 3)函數類型不一致問題

①若函數中沒有return語句,則函數類型為void;

②若函數中有ret urn語句,則函數的類型必須與rerun後的變量類型一致;

記住,調用函數的類型與main中的該函數的類型一致! 12、語法錯誤問題:

1)語句缺少分號。若錯誤號中語句沒有以分號結束則加上分號;

2)變量名不一致。C語言是區分大小寫的,若錯誤行中有大寫字母一般都改為小寫字母;

3)若錯誤行中有一條橫線,則必須將橫線刪除再填空。填空題中亦是如此。 13、邏輯錯誤問題:

這種題型主要是表達式錯誤,占的題量比較多而且沒有統一的做題方法,需要我們具體問題具體分析。對於邏輯錯誤,可按下列步驟查找:

①先讀試題,看清題目的功能要求。

②通讀程序,看懂程序中算法的實現方法。 ③細看程序,發現常見錯誤點。 14、書寫錯誤問題:

特別注意我們的注釋部分,注釋是以/*開始,以*/結尾,不能有多餘的,有也只能在/*和*/裏面。注意,比如「/***注釋部分*****/*/」是錯誤的!

二、編程時容易犯的錯誤

1.書寫標識符時,忽略了大小寫的區別

C語言認為大些字母和小寫字母時兩個不同的字符,如在編譯程序過程中,系統會把a和認為時兩個不同的變量名。習慣上,符號常量名用大寫表示,變量名用小寫表示,以增加程序的可能性。

2.忽略了變量的類型,進行了不合法的運算

3.忽略了「=」與「= =」的區別;C語言中,「=」是賦值運算符,「= =」是關係運算符

4.忘記加分號

考生應特別注意這種情況,分號是C語言中不可缺少的一部分,語句末尾必須有分號,但有時候千萬不能加;

5.輸入變量時忘記加地址運算符「」,而在不應加「」的位置加了地址運算符

(1)忘記加「」的情況。

如int a,b; scanf(「%d%d」,a,b);

此時,無法正確給a和b讀入數據。scanf函數的作用是:按照a、b在內存中所分配的地址將a、b的值存進去。「a」指a在內存中的地址,因此正確的書寫格式為scanf(「%d%d」,a,b);。

(2)多加「」的情況。如int str[ ]; scanf(「%s」,str);

C語言編譯程序對數組名的處理是:數組名代表數組的起始地址,scanf函數中的輸入項是字符數組名,因此不必再加地址符,應該去掉。

6.輸入數據的方式余要求格式(通配符)不符。例如:scanf(「%d,%d」,a,b);

C規定:如果在「格式控制」字符串中,除了格式說明以外還有其他字符,則在輸入數據時應輸入與這些字符相同的字符。下面輸入是合法的:3,4

此時不用逗號而用空格或其他字符是不對的,如:3 4(中間為空格)3:4(中間為冒號);

三、相關概念

(1)素數:定義是除了能被1和自身整除外,不存在其他任何能整除該數的自然數。因此,在判斷一個數是否為素數時,只要有除了1和本身能整除它,還有一個數能整除它,就判定此數不是素數。

(2)判斷一個年份是否為閏年:如果年份能被4 整除但是不能被100整除,或者能被400整除,這兩種情況滿足之一都是閏年。

(3)利用選擇法進行從小到大的排序。選擇法的思路為:把第一個元素與其後面的元素比較,如果比後面的大,則交換,比較完所有的元素後,第一個位置的元素是最小的元素;在把第二個元素與其後面的元素進行比較,結果是除了第一個元素外,第二個元素是最小的元素;以此類推。

(4)數的按位分離算法是:對10取模求個位上的數字,整除10後再對10取模求十位上的數字,整除100後再對10取模求百位上的數字。

(5)最大公約數的算法是:(1)若nm,則用n除以m求餘數r;(2)若r=0,則m為最大公約數,若r≠0,則將r賦值於m,m賦值於n,繼續用n除以m求餘數r;(3)直到r=0,m為最大公約數。根據算法判斷每一條語句是否正確。 (6)求最小公倍數的算法:等於兩個數的乘積除以它們的最大公約數。 (7)矩陣時以行為外循環,列為內循環,可以同時計算周邊元素的和。

計算機二級C語言考試重點以及複習技巧

1、語言的基本語法25分。主要有C語言的主要特點、各種數據類型、運算符與運算表達式、基本I/O結構應用、基本的程序控制結構、宏的基本定義、文件的基本應用等。

2、程序閱讀題30分。考核的主要內容為:選擇結構、循環結構的應用、數組的應用、指針特別是指針與字符數組的關係應用、函數應用(參數傳輸,全局變量,局部變量應用等)。3、程序設計15分。主要是應該熟悉程序控制結構,數組,函數的應用。

複習內容:

C語言的基本概念

C語言的主要特徵和程序結構。頭文件,函數的開始和結束標誌。源程序的書寫格式。數據類型和運算

基本數據類型和常量的表示法。各種變量的定義和初始化。

運算規則和表達式。

賦值表達式、算術表達式、關係表達式、邏輯表達式、條件表達式、逗號表達式。

運算符的優先級、類型的自動轉換和強制類型轉換,

C語言的基本語句

基本語句:表達式語名、空語句、複合語句。數據的輸入與輸出、輸入輸出函數的調用。選擇結構語句。if語句。switch語句。

選擇結構的嵌套。循環結構語句。for語句。while語句和do-while語句。continue語句和break語句。

構造類型和指針類型數據

數組、結構、聯合類型的說明和正確使用。

指針。

指針與指針變量的概念,指針與地址運算符。

變量、數組、字符串、函數、結構體的指針,以及指向變量、數組、字符串、函數、結構體的指針變量。通過指針引用以上各類型數據。指針數組,指向指針的指針。

存儲區動態分配和釋放。

函數

函數的基本結構和定義方法。

函數的調用和參數傳遞。

函數的嵌套調用、遞歸調用。

變量的作用域。

Main

()函數的命令行參數引用。

內部函數與外部函數。

庫函數的正確使用。

文件只要求緩衝文件系統(即高級磁盤I/O系統)。

文件的概念:文本文件和二進制文件。

文件類型指針。

文件的基本操作:文件的打開與關閉、文件的讀寫、文件指針的操作。

原創文章,作者:STQQ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/132619.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
STQQ的頭像STQQ
上一篇 2024-10-03 23:53
下一篇 2024-10-03 23:53

相關推薦

  • 使用vscode建立UML圖的實踐和技巧

    本文將重點介紹在使用vscode在軟件開發中如何建立UML圖,並且給出操作交互和技巧的指導。 一、概述 在軟件開發中,UML圖是必不可少的重要工具之一。它為軟件架構和各種設計模式的…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • 優秀周記1000字的撰寫思路與技巧

    優秀周記是每個編程開發工程師記錄自己工作生活的最佳方式之一。本篇文章將從周記的重要性、撰寫思路、撰寫技巧以及周記的示例代碼等角度進行闡述。 一、周記的重要性 作為一名編程開發工程師…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28

發表回復

登錄後才能評論