第一章 C语言概述 计算机公共教学部.

Slides:



Advertisements
Similar presentations
主讲:王幸民 理学院计算机基础教学部.
Advertisements

现代电子技术实验 ——综合实验之单片机部分
C语言程序设计 主讲教师 :张群燕 电话:
培养目标 1.建立基本的程序设计概念体系,掌握基础程序设计方法。
第4章 條件判斷與迴圈 Java 2 程式設計入門與應用.
编译原理上机实习
计算机硕士专业基础—C语言 赵海英
第三章 控制结构.
C语言程序设计 第八章 函数.
高级语言程序设计 主讲人:陈玉华.
C++程序设计 第二讲 清华大学软件学院.
第3章 C 語言的基本知識.
第七章 函数 目录 有参的加法函数的开发 函数定义的一般形式 函数参数和函数的值 函数的调用
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第三章 C++中的C 面向对象程序设计(C++).
2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。
程序设计基础.
C语言 程序设计基础与试验 刘新国、2012年秋.
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
本章中將會更詳細地考慮有關重複的概念,並且會 介紹for和do…while等兩種用來控制重複的敘述 式。 也將會介紹switch多重選擇敘述式。 我們會討論直接和迅速離開某種控制敘述式的 break敘述式,以及用來跳過重複敘述式本體剩餘 部份的continue敘述式。 本章會討論用來組合控制條件的邏輯運算子,最後.
C++语言程序设计 第二章 C++简单程序设计.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
谭浩强 编著 中国高等院校计算机基础教育课程体系规划教材 C++程序设计.
第三节 整数类型.
第三章 数据类型、运算符与表达式.
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
第三章 C# 基础知识.
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
C语言大学实用教程 第5章 函数与程序结构 西南财经大学经济信息工程学院 刘家芬
程式結構&語法.
第 二 章 数据类型、运算符与表达式.
C语言复习2----函数.
C语言程序设计.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
C语言程序示例: 1.输入10个数,按从小到大的顺序排序。 2.汉诺塔问题。.
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
C程序设计.
C 语言程序设计 程序的循环结构 电大崇信县工作站 梁海亮.
第2章 算法与C语言程序 程序 (1)数据的描述:数据的类型和组织形式(数据结构) (2)操作的描述:操作步骤(算法) 沃思指出:
Oop8 function函式.
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
第十四章 若干深入问题和C独有的特性 作业: 函数指针 函数作参数 函数副作用 运算 语句 位段 存储类别 编译预处理
C程序设计.
第一章 C语言概述 教师:周芸.
C语言程序设计 李祥 QQ:
C++语言程序设计教程 第2章 数据类型与表达式 第2章 数据类型与表达式 制作人:杨进才 沈显君.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
第二章 Java语法基础.
项目1 C程序设计起步 学习目标: 通过该项目你可以知道: C语言的用途。 C语言的基本符号和关键字。 C语言程序的结构及特点。
第二章 类型、对象、运算符和表达式.
目标 流程控制 字符串处理 C# 的类和对象 C# 访问修饰符 C# 构造函数和析构函数.
程序设计基础.
#include <iostream.h>
第二章 Java基本语法 讲师:复凡.
第五章 逻辑运算和判断选取控制 §5.1 关系运算符和关系表达式
第1章 数据结构基础概论 本章主要介绍以下内容 数据结构研究的主要内容 数据结构中涉及的基本概念 算法的概念、描述方法以及评价标准.
第1章程序设计和C语言.
第十二章 位运算.
单片机应用技术 (C语言版) 第4章 C51程序设计入门
第三章 高级函数特性.
PPT注意事项: 当前PPT课件文件必须和提供的源代码文件夹“代码”在同一目录中即不要移动文件夹“代码”的默认位置。
第2章 Java语言基础.
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
第二章 Java基础语法 北京传智播客教育
第2章 Arduino编程.
Presentation transcript:

第一章 C语言概述 计算机公共教学部

开始的话 我已经能熟练地操作计算机了,还学什么? 计算机能做什么? 如何把计算机做为求解问题的工具,为我服务终身?

计算机能做什么? 计算机可以做任何事情;只要能把实际问题抽象、制作为计算机可求解的程序。

