C语言2ppt课件.ppt_第1页
C语言2ppt课件.ppt_第2页
C语言2ppt课件.ppt_第3页
C语言2ppt课件.ppt_第4页
C语言2ppt课件.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机程序设计 C语言 第2章C程序设计初步 1 C语言的数据类型 2 常量和变量 3 运算符及表达式 4 数据的输入输出 2 2 1例 求一元二次方程的根 例2 1 对于形式为 ax2 bx c 0的方程 计算它的两个实根 假定方程不存在虚根 一元二次方程的求根公式 3 2 1例 求一元二次方程的根 include include math h是数学函数库 intmain inta b c floatx1 x2 dlt a 1 b 0 c 1 dlt sqrt b b 4 a c x1 b dlt 2 a x2 b dlt 2 a printf realroots x1 f x2 f n x1 x2 return0 变量定义 确定a b c的值 计算dlt x x2的值 输出结果x1 x2 4 2 2信息存储 数据是程序处理的对象1 0 a b c C程序所处理的数据有类型之分 C程序提供了丰富的数据类型 以满足表示各种数据的需要整型 实型 字符型数据在计算机内部的表示形式不同常量 变量不同类型的数据 其存储形式是不同的 所占字节数也可能不同 5 2 2信息存储 1 计算机内存内存相当于人的大脑 是计算机的记忆部件计算机内部数据以二进制形式存放字节 Byte 计算机的基本存储单元 由8个二进制位构成单元地址 每个内存单元都有一个惟一的编号1KB 210B 1024字节1MB 210KB 1024KB1GB 210MB 1024MB 6 2 2信息存储 2 标识符标识符是C程序中各种对象的名称 例如 变量 符号常量 函数 数组 结构体 文件等对象的名称 标识符的命名规则只能由字母 数字和下划线组成abx1x2dltstudent 1a s s 3 非法标识符第一个符号必须是字母或下划线countmax1 rw3c234 非法标识符一般标识符的长度不超过7个字符大小写分别代表不同含义 不能使用系统关键字 7 关键字 特殊标识符集 ANSIC共32个 有特定意义 不能用作一般名字 C99有扩充 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile 2 2信息存储 8 指出下面的哪些字符序列不是合法的标识符 abcx 3x1Xf 1 4Eoof a 24x x 2bg 1 IamM D Johna 3 2 2信息存储 9 2 2信息存储 3 变量变量是程序运行中保存变化数据的内存单元变量必须先定义 后使用变量的命名规则符合标识符的命名规则变量命名的一般原则 尽量 见名知义 增加程序的可读性通常变量名 函数名用小写字母标识 符号常量名用大写字母标识 10 2 2信息存储 4 常量常量是程序运行期间值不发生变化的数据常量的表现形式 常数3 1456 a John 符号常量 define符号常量名常数如 definePI3 14系统编译程序时 将程序中所有的符号常量用其值替代 符号常量的值一经定义不能改变 11 例2 2 已知圆半径 编写计算圆周长和圆面积的C程序 2 2信息存储 includeintmain floatc s r 用c表示周长 s表示面积 r表示半径 r 2 5 c 2 3 14 r s 3 14 r r printf 圆周长 f 圆面积 f n c s return0 12 2 2信息存储 include definePI3 14159 符号常量定义 大写字母 voidmain floatc s r r 2 5 c 2 PI r s PI r r printf 圆周长 f 圆面积 f n c s 使用符号常量的优点 程序易修改 可移植性好提高了程序的可读性 13 2 3数据表示 1 数据类型 14 2 3数据表示 2 整数类型按照整型数据在内存中所占空间的长度不同 可分为 整型int16位 215 215 1短整型shortint8位 27 27 1长整型longint32位 231 231 1按照数据是否带符号 有可分为 带符号整型无符号整型unsignedunsignedint0 216 1unsignedshort0 28 1unsignedlong0 232 1 15 2 3数据表示 整数在计算机内部按其补码形式存放 正整数的原码 反码和补码相同负整数的反码为其原码按位取反 而补码为其反码加1例 short型有符号整数19的计算机表示 19的计算机表示 16 2 3数据表示 1 整型常量的表示三种表示形式 十进制 八进制 十六进制 十进制整数 23 891000八进制整数 010 0730123十六进制整数 0 x10 0 xea30 xffff整数的类型根据整数后的字母判别 l或L表示长整型 u或U表示无符号整型根据常量的值来确定类型 17 2 3数据表示 x1 例如 32700017u 0 x2afL345678910LU 18 2 3数据表示 2 整型变量类型名变量名1 变量名2 inti j shortcount unsignedk longa1 a2 a3 i 32700 count 5 k 0 19 2 3数据表示 3 实数类型存在小数部分的数据类型 三种类型 单精度实型float32位约 3 4 10 38 3 4 10 386位有效数字双精度实型double64位约 1 7 10 308 1 7 10 30816位有效数字长双精度实型longdouble128位 20 2 3数据表示 1 实型常量默认实型常量均为double类型 有两种表示形式 十进制小数形式123 45 62 555465 6102 指数形式1 6e 105E 2E41e0 5 非法表示 21 2 3数据表示 2 实型变量类型名变量名1 变量名2 floati j doublefx i 1 5 j 34 5678 fx 12345 654 22 2 3数据表示 3 字符类型字符类型主要用于I O或文字处理 字符数据包括计算机所用的字符集 通常指ASCII字符集 128个字符 每个字符都有一个惟一的次序值 即ASCII码数字字符 字母的ASCII码按升序连续排列编排顺序 数字字符 大写字母 小写字母 3组之间有其它字符间隔每个字符在内存中占有一个字节 按照ASCII值 见附录 进行存储 23 2 3数据表示 1 字符常量字符常量用一对单引号作为分隔符 a A 3 还有一些特殊的控制字符 用转义字符表示 n t 141 八进制数141所代表的字符 x61 十六进制数61所代表的字符 24 2 3数据表示 2 字符变量 hsmchar变量名1 变量名2 charch charc1 c2 ch A c1 3 c2 c1 3 c2的值是什么 c2的值是 6 25 2 3数据表示 2班 3 字符类型与整型之间的关系由于字符的ASCII值具有整数的特征 因此 字符类型数据可以象整数一样参加算术运算 实际相当于字符的ASCII值参加运算 includeintmain charch ch A printf c的ASCII值为 d n ch ch 输出字符及其ASCII值 26 例2 4 大小写字母转换 2 3数据表示 includeintmain charlowc upc lowc d upc F printf 转换前 lowc c upc c n lowc upc lowc lowc 32 小写转大写 upc upc 32 大写转小写 printf 转换后 lowc c upc c n lowc upc 27 2 4运算符及表达式 C语言提供了丰富的运算符 见附录3 1 表达式数据加运算符构成表达式 其运算结果即为表达式的值 例如 3 5表达式的值为8 56表达式的值为 56 a A 表达式的值为32 28 2 算术运算单目运算符 自加 自减 正 负双目运算符 模运算 取余 1 除运算两个整数相除 商仍为整数 5 3的值为1 2 模运算只适用整数运算 运算结果为余数5 3的值为29 10的值为9 2 4运算符及表达式 29 2 4运算符及表达式 3 自加 自减运算只适用整型变量 常量和实型数据不能使用表示对整型变量加1或减1表达式的值为变量的值例如 假设变量n的值为3 n表示n的值加1 同时表达式的值为n变化后的值4 n表示n的值减1 同时表达式的值为n变化后的值2n 先将n的初值3作为表达式的值 在对n加1n 先将n的初值3作为表达式的值 在对n减1 30 2 4运算符及表达式 inta 10 b 8 c 6 a b c a b c a b c a b c b 请说出下面的运算结果 31 3 赋值运算 1 简单赋值运算变量 表达式赋值运算的作用是把一个表达式的值赋予一个变量赋值表达式的运算过程是 计算赋值运算符右侧表达式的值将赋值运算符右侧表达式的值赋给赋值运算符左侧的变量将赋值运算符左侧的变量的值作为赋值表达式的值例 x 5表示把5赋值给变量x 表达式的值为5x y 4 x的值为 2 4运算符及表达式 32 2 复合算术赋值运算符 例 假设a b c的值分别为3 4 5a 5b 12c 8a b c 2 4运算符及表达式 33 includeintmain intwood stone water wood 3 4 5 2 stone 3 2 2 water 123 100 printf wood d stone d water d n wood stone water return0 注意 是整除 3 2 1 2 4运算符及表达式 4 数据类型转换 1 同类型的数据计算 结果类型不变 例2 7 计算整型数据表达式 34 高double float long unsigned 低int char short数据类型自动转换规则 2 4运算符及表达式 2 自动类型转换表达式计算时遵循自动转换原则赋值运算时 赋值号右侧表达式自动转换为赋值号左侧变量的类型 35 例2 8 不同类型数据表达式计算 includeintmain shortinti charc floatx i 11 c a x 1 1 x c i 2 printf result f n x return0 2 4运算符及表达式 36 3 强制类型转换一般形式是 类型名 表达式例 1 2的值为0 float 1 2的值 注意 强制类型转换仅仅是在表达式计算时 改变计算时值的类型 不能改变原来数据的类型 例如 int x y计算后 变量x的类型不发生改变 2 4运算符及表达式 37 5 运算符优先级和结合性见附录三 2 4运算符及表达式 38 练习 1 以下字符常量中 不合法的是 0 xff 65 x1a 2 若有以下类型说明语句 chara intb floatc doubled 则表达式a b d c的结果类型为 3 若有定义 intk 7 floata 2 5 b 4 7 则表达式a k 3 int a b 2 4的值是 39 例2 9 对键盘输入的任意十进制整数 给出它的八进制数和十六进制数 2 5数据的输入和输出 includeintmain intnum printf 请输入数据 scanf d 40 1 scanf 标准输入函数 1 输入格式scanf 格式描述串 地址参数表 一个scanf函数可以输入多个数据 格式串由双引号里若干 格式说明组成 一个 对应后面一个输入量 之间建议不要有任何分隔符 包括空格 地址参数表是需要输入的变量的地址 变量的地址通常由 和变量名构成 2 5数据的输入和输出 41 2 5数据的输入和输出 常用格式说明符 42 例2 10 各种类型数据输入 includeintmain inti j charc floatx doubley scanf d d 2 5数据的输入和输出 43 2 运行时的数据输入程序运行时的数据输入 各数据之间可以用空格 Tab或回车进行分隔对字符来说 采用 c 格式输入时 空格 回车 转义字符都算有效字符 因此不能用它们来作为分隔符 在输入格式控制中 除了 外 还可以有逗号 空格等作为输入分隔符 当有其他的字符时 输入时也必须输入相应的分隔符 hsm 2 5数据的输入和输出 44 scanf d d d scanf d d d a b c scanf a d b d c d a b c 2 5数据的输入和输出 3 4 5 a 3 b 4 c 5 45 2 printf 标准输出函数 1 格式 printf 输出格式控制串 输出表 在控制字符串中 可包括一些普通字符 这些普通字符在输出时按原样输出 控制字符串中格式说明的个数必须与参数表中的表达式个数一致 顺序也必须一一对应 格式说明是以 为起始符 格式字符为终结符的字符序列 作用是将输出的数据转换为指定的输出格式 2 5数据的输入和输出 46 2 5数据的输入和输出 47 2 整型输出在输出格式控制中 可以加宽度限定词 指定整型数据的输出宽度整型输出格式控制说明 md 指定了数据的输出宽度为m位 包括符号位 若数据的实际位数 含符号位 小于m 则左端补空格 若大于m 则按实际位数输出 2 5数据的输入和输出 48 例2 11 使用 d o和 x输入输出整型数据 2 5数据的输入和输出 includeintmain printf d o x n 10 10 10 printf d d d n 10 010 0 x10 printf 5d x n 012 012 return0 10 12 a10 8 1610 a 49 3 实型输出实型数据不管是float还是double 均用 f或 e 缺省方式 输出数据的整数部分位数按照实际位数 小数位数规定为6位可以通过指定实型数据的输出宽度来增加位数 m nf m表示总输出宽度 包括符号位和小数点 并且其中小数有n位 若数据的实际位数小于m 左端补空格 若大于m 按实际位数输出 小数小于n位则后面补0 2 5数据的输入和输出 1 50 例2 12 输出实型数据 观察输出宽度 2 5数据的输入和输出 includeintmain doubled 3 1415926 printf f e n d d printf 5 3f 5 2f 2f n d d d return0 3 141593 3 141593e 0003 142 3 14 3 14 51 4 字符型数据的输入和输出可以用scanf函数和printf函数 采用 c格式说明putchar 标准字符输出函数向标准输出设备输出一个字符putchar a ch1 B putchar ch1 getchar 标准字符输入函数从标准输入设备接收一个字符charc c getchar 2 5数据的输入和输出 2 52 例2 14 调用各种函数输入输出字符 2 5数据的输入和输出 includeintmain charch1 ch2 ch3 ch4 ch1 getchar ch2 getchar putchar ch1 输出存放在变量ch1中的字符 putchar 输出字符常量 putchar ch2 printf n otherformat n scanf c c c c 53 2 5数据的输入和输出 includeintmain inta 2 b 2 x y x a 2 y b 2 printf x dy da db d n x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论