《c語言程式設計(含實驗)》
課程教學大綱
課程編號:
英文譯名:c language programming
適用專業:電氣工程及自動化、電子資訊工程、通訊工程、自動化、教育技術。
開課教研室:自動化
學分數:5
學時數:85
先修課程: 計算機基礎
教材:譚浩強.《c程式語言》,清華大學出版社
參考書目:譚浩強. 《c程式語言題集》.清華大學出版社
k&r合著《the c programming language》
一、本課程的性質、目的和任務
課程性質: 《 c語言程式設計》是電氣資訊工程學院為電氣、電子、通訊、自動化、教育技術開設的一門專業基礎課。
課程目的:通過該課程的學習,不但要求學生掌握一門通用的程式語言,而且要求學生具備面向過程程式設計能力。是理工類學生必須具備的基本能力:
程式控制思想的培養和建立。(微機、微控制器原理中的彙編程式設計、vhdl、pcl、dsp)
課程任務: 通過本課程的學習,學生應掌握 c語言的基本語法,還應掌握程式設計的基本思路、基本概念和基本方法,並能運用所學的知識和技能在雙語環境中對一般問題進行分析和設計,編制c語言應用程式。
二、教學要求
教學要求分為知識要求和能力培養兩方面
1、知識要求:
1) c語言概述
了解c語言出現的歷史背景;了解c 語言的特點;理解簡單的c語言程式;掌握執行c程式的步驟與方法。
2) 演算法基礎
了解演算法的概念、特性;理解用流程圖表示演算法;理解3種基本結構和改進的流程圖;掌握用n\s流程圖表示演算法;了解結構化程式設計方法。
3) 資料型別、運算子與表示式
理解c語言中變數和常量的概念;掌握整型、實型(浮點型)、字元型常量的表示方法;掌握整型、實型(浮點型)、字元型變數的定義和使用方法;理解整型、實型(浮點型)、字元型資料在儲存器中存放方式;掌握變數賦初值的方法;理解各類數值型資料間的混合運算;理解c語言中的運算子、表示式、優先順序、結合;掌握算術運算子和算術表示式、賦值運算子和賦值表示式、逗號運算子和逗號表示式。
4) 順序程式設計
理解c語言的5種語句;了解資料輸入輸出的概念及在c語言中的實現;掌握字元資料的輸入輸出函式;掌握格式輸入與輸出函式;理解c程式的執行過程;掌握c程式單步執行的方法。
5) 選擇結構程式設計
理解關係運算子和關係表示式;理解邏輯運算子和邏輯表示式;掌握if語句的3種形式;掌握if語句的巢狀方法;理解條件運算子;掌握switch語句;掌握選擇結構程式設計方法。
6) 迴圈控制
理解迴圈結構的基本概念,迴圈體、迴圈條件;了解用goto語句以及用goto語句構成迴圈;掌握用while、do while、for語句實現迴圈;理解幾種迴圈的異同、掌握break語句和continue語句;掌握迴圈結構的程式設計的一般方法;掌握迴圈巢狀的設計方法。
7) 陣列
掌握一維、二維陣列的定義、一維陣列元素的引用、一維陣列的初始化、掌握字元陣列的定義、初始化、引用、輸入輸出;掌握常用字串處理函式;掌握一維、二維陣列的基本應用。
8) 函式
掌握函式定義的一般形式;理解函式引數和函式的值;理解函式的呼叫過程、函式呼叫的一般形式、函式呼叫的方式、對被呼叫函式的宣告和函式原型、函式的巢狀呼叫;了解函式的遞迴呼叫;理解陣列作為函式引數、陣列元素作函式實參;了解多維陣列名作函式引數;理解區域性變數和全域性變數;了解變數的儲存類別。
9)預處理命令
了解不帶引數的巨集定義、帶引數的巨集定義、「檔案包含」處理、條件編譯;
10)指標
理解位址和指標的概念、變數的指標和指向變數的指標變數;掌握定義乙個指標變數、指標變數的引用、指標變數作為函式引數的方法和應用;理解指向陣列元素的指標、用陣列名作函式引數;掌握通過指標引用陣列元素;了解多維陣列與指標、字串與指標、指向函式的指標、返回指標值的函式、指標陣列和指向指標的指標。
11)結構體與共用體
掌握定義結構體型別變數、結構體變數引用、初始化的方法;掌握結構體陣列;掌握指向結構體變數的指標;理解指向結構體陣列的指標、用結構體變數和指向結構體的指標作函式引數;了解用指標處理鍊錶;理解共用體的概念、共用體變數的定義和引用方式;了解列舉型別、用typedef定義型別。
12)位運算和檔案
掌握位運算子和位運算;理解位段操作;了解c檔案基本概念、檔案型別指標、檔案的開啟與關閉、檔案的讀寫、檔案的定位、出錯的檢測。
2、能力培養要求:
1)能夠使用c語言進行應用程式設計。
2)程式除錯的能力。
3)雙語能力
三、課程基本內容
本課程主要為理論教學環節,以學生課堂實驗為輔,分別為 51學時的理論課和34學時的實驗課,具體安排如下:
1.理論教學:
1)計算機基礎(該部分任課教師可以根據學生的實際情況進行增刪)
● windows 基本操作;
● 檔案系統基本操作;
● 數的表示。
2) c語言概述
● c語言出現的歷史背景
● c 語言的特點
● 簡單的c語言程式介紹
● 執行c程式的步驟與方法
3) 演算法
● 演算法的概念
● 簡單演算法舉例
● 演算法的特性
● 用流程圖表示演算法
● 3種基本結構和改進的流程圖
● 用n\s流程圖表示演算法
● 用偽**表示演算法
● 用計算機語言表示演算法
● 結構化程式設計方法
4) 資料型別、運算子與表示式
● c語言的資料型別
● 常量、符號常量、變數
● 整型常量的表示方法
● 整型變數
● 整型常量的型別
● 浮點型常量的表示方法
● 浮點型變數
● 浮點型常量的型別
● 字元常量
● 字元變數
● 字元資料在記憶體中的儲存形式及其使用方法
● 字串常量
● 變數賦初值
● 各類數值型資料間的混合運算
● c語言運算子、表示式簡介
● 算術運算子和算術表示式
● 賦值運算子和賦值表示式
● 逗號運算子和逗號表示式
5) 順序程式設計
● c語句概述
● 賦值語句
● 資料輸入輸出的概念及在c語言中的實現
● 字元資料的輸入輸出
putchar()函式
getchar()函式
● 格式輸入與輸出
printf()函式
scanf()函式
● 順序結構程式設計舉例
6) 選擇結構程式設計
● 關係運算子和關係表示式
● 邏輯運算子和邏輯表示式
● if語句的3種形式
● if語句的巢狀
● 條件運算子
● switch語句
● 選擇結構程式設計舉例
7) 迴圈控制
● 概述
● goto語句以及用goto語句構成迴圈
● 用while語句實現迴圈
● 用do…while語句實現迴圈
● 用for 語句實現迴圈
● 迴圈的巢狀
● 幾種迴圈的比較
● break語句和continue語句
● break語句
● continue語句
● 迴圈控制程式舉例
8) 陣列
● 一維陣列的定義和引用
● 一維陣列的初始化
● 一維陣列程式舉例
● 二維陣列的定義和引用
● 二維陣列的初始化
● 二維陣列程式舉例
● 字元陣列的定義
● 字元陣列的初始化
● 字元陣列的引用
● 字串和字串結束標誌
● 字元陣列的輸入輸出
● 字串處理函式
● 字元陣列應用舉例
9)函式
● 概述
● 函式定義的一般形式
● 函式引數和函式的值
● 形式引數和實際引數
● 函式的返回值
● 函式呼叫的一般形式
● 函式呼叫的方式和過程
● 對被呼叫函式的宣告和函式原型
● 函式的巢狀呼叫
● 函式的遞迴呼叫
● 陣列作為函式引數
● 陣列元素作函式實參
● 區域性變數和全域性變數
● 變數的儲存類別
10)預處理命令
● 不帶引數的巨集定義
● 帶引數的巨集定義
● 「檔案包含」處理
● 條件編譯
11)指標
● 位址和指標的概念
● 定義乙個指標變數
● 指標變數的引用
● 指標變數作為函式引數
● 指向陣列元素的指標
● 通過指標引用陣列元素
● 用陣列名作函式引數
● 字串的表示形式
● 多維陣列與指標(選講)
● 字元指標作函式引數(選講)
● 對使用字元指標變數和字元陣列的討論(選講)
● 指向函式的指標(選講)
● 返回指標值的函式(選講)
● 指標陣列和指向指標的指標(選講)
● 有關指標的資料型別和指標運算的小結
12)結構體與共用體
● 概述
● 定義結構體型別變數的方法
● 結構體變數的引用
● 結構體變數的初始化
● 結構體陣列
● 結構體陣列應用舉例
● 指向結構體變數的指標
● 指向結構體陣列的指標
● 用結構體變數和指向結構體的指標作函式引數
● 用指標處理鍊錶(選講)
● 共用體的概念
● 共用體變數的引用方式
● 列舉型別
● 用typedef定義型別
13)位運算和檔案
● 位運算子和位運算
● 位運算舉例
● 位段
● c檔案概述(選講)
● 檔案型別指標(選講)
● 檔案的開啟與關閉(選講)
● 檔案的讀寫(選講)
● 檔案的定位(選講)
● 出錯的檢測(選講)
2.課程實驗:
本課程實踐要求在計算機機房進行,要為每個學生提供一台計算機,並安裝有 turbo c 整合開發環境。
實驗內容如下:
實驗一 turbo c 整合開發環境基本操作
1、 程式設計的基本過程,原始檔的操作
2、 請參照本章例題,編寫乙個c程式,輸出以下資訊:
very good!
實驗二資料型別、運算子與表示式
1、設計程式
完成將「china」譯成密碼,密碼規律是:用原來的字母後面第4個字母代替原來的字母。例如,字母「a」後面第4個字母是「e」,用「e」代替「a」。
因此,「china」應譯為「glmre」。請編一程式,用賦初值的方法使c1、c2、c3、c4、c5五個變數的值分別為『c』、『h』、『i』、『n』、『a』,經過運算,使c1、c2、c3、c4、c5分別變為『g』、『l』、『m』、『r』、『e』,並輸出。
2、設計程式
求下面算術表示式的值。
(1) x+a%3*(int)(x+y)%2/4 設x=2.5,a=7,y=4.7
(2) (float)(a+b)/2+(int)x%(int)y
設a=2,b=3,x=3.5,y=2.5
實驗三順序程式設計
1、設計程式
若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=『a』,c2=『b』。想得到以下的輸出格式和結果,請寫出程式(包括定義變數型別和設計輸出)。
要求輸出的結果如下:
a= 3 b= 4 c= 5
x=1.200000,y=2.400000,z=-3.600000
x+y= 3.60 y+z=-1.20 z+x=-2.40
u= 51274 n= 128765
c1='a' or 97(ascii)
c2='b' or 98(ascii)
2、程式設計
設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入資料,輸出計算結果,輸出時要求有文字說明,取小數點後2位數字。
《C語言程式設計》課程教學大綱
課程中文名稱 c語言程式設計 課程英文名稱 the c language programming 課程類別 通識教育拓展課程 工程技術課程 一 課程的性質 任務 c語言程式設計 是機械工程學院各專業的一門選修課,是為了培養工科學生的計算機程式設計能力,使之具備在機械工程領域能夠利用程式語言編寫基本的...
《C程式語言》課程教學大綱
一 課程名稱 c 程式語言 二 學分 4 三 先修課程 c程式語言 或者其他任何一門結構化程式設計語言。四 課程的性質 目的和任務 c 程式語言 課程是網路教育考試 計算機應用專業 的一門必修專業基礎課程。這門課程的主要特點是實踐性強。本門課程的主要任務是介紹c 語言中的資料型別和運算 語句結構以及...
C語言程式設計教學大綱
c語言程式設計 課程教學大綱 54學時 理論課程 一課程說明 一 課程概況 課程中文名稱 c語言程式設計 課程英文名稱 the c programming language 課程編碼 3910252207 開課學院 理學院 適用專業 開課學期 物理學專業 5 學分 周學時 3.0 3 c語言程式設計...