C语言能做什么 C语言博大精深,目前所有的软件都可以由C语言实现 但是不是所有软件都用C语言编写,为什么?

教材、参考书与课时安排 教材 《C程序设计教程》(第三版) 安徽大学出版社 2009年

参考书 谭浩强《C程序设计题解与上机指导》(第三版)清华大学出版社 2005年 谭浩强《C程序设计试题汇编》清华大学出版社,2006年

本学期课时安排 授课 :48学时 上机: 24学时 上机地点:计算中心实验室 上实验课请带鞋套

本书的结构 “C程序设计”共分12章, 本课程只教授前11章,第12章C++基础为选学内容。

(1)C语言的基本内容 内容包括: 基本数据类型 表达式 程序控制结构(顺序、分支、循环) 数组与函数 在学习了这些内容之后, 学生应能编写、调试和运行一般规模和难度的应用程序(如数值计算类程序), 并对结构化程序设计方法有所了解, 为编写较大规模的应用程序打下基础。

(2)C语言的高级编程技术 内容包括: 指针应用 高级数据结构 编译预处理以及C语言的调试技术 文件 这一部分中, 强调对基本概念的理解和掌握, 以及在理解和掌握的基础上运用这些高级编程技术的方法,锻炼、培养较大规模、比较复杂的应用程序的编程能力。

C语言课程要求 所有作业、实验必须按时、独立完成 作业、实验必须经上机调试通过. 每天坚持编写程序50行 作业、实验必须上传到服务器(在规定时间内)

课程要求 课前请做好预习 保持课堂安静,头脑清醒,思维活跃 认真、独立、按时完成并提交作业 重视上机实践,有效利用宝贵的上机时间,上机后及时上交实验报告 有问题随时与任课老师联系 课程网站:http://211.70.51.112

第一章 C语言概述 C语言出现的历史背景 C语言的特点 简单的C语言程序介绍 运行C程序的步骤和方法

教学目标 介绍C语言程序的基本结构 介绍在计算机上输入、编译、调试和运行C程序的基本方法和步骤。

C语言出现的历史背景 程序设计语言的发展 程序设计是数据被加工的过程 机器语言 汇编语言 高级语言 面向过程 面向对象 冯.诺依曼结构: 计算机 运算器 控制器 存储器 主机: I/O设备:键盘、显示器等 中央处理器CPU 面向机器的语言 1946年,第一台电子计算机问世,应用领域迅速扩大,软硬件飞速发展,程序设计语言相继问世。 程序设计语言:将自然语言形式化为有格式的语言 1。机器语言: 计算机能够认识的语言 计算机的基础是数字电路 机器语言就是数字电路里的电信号 将在《计算机组成》课程中学习 都是二进制文件 一条机器语言成为一条指令 指令是不可分割的最小功能单元 定义:一种CPU的指令系统,由该CPU可识别的0、1序列构成的指令码组成。 特点: 执行效率高 不直观,不易查错,生产效率低。 2。汇编语言 定义:用助记符号描述的指令系统 生产效率高,质量好,执行效率较高; 要经汇编程序汇编成目标程序(机器语言)才能执行,依赖硬件。 (面向机器的语言----依CPU不同而异) 3。高级语言 编程效率高,不必考虑硬件; 执行效率低,要经编译、连接后才能执行。 面向过程的程序设计语言 认为解题过程是数据被加工的过程 程序=数据结构+算法 C语言是面向过程的高级语言 面向对象的程序设计语言 一种结构模拟方法。认为:现实世界由对象组成,对象是数据和方法的封装体;客观世界可以分类,每个对象是类的一个实例。 特点:比面向过程的语言更清晰、易懂,适宜编更大规模程序,是程序设计的主流 程序设计语言基本成分: 。数据成分 。运算成分 。控制成分 。传输成分 程序设计语言定义:用于书写计算机程序的语言。通常指实现高级语言。 语言的基础是一组记号与一组规则。 程序设计语言包括: 语法:记号的组合规则 语义:记号的特定意义 语用:程序与使用者的关系 CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减 客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系 用助记符号描述的指令系统 如 ADD A, B 程序设计关键是定义类,并由类派生对象 > >

