C语言的标识符和字符数据、字符串数据.ppt

上传人:sh****n 文档编号:7420779 上传时间:2020-03-21 格式:PPT 页数:20 大小:375.84KB
返回 下载 相关 举报
C语言的标识符和字符数据、字符串数据.ppt_第1页
第1页 / 共20页
C语言的标识符和字符数据、字符串数据.ppt_第2页
第2页 / 共20页
C语言的标识符和字符数据、字符串数据.ppt_第3页
第3页 / 共20页
点击查看更多>>
资源描述
1 2C语言的标识符和字符数据 字符串数据 本节的任务是掌握用printf 函数在屏幕的任意位置打印字符组成的图案 1 2 1C语言的字符串数据 字符数据和转义字符 例1 1 2用printf 输出字符串和转义字符 1 1L2 C include stdio h main printf n printf 我们立志成为祖国需要的高技术工人 n printf n 请学生在机上录入并运行上述程序 创新练习 将程序体当中printf里右边双引号前的 n 都删掉 再存盘并编译运行 看看前后两个程序的运行结果有什么不同 请同学们运行后讨论 并下结论 字符串 字符 转义字符 这些用英文中的双引号括起来的英文 数码 汉字以及可以由键盘输入的一切字符 以及它们的混合字符 在C语言中统统称作字符串 因为它们是用英文双引号串起来的一串字符或数字 比如 12Aca 1 a 都叫做字符串 在C语言中大写的英文字母与小写的英文字母被规定为不同的字符 而且 字符是指单个的 用英文单引号括起来的 如 a A 2 等等 这里有必要注意 a 与 a 是两种不同类型的数据 前一个称为字符串 后一个称为普通字符 也简称为字符 也可以这样认为 仅仅是用双引号括起来的就是字符串 用单引号括起来的就是普通字符 这是两种不同的数据 用单引号是不能括起多于一个字符的 在程序1 1L2 C的printf语句里面的字符串末尾都有一个 n 反斜杠和n 这种用反斜杠开头后跟一个或多个字符组成的复合字符 在C语言中称为转义字符 即在一些普通字符前加一个反斜杠 使普通字符的含意转变了 如转义字符 n表示换行 实际执行时变成回车并换行 r表示回车但不换行 转义字符大都表示操作动作的控制字符 见第一章附录二 1 2 2C语言的字符集 标识符 由英文字母 数码 规定的一些符号 见下表 1 组成的字符集合 称为C语言的字符集 由C语言字符集里的字符组成的 在程序中使用的 标识 表达 某种意思的短语 缩略语 词汇 这种标识编程者思想的符号 在C语言中称为标识符 在C语言里 规定了任何一个标识符都要先定义再使用 TurboC规定标识符定义时要求必须以字母或下划线开头 后跟字母 数字或下划线 长度最多32个字符 符号名称符号列表数量运算符 5标点符 7空白符 空格 制表符2括号 6关系运算符3其它符号 9第一章表 1C语言字符集的符号部分 1 2 3C语言程序打印字符图案 下面我们看看如何用printf 函数 向屏幕输出字符以及字符组成的图案 例1 1 3解法1打印如右平面图形 分析 这个图形 是由四行字符串 组成的 显然可以每行用一个printf 函数打印一个字符串来完成 共用四个 printf 函数 请同学们试一试先编程 然后再与下面老师给出的参考程序对比有没有漏了什么 1 1L3 1 C include stdio h main printf n printf n 2个 号中间有13个空隔 printf n 同上 printf n printf n r 上面这个平面图形是非常简单的 特别是中间两行左右两个字符 相隔很近 中间的空格只有13个 如果中间的空格有六 七十个 难道我们也照打六 七十个空格 怎么办 可不可以不用照打那么多个空格 由学生讨论回答 例1 1 3解法2 1 1L3 2 C include stdio h main printf n printf c 14c n 为什么是14C printf c 14c n printf s n 格式声明符 第一个printf 是直接打印字符串常量 字符串常量和转义字符是printf 函数可以直接打印的数据 第四个printf 是以字符串量的格式打印字符串量 字符串在英文中写成string 取其首字符s 前面再加一个 构成printf 的指定输出字符串量的格式声明符 s是指定输出字符串量的格式声明符 那么对于第二 第三行的 c 同学们猜一猜应该是指定输出什么量的格式声明符 printf 使用格式声明符输出指定的量时 括号里面的规律是什么 用双引号把格式声明符包括起来 如果后面的输出量打印完后 希望下一个量在另一行打印 则在双引号里的字符串最后 也可以写上转义字符 n 这对双引号的后面 用英文逗号和后面的输出量隔开 双引号里面一个格式声明符 就对应后面的一个输出量 它们是一一对应的 如果后面的输出量有多个 输出量之间 也要用英文的逗号间隔 域宽 还有一个 14c表示什么意思 其实这是在格式声明符中间插入了一个整数 大家可以从程序的运行结果看到 它使得后面的字符 共占据了14格的宽度 我们称这个14为域宽 14c表示它对应的打印字符共占14格的宽度 打印字符本身只占1格 不够14格那么长 就在它的前面自动加上13个空格 补到共占14格的宽度 现在请同学们想一想 对于字符串量的格式声明符 会不会也有域宽 创新练习 例1 1 3解法1 2所生成的正方形图案 其每一行的首位置都是在屏幕最左边第一列上的 现在 我们想将其每一行的首位置打印在屏幕左边数起的第11列上 即是把图案整个向右移动10列 如何修改这个例题 使这个想法得以实现 请同学们在机上练习 1 2 4源程序书写规范 程序体中 每行缩进2个空格 不要以制表符来缩进 每个模块写成锯齿型 模块之间空一行 每行右边最多到80列 超过的应该换行 换行后应缩进 大括号 分别占1行 成对的大括号应该位于同一列上 小括号 前后都不要留空格 所有的注释都用中文书写 使用 包括 凡是整个模块的注释写在整个模块的前面 并独占一行 凡是某句的注释写在该句的后面同一行上 超过80列也要换行并缩进到 的后面 所有标识符的命名遵照匈牙利符号表示法 前面用表示数据类型的指定的前缀 后跟表示数据用途的英文单词 课堂练习 打印如下的字符图形 开始可以不用域宽 最后要求一定使用域宽简化程序 OOOOOOOOOOOOOOOOOOOOOOOOOOO 例1 1 4使用域宽打印上图平面图形 分析 假设上述图形的第一行的三个大写字母O在它们所在行共占20格 即域宽为20 其实 这是可以任由程序员自己设置的 图形的第二行的第一对OO 其最后一个O从第一行的设定可以推出在第18格 所以第二行的第一对OO其域宽是18 第二对OO共占有3格的宽度 其域宽是3 如下图 图形的第一行 OOO它在第20格第二行 OOOO在第18格共占3格第三行 OOOO在第17格共占5格第四行 OOOO在第16格共占7格 很容易推出以后各行的第一对OO总要靠前一格 即域宽比上一行少1 而各行的第二对OO 要往后靠一格 它的前面与第一对OO又多了一个空格 因此 域宽总比上一行的第二对OO多了2 这样以下各行就很容易写出来了 图形共有7行 写7个printf 语句即可 程序如下 1 1L4 C includemain printf 20s n OOO printf 18s 3s n OO OO printf 17s 5s n OO OO printf 16s 7s n OO OO printf 15s 9s n OO OO printf 14s 11s n OO OO printf 13s 13s n OO OO 课堂练习 请做一做本节的课后作业与练习 如注意找规律的话 用域宽来写这些程序是不困难的 下次课再见
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!