chapter3 简单语句与顺序结构程序_第1页
chapter3 简单语句与顺序结构程序_第2页
chapter3 简单语句与顺序结构程序_第3页
chapter3 简单语句与顺序结构程序_第4页
chapter3 简单语句与顺序结构程序_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、1,复习,设a=10,b=4,c=5,d=1,x=2.5,y=3.5,写出下面表达式的值。 (1) a%=(b%=3) (2) a+=a-=a*=a (3) ab ? x : A (4) b+=c (5) a=b=c (6) a+b,18+(b=4)*3,(a/b,a%b) (7) x+a%3*(int)(x+y)%2/4+sizeof(int),第3章 简单语句与 顺序结构程序设计,3,3.1 C语言的简单语句,按照C语言语句的作用分类: 说明语句 注释语句 程序流程控制语句,声明变量名称、数据类型及其存储属性的说明性语句,编程者对程序本身的解释,是“可执行”的语句,构成程序的主体,按照C语

2、言语句的功能分类: 控制语句 函数调用语句 表达式语句 空语句 复合语句,控制程序的走向(流程),由一个函数调用加一个分号,赋值表达式加分号,只有一个分号 ;,一对 括起来的语句序列,4,表达式语句由表达式后加一个分号构成。最典型的表达式语句是,在赋值表达式后加一个分号构成的赋值语句。,3.1 表达式语句,表达式语句分: 运算符表达式语句和赋值表达式语句。 例如: 运算符表达式语句: i+; /*变量i自增1*/ -j; /*变量j自减1*/ 赋值语句: num=5; /*给num变量赋值5*/,5,3.1.2 函数调用语句,函数调用语句由一次函数调用加一个分号(语句结束标志)构成。 函数调用

3、语句的一般形式: 函数名(参数列表); 例如:scanf(“%f”, /输出变量x的值 C语言标准库函数参见 P221 附录3。 调用标准函数要注意的几点: (1)要特别注意函数的返回值、参数个数和类型及参数的顺序,即了解函数的功能和定义,规范调用。 (2)要在程序中包含相应的头文件。 例如:#include 、 #include “math.h”,6,3.1.3常用数学函数,数学函数用于求出函数值,其实质是一段预先设计好的程序。 调用数学函数时将计算所需的参数传给函数,返回函数值,所以函数值又称为函数的返回值。 调用数学函数必须在程序中应用预编译命令 #include “math.h”或 #

4、include 才能调用数学函数。 例3.1 编程计算 3*sin(3.14159*x/180) 和 2*cos(x*3.14159/180)的值。,7,例3.1程序 #include #include int main() float x,y1,y2; scanf(“%f”, ,Printf(“请输入x的值n”);,8,3.2 输出函数,输入是指用户借助计算机的输入设备将数据输入到计算机中。 常见的输入设备是键盘、鼠标、扫描仪等 输出是指从计算机内部将数据输送到用户指定的外部输出设备 常见的输出设备如显示器、打印机、绘图仪等 语言通过标准输入/输出库(I/O库)提供的函数完成输入/输出功能

5、C语言的库函数见P221:附录3,9,标准函数:因C编译系统与C函数库是分别进行设计的,所以不同的计算机系统所提供函数的数量、名字和功能是不完全相同的,但一些通用的函数(如:printf, scanf, putchar, getchar, puts, gets等),各种计算机都提供,这些函数被称为标准函数。 在使用C库函数时,要用预编译命令:“#include” 将有关的“头文件”包括到用户源文件中,因为在头文件中包含了与用到的函数有关的信息,如: 在调用标准输入输出库函数时,文件的开头应有以下预编译命令: #include 或 #include”stdio.h” 使用双引号:先源文件目录查找

6、,若无再在包含目录查找。 使用尖括号:直接在包含目录查找。,10,3.2.1 字符输出函数,字符输出函数putchar 调用形式: putchar( c ) 功能:通过标准输出设备(显示器)输出变量c。 例3.2 从键盘输入的一个字符的ASCII编码值,然后输出该字符后面的两个字符。 #include stdio.h main ( ) int ch; scanf(“%d”, /连续输出两个字符 ,11,3.2.2 格式输出函数,1. 格式输出函数printf 调用形式: printf (”格式控制字符串”,输出项列表) 其中:格式控制字符串也称为格式说明串,必须用英文双引号括起来,它用于描述变

7、量的输出方式。 格式控制串,包含两种信息: 格式说明:%附加格式说明符格式字符,用于指定输出格式 普通字符或转义序列:原样输出。 功能:按照控制字符串中的格式说明依次将后面的各参数进行转换,排放成格式说明中规定的格式,输出到输出设备上。对非格式说明符,则按原样输出。,12,3.2.3 输出项的格式说明 d 以十进制形式输出整数(正数不输出符号) o 以八进制无符号形式输出整数(不输出前缀符0) x 以十六进制无符号形式输出整数(不输出前缀符0 x) u 以无符号十进制形式输出整数 c 以字符形式输出,仅输出一个字符 s 输出字符串 f 以小数形式输出单、双精度数 e 以标准指数形式输出单、双精

8、度数 g 选用%f或%e格式中输出宽度较短的一种格式,不 输出无意义的 % 输出%,13,附加格式符 说 明 l 用于输出长整型数据, 可加在格式转换符d,o,x,u前面 m(正整数) 输出数据的最小域宽 .n(正整数) 对实数,表示输出 n 位小数; 对字符串,表示截取的字符个数 - 输出的数据在输出域内向左对齐,使用printf函数时还要注意一个问题,那就是输出表列中的求值顺序。不同的编译系统不一定相同,可以从左到右,也可从右到左。VC和T C是按从右到左进行的。,14,实例3.3: #include main( ) printf (This is a C program.n); 实例3.

9、4: #include “stdio.h” main( ) int a=1, b=2, c=100; printf(a=%d, b=%3d, d=%3d%n,a, b,a*c/b); printf(%d, %o, %xn, -a, -a, -a); 输出:,15,例3.5: #include main ( ) char c=a; char ch =Good-bye.; printf(%c,%3c,%3dn, c, c, c); printf(%s,%10s,%-8s,%-12s,%6.4sn, ch,ch,ch,ch,ch); printf(12345678901234567890123456

10、7890 12345678901234567890n); 输出: a, a, 97 Good-bye., Good-bye.,Good-bye.,Good-bye. , Good 12345678901234567890123456789012345678901234567890,16,例3.5(1),void main() int i=8; printf(%dn%dn%dn%dn%dn%dn,+i,-i,i+,i-,-i+,-i-); ,main() int i=8; printf(%dn,+i); printf(%dn,-i); printf(%dn,i+); printf(%dn,i-)

