C语言程序设计基础 刘新国.

Slides:



Advertisements
Similar presentations
数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
Advertisements

杨玉蓓 主讲 武汉工程大学邮电与信息工程学院
请将手机调整到静音状态 实验网站:program3.ccshu.net 资源网站:class.ccshu.org/ /
Oracle数据库 Oracle 子程序.
C语言实验 第一课 标题:学号+姓名.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
计算机基础知识 丁家营镇九年制学校 徐中先.
第三章 C语言基础 学习目标: 熟练掌握:C语言的基本数据类型、运算符及表达式 掌握:常见的输入、输出函数使用方法;
第1章 程序设计和C语言 1.1 什么是计算机程序 1.2 什么是计算机语言 1.3 C语言的发展及其特点 1.4 最简单的C语言程序
高级语言程序设计 主讲人:陈玉华.
第7章:文件共享 与远程控制——回顾 第8章:bash脚本编程 本章教学目标: 了解shell程序的基本结构 网络文件系统NFS的概念
If … else 選擇結構 P27.
管理信息结构SMI.
走进编程 程序的顺序结构(二).
程序设计基础.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
C语言 程序设计基础与试验 刘新国、2012年秋.
Chap 3 分支结构 3.1 统计输入的一批字符中各类字符的数量 3.2 查询自动售货机中商品的价格 3.3 分支结构程序设计.
第五讲 四则运算计算器(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
C语言程序设计基础 刘新国.
第二章 Java语言基础.
动态规划(Dynamic Programming)
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
Chap 2 用C语言编写程序 2.1 在屏幕上显示 Hello World! 2.2 求华氏温度 100°F 对应的摄氏温度
第一章 函数与极限.
第4章 PHP流程控制语句.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
C语言程序设计 主讲教师:陆幼利.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
程序设计基础A(C语言) 主讲教师: 许 康 教师主页:
第1章 c++概述 1.1 C++语言的简史及特点 1.2 简单的C++程序 1.3 C++语言的基本组成
程序设计基础(C程序设计) 主讲:吴华洋 Mobile: Office:
C语言程序示例: 1.输入10个数,按从小到大的顺序排序。 2.汉诺塔问题。.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
Chap 5 函数 5.1 计算圆柱体积 5.2 使用函数编写程序 5.3 变量与函数.
目录 1.1程序设计语言 1.2程序结构及其特点 1.3Visual C++6.0的安装及使用 1.
《计算机应用基础》 第9章 程序设计基础(二).
第4章 Excel电子表格制作软件 4.4 函数(一).
第九节 赋值运算符和赋值表达式.
3.16 枚举算法及其程序实现 ——数组的作用.
第二章 类型、对象、运算符和表达式.
本节内容 结构体 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
ASP.NET实用教程 清华大学出版社 第4章 C#编程语言 教学目标 教学重点 教学过程 2019年5月5日.
第二章 Java基本语法 讲师:复凡.
初三VB 复习一.
本节内容 指针类型.
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
本节内容 结构体.
程序设计基础A(C语言) 第一章 C语言概述 主讲教师: 许 康
Chap 6 数据类型和表达式 6.1 数据的存储和基本数据类型 6.2 常量和变量 6.3 数据的输入和输出 6.4 类型转换
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
基本知识 数据类型、变量、常量、运算符.
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
鸡兔同笼(续) ——选择结构.
任课教师:戴开宇 TA:时均帅、谭肖、王安华 程序设计B班 :20-16:50(90分钟)
顺序结构程序设计 ——关于“字符串”和数值.
C语言程序设计 第2章 数据类型.
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
编译原理实践 6.程序设计语言PL/0.
第二次课后作业答案 函数式编程和逻辑式编程
2 Java语言基础 (数据运算与流程控制).
欢迎进入程序世界 C语言程序设计 数学与信息学院 软件学院.
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
Presentation transcript:

C语言程序设计基础 刘新国

第一章 引 言 一个C语言程序 程序与程序设计语言 C语言的发展历史与特点 实现问题求解的过程

1.1 一个C语言程序 课本第2页【例1-1】 #include <stdio.h> /* 编译预处理命令 */ int main(void) /* 主函数 */ { /* 函数体开始*/ int n; /* 定义变量*/ int factorial(int n); /* 声明函数*/   scanf("%d", &n); /* 输入一个整数 */ printf("%d\n", factorial(n)); /* 计算,并输出*/ return 0; /* 返回语句 */ } /* 函数体结束*/

1.1 一个C语言程序 /* 计算 n! 的函数 */ int factorial( int n ) /* 函数头 */ { /* 函数体开始*/ int i; /* 定义变量 i */ int fact = 1; /* 定义变量 fact */   for(i = 1; i <= n; i++) /* 循环 */ fact = fact * i; /* 乘法 */ return fact; /* 返回结果 */ } /* 函数体结束*/

程序构成 有一些函数 有一些变量 流程控制 main, scanf, printf, factorial 从主函数main开始执行,依次执行 可以输入、输出过程 有一些变量 i, fact 流程控制 for

1.2 程序与程序设计语言 程序:一系列加工步骤 程序设计语言 由计算机可以识别的代码编排而成 指示计算机对数据进行处理 解决实际问题 提供了一种表达数据与处理数据的功能 要求程序员按照语言的规范编程

程序与指令 可执行程序 指令 指令系统 一系列计算机指令的有序组合 执行一个最基本的功能 计算机所能实现的指令集合 算术运算:加减乘除,比较大小等等 输入输出,控制指令等等 指令系统 计算机所能实现的指令集合 不同的计算机有不同指令系统

利用指令编写程序 繁琐、效率低下 可读性差、不宜维护 指令系统相关、难以移植 需要 -- 高级程序设计语言

程序设计语言的功能 数据表达:表达所要处理的数据 流程控制:表达数据处理的流程 其他的辅助功能: 优化代码、重用代码,等等

数据表达 数据表达:一般将数据抽象为若干类型 数据类型:对某些具有共同特点的数据集合的称呼 数据本身的定义 数据可进行的操作和运算 例如:整数类型 定义:{…,-2,-1,0,1,2,…} 运算:+ 、 - 、 * 、 /、%等

数据表达 C语言提供的数据类型 各种数据类型的常量与变量形式 基本数据类型:整型、浮点型、字符型等。 构造类型:用户定义的,如数组、结构等等。 各种数据类型的常量与变量形式 常量(常数)与变量

C语言基本的数据类型 int(整型)、float(浮点型)、double(双精度)、char(字符型) 变量 int k; 定义了一个整数变量k float x; 定义了一个浮点数变量x double y; 定义了一个双精度浮点数变量y char c; 定义了一个字符型变量c 常量 'c' 表示一个字符c 100 表示整数100 12.56 表示一个实数12.56

流程控制 结构化程序设计方法 将复杂程序划分为若干个相互独立的模块 模块:若干语句构成的一段程序或一个函数(子程序)等 单入口、单出口

流程控制 3种基本流程控制结构 顺序结构、分支结构、循环结构 顺序结构 分支结构 循环结构

程序设计语言的语法 程序必须符合语言的语法规则 程序代码由一系列“单词”,按照语法规则组合而成 不同的程序设计语言具有不同的语法 C语言的语法要素 单词:标识符、常量、运算符、分隔符 语法单位:表达式、变量定义、语句、函数定义、函数调用、(输入输出)

C语言的单词 标识符:由字母、数字以及下划线组成,且第一个字符必须是字母或下划线 自定义标识符:程序中定义的变量名、数据类型名、函数名以及符号常量名 常量:常量是有数据类型的,如,整数常量123,浮点数常量12.34 运算符:代表对各种数据类型实际数据对象的运算。如,+(加)、-(减)、*(乘)、/(除)、%(求余)、>(大于)、<(小于)等等

C语言的语法单位 表达式: 运算符与运算对象组合就形成了表达式。如:2 + 3 * 4 表达式: 运算符与运算对象组合就形成了表达式。如:2 + 3 * 4 变量定义: 变量也有数据类型,所以在定义变量时要说明相应变量的类型。如: int i; 语句: 语句是程序最基本的执行单位,程序功能通过执行一系列语句实现。

C语言的语句 表达式语句:表达式加分号“;” 分支语句:实现分支控制过程 if (a > b) x = a; else x = b; 循环语句:实现循环控制的过程 while (i <= 100) { sum = sum + i; i = i + 1; } 复合语句:用一对“{” 和“}”,将若干语句顺序组合在一起就形成了一个复合语句。

C语言的语法单位 函数定义: 完成特定任务的独立模块 函数调用 m = max(k, 3); int max( int a, int b ) { int x; if( a>b) x = a; else x = b; return x; }

程序的编译与编程环境 编译 编程环境 程序  编译器  可执行代码 可执行代码:计算机能直接理解的指令序列 编译器:对源程序进行词法分析、语法分析、生成可执行的代码、返回编译结果和错误信息 编程环境 编辑(Edit) 编译(Compile) 调试(Debug)

C语言的特点 一种结构化语言 语句简洁、紧凑,使用方便、灵活 易于移植:不包含与硬件有关的因素 有强大的处理能力 目标代码运行效率高 数据类型检查不严格 区分大小写

1.4 编写程序求解问题示例 求1~100之间所有偶数的和 问题分析: 求和 范围 从1到100之间 偶数

1.4 编写程序求解问题示例 算法设计 求1~100之间所有偶数的和 设置一个变量(sum)存储结果 1.4 编写程序求解问题示例 求1~100之间所有偶数的和 算法设计 设置一个变量(sum)存储结果 设置一个变量x,x从1开始直到100:如果它是偶数,那么把它累加到sum中 用循环语句实现x从1开始直到100 用if分支语句判断x是否为偶数 被2整除的数为偶数

问题分析与算法设计 算法的描述: 自然语言 伪代码 流程图 算法的图形表示法

sum = 0 x = 1 x <= 100 sum = sum + x X = x+1 输出sum 真 假

编辑源程序 #include <stdio.h> int main(void) { int sum = 0, x=1; while ( x<=100 ) if ( x % 2 == 0 ) sum = sum + x; x = x + 1; } printf("%d", sum); return 0;

编译和调试程序 编辑程序后,用相应的编译器对程序进行编译,生成二进制代码表示的目标程序(.obj),与编程环境提供的库函数进行连接形成可执行的程序(.exe)。 编译程序指出语法错误 调试程序找出逻辑错误

调试程序 如果程序运行所产生的结果不是你想要的结果,这是程序的逻辑错误(语义错误 ) 调试:运行程序,查找并修改错误的过程 调试的方法 设置断点 跟踪执行 调试需要耐心和经验,是程序设计中最基本和最重要的技能。

C语言程序的调试、运行步骤 开始 结果 语法 错误 源程序 .c / .cpp 目标程序 .obj 可执行程序 .exe 编辑 编译 连接

本章要点 什么是程序?程序设计语言包含哪些功能? 程序设计语言在语法上包含哪些内容? 结构化程序设计有哪些基本的控制结构? C语言有哪些特点? C语言程序的基本框架如何? 形成一个可运行的C语言程序主要步骤? 如何用流程图描述简单的算法?