




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第2讲 C语言要素概述程序语言的功能程序语言的语法学习路线图2准备知识准备知识1.程序语言的功能2.程序语言的语法1.程序设计语言的功能数据表达-数据类型n数据类型:对某些具有共同特点的数据集合的总称代表的数据(数据类型的定义域)编码表示(如何存储在内存空间中)在这些数据上做些什么(即操作或称运算)n示例:整数类型包含的数据:,-2,-1,0,1,2, 二进制存储,2或4个字节存储作用在整数上的运算:+ 、 - 、 * 、 /等数据表达-C语言提供的数据类型基本数据类型:程序设计语言事先定义好,供程序员直接使用。n整型、实型(浮点型)、字符型等。构造类型:由程序员构造。n数组、结构、文件、指
2、针等。n各种数据类型的常量与变量形式常量(常数)变量 流程控制 n结构化程序设计方法将复杂程序划分为若干个相互独立的模块模块:一条语句(Statement)、一段程序或一个函数(子程序)等单入口、单出口流程控制三种基本结构n顺序结构语句之间为顺序执行关系的结构 n选择结构根据条件作判断,再决定执行哪一种操作的结构 n循环结构从某处开始按照一定条件反复执行某一处理过程,可细分为两类:当型和直到型循环结构 9顺序结构顺序结构选择结构选择结构三种基本结构的图示循环结构循环结构2. 程序设计语言的语法n用程序设计语言所写的程序必须符合相应语言的语法 源程序(源代码)是一个字符序列,这些字符序列按顺序组
3、成了一系列“单词”,“单词”的组合就形成了语言有意义的语法单位,一些简单语法单位的组合又形成了更复杂的语法单位,最后一系列语法单位组合成程序。程序设计语言的语法n C语言的主要“单词”(1)标识符: C语言的标识符规定由字母、数字以及下划线组成,且第一个字符必须是字母或下划线。(2)保留字(关键字): 它们是C语言规定的、赋予它们以特定含义、有专门用途的标识符。(3)自定义标识符: 包括在程序中定义的变量名、数据类型名、函数名以及符号常量名。有意义的英文单词(4)常量: 常量是有数据类型的,如,123、12.34(5)运算符。代表对各种数据类型实际数据对象的运算。如,+(加)、-(减)、*(乘
4、)、/(除)、%(求余)、(大于)程序设计语言的语法n C语言的主要语法单位(1)表达式: 运算符与运算对象组合就形成了表达试。如,2 + 3 * 4(2)变量: 变量也有数据类型,所以在定义变量时要说明相应变量的类型。如: int i;(3)语句: 语句是程序最基本的执行单位,程序的功能就是通过对一系列语句的执行来实现(4)函数定义与调用 (5)输入输出:C语言没有输入输出语句,用库函数printf、scanf等实现。程序设计语言的语法其中,(3)语句:表达式语句:表达式加分号“;” 分支语句:实现分支控制过程 if (a b) x = a;else x = b;循环语句:实现循环控制的过程
5、 sum = 0; /* 初始化sum和i */i = 1; while (i = 100) /* while循环语句 */ sum = sum + i; i = i + 1;复合语句:用一对“ ”,将若干语句顺序组合在一起就形成了一个程序段。程序设计语言的语法其中,(4)函数定义与调用 函数是完成特定任务的独立模块,函数的使用最主要涉及到函数的定义与调用。引导实验:认识引导实验:认识C语言要素语言要素1. 画一个矩形画一个矩形2. 画一个画一个n行的矩形行的矩形3. 画一个画一个n行行m列的矩形列的矩形4. 画一个任意字符构成的矩形画一个任意字符构成的矩形5. 构造一个画矩形的工具构造一个画
6、矩形的工具15画一个矩形画一个矩形【源程序sample02_01.cpp】#includeint main(void)printf(*n);printf(*n);printf(*n);printf(*n);printf(*n);return 0;16循环循环i从从1到到5,每次增,每次增1: 输出一行星号输出一行星号引入循环结构【源程序sample02_02.cpp】#includeint main(void) int i; for(i=1;i=5;i+)printf(*n); return 0; 17变量定义循环语句赋值表达式关系表达式算术表达式循环体语句2. 画一个画一个n行的矩形行的矩形
7、【源程序sample02_03.cpp】#includeint main(void) int n; printf(input n:n); scanf(%d,&n); printf(print rectangle with %d lines:n,n); for(int i=1;i=n;i+)printf(*n); return 0;183. 画一个画一个n行行m列的矩形列的矩形19循环循环i从从1到到n ,step 1: 1. 输出一行星号输出一行星号 1.1循环循环j从从1到到m,step 1: 1.1.1输出一个星号输出一个星号 1.2 输入回车输入回车 3. 画一个画一个n行行m列
8、的矩形列的矩形(实现)(实现)【源程序sample02_04.cpp】#includeint main(void) int m,n; int i,j; printf(input n:n); scanf(%d,&n); printf(input m:n); scanf(%d,&m); printf(print rectangle with %d lines:n,n); for(i=1;i=n;i+) for(j=1;j=m;j+) printf(*); printf(n); return 0;20复合语句3.(续)增加数据的合理性判断n不合理数据输入的输出示例n数据合法性检查示例
9、213.(续)增加数据的合理性判断n输入m、n值后,判断m、n是否小于0,小于0则输出出错提示后结束,否则表示输入合法,则输出矩形。nif语句的基本格式为: if(条件表达式条件表达式) 语句语句1 else 语句语句2223.(续)增加数据的合理性判断实现【源程序sample02_05.cpp】。if(m0 |n0) printf(输入的数据不能为负值输入的数据不能为负值!n); else printf(print rectangle with %d lines:n,n); for(i=1;i=n;i+) for(j=1;j=m;j+) printf(*); printf(n); 。 234
10、. 画一个任意字符构成的矩形画一个任意字符构成的矩形n存放字符的变量的数据类型为char。n字符的输入语句可以使用getchar函数。n字符的输出语句可使用putchar函数。字符的输入语句可以使用getchar函数,字符的输出语句可使用putchar函数。画一个任意字符构成的矩形画一个任意字符构成的矩形实现实现【源程序sample02_06.cpp】#includeint main(void) int m,n; int i,j; char ch; printf(input char:); ch=getchar(); printf(input n:); scanf(%d,&n); pr
11、intf(input m:); scanf(%d,&m); printf(print rectangle with %d lines:n,n); for(i=1;i=n;i+) for(j=1;j=m;j+) putchar(ch); putchar(n); return 0;字符变量字符常量输入字符输出字符n比较: putchar(n);和printf(n);5. 构造一个画矩形的工具构造一个画矩形的工具n绘制一个空心的矩形画一根实心线画n-2根空心线画一根实心线26算法细化-自顶向下逐步细化1.输出一行实心行 1.1循环i从1到m,step 1: 输出一个星号 1.2 换行2. 输
12、出n-2行空心行 2.1 循环i从2到n-1,step 1: 2.1.1 输出一个星号 2.1.2 输出m-2个空格 循环j从2到m-1: 输出一个空格 2.1.3 输出一个星号 2.1.4 换行27实现 【源程序sample02_07.cpp】输出一行实心行for(j=1;j=m;j+) printf(*); printf(n);输出n-2行空心行 for(i=2;in;i+) printf(*); for(j=2;jm;j+) printf( ); printf(*); printf(n); 28工具函数的定义/输出一行n列实心行void draw_line(int n)int i; fo
13、r(i=1;i=n;i+) printf(*); printf(n);/输出一行n列空心行void draw_pointline(int n)int i; printf(*); for(i=2;in;i+) printf( ); printf(*); printf(n);29函数定义的基本格式: (函数参数定义表)函数体main函数的实现【源程序sample02_08.cpp】1.输入n,m。2.输出一行m列实心行。3.输出n-2行空心行。 循环i从2到n-1: 输出一行m列空心行。4.输出一行m列实心行。#includevoid draw_line(int n);void draw_poin
14、tline(int n);int main(void) int m,n; int i; draw_line(m); for(i=2;in;i+) draw_pointline(m); draw_line(m);return 0; 30函数调用函数声明函数声明的基本格式 (函数参数变量列表);无返回值的函数调用的基本格式为:(参数值列表);独立实验独立实验实验二 C语言要素31任务一 改错#includeint main() int n; printf(input n:); scanf(%d,n); for(i=1,in,i+) for(j=1,j=i,j+) printf(*); printf
15、(n);return 0;32任务二 改错#includeint main() int n,i,j; printf(input n:n); scanf(%d,&n); for(i=1;in;i+) for(j=1;jn-i;j+) printf( ); draw_line(int 2*i+1); return 0;void draw_line(int n)略33任务三编写程序1.输入n2.循环i从1到n,step 1: 2.1循环j从1到i-1,step 1: 输出一个空格 2.2循环j从i到n,step 1: 输出一个星号 2.3输出换行34任务四 改写程序n改写sample02_08.cpp,要求如下(ex02_02.cpp)n(1)编写一个函数drawRectangle,作用是调用函数draw_line和draw_pointline 画一个n行m列的矩形。n(2)改写main函数,调用drawRectangle完成矩形的绘制。35任务五 改写程序(选做)改写sample02_08.cpp,绘制一个任意字符构成的空
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租客合同终止租房协议
- 技术开发与转让合同保密范本
- 智能化系统供货安装合同样本
- 矿山企业轮换工劳动合同模板及示例
- 农村土地出租权属合同样本
- 标准货物销售合同简版
- 城市配送服务合同一览
- 小学生种花演讲课件
- 影视设备行业交流服务批发考核试卷
- 广播电视节目的心理影响与教育意义考核试卷
- 廉洁知识培训课件
- 分布式光伏发电开发建设管理办法2025
- 《科幻小说赏析与写作》 课件 -第六章 “外星文明”的善意与恶行-《安德的游戏》
- 《我国的文化安全》课件
- 2025蛇年一上英语寒假作业
- 建筑行业新员工试用期考核制度
- 二年级经典诵读社团计划
- 洁净室施工组织设计方案
- 2025年太仓市文化旅游发展集团限公司及子公司公开招聘12名高频重点提升(共500题)附带答案详解
- 机械制图题库及答案
- 安装承包合同(2025年)
评论
0/150
提交评论