11、; printf(%dn,-i+); printf(%dn,-i-); ,例3.5(2),17,3.3.1 字符输入函数getchar 调用形式: c = getchar( ) 功能:从标准输入设备(键盘)上取一个字符作为函数值返回。 例如:#include stdio.h main ( ) char c; c = getchar( ); /* 取一输入字符 */ putchar(c); /* 输出字符变量c的值 */ 运行程序,如果从键盘输入:aENTER 则输出为: a 如果从键盘输入: abcENTER 则输出也为: a,3.3输入函数,18,3.3.2 格式输入函数 调用形式: sca

12、nf(”控制字符串”,参数1,参数2, ,参数n) 其中:控制字符串也称为格式说明串,它用于描述变量的输入方式,格式说明的形式是: 附加格式说明符 格式转换字符 附加格式说明符部分可以缺省。 功能:从标准输入设备上读取输入数据,按格式说明的描述将读入的数据赋于相应的参数。 参数部分的每个参数,若为一般变量,要在变量名前加“,19,格式字符 说 明 d 输入十进制整数 o 输入八进制整数 x 输入十六进制整数 c 输入单个字符 s 输入字符串 f 输入实数,可为小数形式或指数形式 附加格式符 说 明 l 用于输入长整型数据及double型数据 h 用于短整型数据 正整数 用于指定输入数据占据的宽

13、度 * 表示本输入项在读入后舍弃,20,实例: :scanf (%3d%2d, 输入序列一:123ENTER 结果:x=1,y=2,z=3 输入序列二:1TAB2 3ENTER 输入序列三:1ENTER 2 3ENTER 结果与输入序列一的结果一样。,21,:scanf (%2d %*2d,%2d, 要使x的值等于12,从键盘应怎样输入? 正确的输入序列:x=12ENTER 注意:字符 x= 被过滤掉了 若输入序列为:12ENTER 错误!,22,6:使用scanf和printf函数 例3.6: #include main( ) int a; float b,c; scanf (”%2d%3f

14、%4f”, 输入:12345678987654321 输出: a=12, b=345.000000, c=6789.000000,23,3.4 顺序结构程序,明确问题的性质,分析题意 数值问题/非数值问题 建立问题的描述模型 数学模型/过程模型 设计/确定算法 数学问题:数值分析 非数学问题: 数据结构/算法分析与设计 一般方法:穷举/递推/递归/分治/回溯/. 编程调试 分析运行结果,3.4.1 程序设计步骤,24,例C3.7.C:设球的半径为r,求球的表面积和球的体积。用scanf函数输入数据,输出计算结果时,取小数点后2位数字。请编程序 分析:问题简单,可直接写出程序 #define PI 3.14159 #include”stdio.h” main() float r,s,v; printf(“input r:”); scanf(“%f”,3.4.2 顺序结构程序设计举例,25,例C3.8.C:从键盘输入一个大写字母,要求改用小写字母输出 分析:从ASCII代码表中可以看到每一个小写字母比它对应的大写字母的ASCII码大32,据此编写程序如下: #include main() char

温馨提示

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

评论

0/150

提交评论