C语言的诞生与发展 在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。 C语言是贝尔实验室于70年代初研制出来的,后来又被多次改进,并出现了多种版本。80年代初,美国国家标准化协会(ANSI),根据C语言问世以来各种版本对C语言的发展和扩充,制定了ANSI C标准(1989年再次做了修订)。 本书以ANSIC新标准来介绍。

C语言的特点 语言简洁、紧凑、灵活 运算符和数据类型丰富 程序设计结构化、模块化 生成目标代码质量高 编译预处理提高开发效率 可移植性好 中级语言 > > > > > > < >

32个关键字 由系统定义,不能重作其它定义 < sizeof auto extern static break float struct switch typedef unsigned union void volatile while auto break case char const continue default do double else enum extern float for goto If int long register return short signed <

9种控制语句 if( )~else~ for( )~ while( )~ do~while( ) continue break switch goto return <

例 C语言与Pascal语言比较 < C语言 Pascal语言 含义 { } BEGIN….END 复合语句 if(e) s; IF(e) THEN s 条件语句 int i ; VAR i:INTEGER 定义i为整型变量 int a[10]; VAR a:ARRAY[1..10] OF INTEGER 定义整型数组a int f(); FUNCTION f():INTEGER 定义f为返值整型的函数 int *p; VAR p:INTEGER 定义p为指向整型变量的指针 i+= 2; i=i+2 赋值i+2i i++,++i; i=i+1 i自增值 结论:C比 Pascal简练,源程序短。 <

34种运算符 < 算术运算符:+ - * / % ++ -- 关系运算符:< <= == > >= != 算术运算符:+ - * / % ++ -- 关系运算符:< <= == > >= != 逻辑运算符:! && || 位运算符: << >> ~ | ^ & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数: sizeof 强制类型转换:(类型) 分量运算符:. -> 下标运算符:[] 其它: ( ) - <

C 数 据 类 型 基本类型 构造类型 指针类型 空类型void 定义类型typedef 数值类型 字符类型char 枚举类型enum 整 型 浮点型 单精度型float 双精度型double 短整型short 长整型long 整型int 数组 结构体struct 共用体union <

简单的C语言程序介绍 例1.1 第一个程序 Hello,World! /* example1.1 The first C Program*/ #include <stdio.h> main() { printf(“Hello,World!”); } 注释 编译预处理 函数 语句 输出: Hello,World! >

函数 注释 语句 运行结果: sum=24 > /* example1.2 get the max of a and b*/ #include <stdio.h> /* This is the main program */ main() { int a,b,c; a=10; b=24; c=max(a,b); printf(”max= %d\n",c); } int max(int x,int y) { int z; if(x>y) z=x; else z=y; return(z); 函数 注释 语句 运行结果: sum=24 >

main( ) { ………………. ……………… ………….. ……… ………. …………… ……………. ………………. ……………….. 格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式 main( ) { ………………. ……………… ………….. ……… ………. …………… ……………. ………………. ……………….. } main( ) { int i , j , sum; sum=0; for(i=1; i<10;i++) for(j=1;j<10;j++) sum+=i*j ; } printf(“%d\n”,sum); 优秀程序员的素质之一 使用TAB缩进 {}对齐 有足够的注释 有合适的空行 < >

结构特点 函数与主函数 程序语句 注释 非法 例: /*This is the main /* of example1.1*/ */ 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码 非法 例: /*This is the main /* of example1.1*/ */

1.4 运行C程序的步骤和方法 C程序开发步骤 编辑 链接 编译 执行 < > 程序代码的录入, 生成源程序*.c 始 编 辑 译 连 接 执 行 有错? 结果正确? 结 束 有 源程序 file .c 目标程 序 file.obj 库函数和 其它目标 程序 可执行 无 正确 不正确 语法分析查错,翻译 生成目标程序*.obj 与其它目标程序或库 链接装配,生成可执行 程序*.exe file.exe < >

VC环境使用 1、VC安装 2、VC环境进入 3、VC工程建立 4、VC编译、链接、运行

结束语 “纸上谈兵”学不出程序设计本领;只有大量上机、编程、调试,才能掌握。 学好程序设计语言的唯一途径是上机。 你的编程能力和你在机器上投入的时间成正比。