C语言最简单的C程序设计.ppt_第1页
C语言最简单的C程序设计.ppt_第2页
C语言最简单的C程序设计.ppt_第3页
C语言最简单的C程序设计.ppt_第4页
C语言最简单的C程序设计.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

语言程序设计 最简单的C程序设计顺序程序设计 一 C语句概述 案例 已知圆半径radius 1 5 求圆周长和圆面积 include definePi 3 1415926main floatradius length area radius 1 5 length 2 Pi radius 求圆周长 area Pi radius radius 求圆面积 printf radius f n radius 输出圆半径 printf length 7 2f area 7 2f n length area 输出圆周长 面积 预处理命令全局变量函数 C语言提供的语句分五大类 1 控制语句 完成控制功能 if else 条件 for 循环 while 循环 do while 循环 continue结束本次循环 break中止switch或循环 switch多分支选择 goto转向 return从函数返回 2 函数调用语句函数名 参数 如 printf ThisisaCprogram n max a b 3 表达式语句在表达式后加 构成a 6a 5 如i i 2是表达式而i i 2 是表达式语句x yx y 4 空语句 无任何操作 但合法 可用于循环中的转折 5 复合语句用 将若干语句括起来而构成的语句 如 if x y 与if x y 意义不同z x z x x x y y 二 赋值语句 由赋值表达式与 组成 形式 变量 表达式 功能 计算表达式的值 然后赋给左边的变量 说明 1 赋值号与数学上的等号意义不同 如x x 2 2 在C语言中 赋值号作为赋值运算符使用 具有计算的功能 3 赋值表达式可以包含在其它表达式之中 如 if a b 0 t a 但赋值语句不能包含在条件表达式中 如 if a b 0 t a 三 数据输入输出 1 输入输出 相对主机而言的输入设备 键盘 扫描仪 磁盘 光盘等输出设备 显示器 打印机 磁盘等 2 本身不提供I O语句 I O操作通过函数实现 标准函数库中提供了一些I O函数 如printf scanf等 它们不是 的关键字 而是函数名 好处是 使编译系统简化 通用性强 可移植性好 C函数库提供的一些标准 函数是以终端设备为I O对象的 如 putchar getchar printf scanf puts gets 3 使用库函数时 用预编译命令 include将有关头文件包含到用户源文件中 在头文件中包含了与用到的函数有关的信息 如使用输入输出函数时要用到stdio h文件 include放在程序开头如 include stdio h 或 include注意 区别 include语句中用和 的区别 2 本身不提供I O语句 I O操作通过函数实现 标准函数库中提供了一些I O函数 如printf scanf等 它们不是 的关键字 而是函数名 好处是 使编译系统简化 通用性强 可移植性好 C函数库提供的一些标准 函数是以终端设备为I O对象的 如 putchar getchar printf scanf puts gets 四 字符数据的输入输出 功能 向输出设备输出一个字符 形式 putchar 参数 其中 参数可以是整型或字符型变量或常量 例如 putchar 97 putchar a 都输出字符a charc b putchar c 输出字符b 注意 在C语言中 除printf和scanf两个函数外 使用其它I O函数时 都必须在源文件的开始处加上预编译命令 include stdio h 意义 将标准I O函数库中的函数包含到所在文件中来 4 1 putchar 字符输出函数 includemain chara b c a B b O c Y putchar a putchar b putchar c 运行结果 BOY若无文件包含编译预处理 在编译连接时系统将指出 LinkingError Undefinesymbol putchar inmoduelXXX c 另 putchar 函数还可以输出控制字符如 n 或 012 a 或 007 r 或 015 换行响铃回车 include stdio h main chara A b B c 007 putchar a putchar b putchar n putchar c sleep 3 putchar c putchar 65 putchar 66 putchar 007 sleep 3 putchar 007 运行结果 AB响延时3秒响AB响延时3秒响 功能 从键盘输入一个字符形式 getchar 特点 无参数 其值是从输入设备得到的字符 include stdio h main charc c getchar putchar c putchar getchar printf c n getchar 输入 abc输出 abc如果一个一个输入呢 换行符 4 2getchar函数 五 格式输入与输出 功能 向输出设备输出若干个任意类型的数据1 printf函数的一般格式printf 格式控制 输出表列 1 格式控制 由双引号括起来的一串字符 格式说明和普通字符 格式说明 由 和格式字符 c d u f e o x s g 组成 普通字符 需要原样输出的字符 2 输出表列 需要桉格式说明所指定的格式输出的数据 可以是常量 变量 表达式 格式控制一般形式 printf 参数1 参数2 参数n 将参数2 n按参数1的格式输出 中间由逗号隔开 5 1printf格式输出函数 2 格式字符 1 d格式符 输出十进制整数 d 按十进制数据的实际长度输出 md m为指定输出字段的宽度 m时按数据的实际位数输出 main inta 123 b 12345 printf a 4d b 4d n a b 运行结果 a 123 b 12345 ld 输出长整型数据 对于长整型数据只能按长整型的格式说明符输出 否则 输出的数据有误 在长整型格式说明中 还可指出其输出宽度 main longa 134579 printf a d n a 结果 a 3507 2 o格式符 输出八进制数特点 无论是正是负 输出的都是不带符号的数 3 x格式符 输出十六进制数特点 无论数据是正是负 输出的都是不带符号的数 4 u格式符 输出无符号数据 无符号类型的数据可用 d u o x格式输出 带符号的char和int整型数据可用 u格式输出 单 双精度实型数据用 u格式输出时 则得到错误的结果 如果实际值的范围超出格式的范围 输出结果不正确 5 C格式符 输出一个字符字符型数据 占一个字节 数据表示范围 0 255例main charc a inti 97 j 355 k 232 printf c c c c n c i j k printf d d d d n c i j k 输出结果 a a c 97 97 355 232对于整型数据 若用字符格式输出 由于整型数据占两个字节 如果整型数据的值在0 255之间时 则输出对应的字符 若其值在256 32767之间时 则截取其低8位部分 然后输出对应的字符 6 S格式符 用来输出一个字符串 有几种方法 s 按实际长度输出字符串 ms m为列宽当串长 m时 按实际长度输出当串长m时 按串实际长度输出 当串长m时 m自动取n值 m只能是整常量 而不能是变量或表达式 main printf 3s 7 2s 4s 5 3s n CHINA CHINA CHINA CHINA 运行结果 CHINA CH CHIN CHI 7 f格式符 输出单 双精度实数 f 单精度浮点输出 有效位7位 通常小数点后有6位数字 lf 双精度浮点输出 有效位16位 通常小数点后有6位数字 例 输出双精度有效位main floatx1 y1 doublex2 y2 x1 1111111111111 111111111 y1 2222222222222 222222222 x2 1111111111111 111111111 y2 2222222222222 222222222 printf x1 y1 f nx2 y2 lf n x1 y1 x2 y2 运行结果 x1 y1 3333333319680 000000 x2 y2 3333333333333 333010 m nf 输出数据共占m列 其中小数占n位 当数据长度 m时 左补空格 m nf 输出数据占m列 其中小数占n位 当数据长度 m时 右补空格 main floatf 123 456 printf f 10f 10 2f 2f 10 2f n f f f f f 运行结果 123 456001 123 456001 123 46 123 46 123 46 8 e格式 以指数形式输出实数 e 小数点前有一位数字 小数点后有5位数字规范化数float x xxxxxe xx形式 double x xxxxxe xxx m ne m为输出数据的列数 n是小数的位数 m数据长度 数据靠右输出 左端补空格 m ne m为输出数据的列数 n是小数的位数 m数据长度 数据靠左输出 右端补空格在Tc中的n 指在e左边的数字个数 不包括小数点 在不同的C系统中输出结果可能不同书中例子指小数位数 9 g格式符 用来输出实数根据数据的大小 自动选取e f格式中占位数较少的一种格式输出 10 print函数的使用说明 格式符用小写字母而不能用大写字母 如 d而不是 D 格式控制的字符串中可包含转义字符 如 n t b r 377 x41 由 和格式字符d f e g u c s o x构成格式输出符号 特殊字符 和 的输出 如下所示 main printf n printf f n 1 0 3 输出 0 333333 定义数据类型与格式符说明要一致 否则将输出错误结果 1 一般形式scanf 格式控制 地址表列 1 格式控制 是字符串 内容有 格式说明 由 和格式字符d f e c s o x中之一组成 普通字符 需原样输入的字符 转义字符 n t用来实现换行和制表输入 2 地址表列 变量名前加 表示将输入的数据存入变量所指定的存储单元内 字符数组前不加 5 2scanf 格式输入函数 main inta b c scanf d d d a b c printf a d b d c d n a b c 输入方法 3 4 5 3 4 5 345 3Tab4Tab5输出 a 3 b 4 c 5常见问题 scanf d d d a b c 2 格式说明以 开始 以一个格式符 d f e E g G c s o x X 结束 中间可插普通字符 附加格式说明符有 ld lo lx 用于输入长整型数据 十 八 十六进制数 lf le 用于输入双精度类型数据 hd ho hx 用于输入十 八 十六进制短整型数据域宽n 指出输入数据所占的列数n 本输入项读入后不赋给任何变量 1 指出输入数据所占列数 系统自动按其截取数据 main inta b scanf 3d 3d 输入 123456789输出 a 123 b 456 2 字符型数据若指出n位宽度 则只将第一个字符赋给变量 main charch scanf 3c 输入 abcd输出 a 3 后加 表示跳过相应数据例main inta b scanf 2d 3d 2d 输入 12 345 678输出 a 12 b 67 4 格式说明中不能规定精度 编译虽不指出错误 但结果不对 main floata scanf 6 2f TC 输入 系统通过 不让输入数据输出 a 0 000000 5 o x格式输入main inta b c scanf o x c 输入 121212输出 10 18 49 3 使用sacnf函数应注意的问题 1 sacnf 中的变量必须使用地址 inta b scanf d d a b scanf d d 输入 3 4 逗号与 d d 中的逗号对应 scanf d d 输入 a b c 结果 a c1 c2 b c3 其余被丢弃 4 输入数据时 遇以下情况结束一个数据的输入 不是结束该scanf函数 scanf函数仅在每一个数据域均有数据 并按回车后结束 遇空格 回车 跳格 键 遇宽度结束 遇非法输入 六 程序举例 例 输入三角形的三边长 计算其面积 设三边长a b c 面积area的算法是 求平方根函数sqrt 在math h中定义 求平方根函数sqrt 在math h中定义 运行情况如下 3 4 6 a 3 00 b 4 00 c 6 00area 5 33 include math h main floata b c s area scanf f f f include includemain floata b c disc x1 x2 p q scanf a f b f c f 例 分析 华氏温度 F 与摄氏温度 c 之间的关系由公式 c 5 9 F 32 确定 分析 所需的变量 华氏温度f数据类型 floatf 摄氏温度c数据类型 floatc 表达式 c 5 9 f 32 程序执行过程 1 输入f2 计算c3 输出c由此不难直接写出以下程序 main floatf c Printf Fahrenheittemperature nf scanf f f c 5 0 9 0 f一32 printf Celsiustrmperature nc 2f n c 运行结果 Fa

温馨提示

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

评论

0/150

提交评论