




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 C语句概述语句概述 赋值语句赋值语句 数据输入输出数据输入输出 顺序结构举例顺序结构举例第三章最简单的第三章最简单的C程序设计程序设计- -顺序程序设计顺序程序设计C语句概述语句概述 语句是向计算机发出操作指令,一个语句经语句是向计算机发出操作指令,一个语句经编译后产生若干条机器指令。一个程序由若干编译后产生若干条机器指令。一个程序由若干条语句组成。条语句组成。 需要指出的是:语句都是在程序的执行过需要指出的是:语句都是在程序的执行过程中完成一定操作任务的。说明部分的内容,程中完成一定操作任务的。说明部分的内容,不产生机器操作,因此不应称之为语句。如变不产生机器操作,因此不应称之为语句。如变
2、量说明量说明: int a; 只是对变量的定义,在编译时告知系统为变量只是对变量的定义,在编译时告知系统为变量 a 预留存储空间。预留存储空间。 语句分类语句分类l表达式语句表达式语句l函数调用语句函数调用语句l控制语句控制语句l复合语句复合语句l空语句空语句 表达式语句表达式语句 由一个表达式构成的语句。由一个表达式构成的语句。 如:如: x=5; i=i+1; +y; c-; x+y; 是一个语句,但无实际意义。是一个语句,但无实际意义。 函数调用语句函数调用语句 由一个函数调用加一个分号构由一个函数调用加一个分号构成的语句。如:成的语句。如: printf(“输入三个数输入三个数k,j,
3、f:”); scanf(“%d,%d,%f”,&k,&j,&f); 控制语句控制语句 完成一定的控制功能,有以下完成一定的控制功能,有以下9种:种: 1) if ( ) else (条件语句条件语句) 2) switch (多分支选择语句多分支选择语句) 3) for ( ) (循环语句循环语句) 4)while ( ) (循环语句循环语句)C C语句分类例子语句分类例子 5)do while( ) (循环语句循环语句) 6)continue (结束本次循环结束本次循环) 7)break (中止循环或中止循环或switch语句的执行语句的执行) 8)goto (转向语句转向语句) 9)retu
4、rn (从函数返回语句从函数返回语句) 复合语句复合语句 根据需要用根据需要用 括起来的多个语括起来的多个语句,一般用于循环体或条件分支中所需要的多语句句,一般用于循环体或条件分支中所需要的多语句结构。如:结构。如: z=x+y; z/=100; printf(“x=%d, y=%d, =%d”,x,y,z); 空语句空语句 以只有一个以只有一个 ;号组成的语句,该语句什么事;号组成的语句,该语句什么事都不做。都不做。语句分类语句分类赋值语句赋值语句l格式格式: 变量名变量名 = 表达式表达式l功能功能: 将表达式的值赋给变量名所标识的变量将表达式的值赋给变量名所标识的变量.l说明说明: 表达
5、式可以是表达式可以是赋值表达式赋值表达式或或运算表达式运算表达式.赋值表达式赋值表达式 表达式中含有表达式中含有赋值符号赋值符号(=)称之为赋值表称之为赋值表达式达式, 例如例如: a = b=c=d*7;运算表达式运算表达式 用用运算符号运算符号把把常量常量、可计值的变量可计值的变量或或函数函数引用引用连接起来的式子称之为运算表达式连接起来的式子称之为运算表达式. 如如: x1=(-b+sqrt(b*b-4*a*c)/(2*a); x2=(-b-sqrt(b*b-4*a*c)/(2*a);注意注意:在其他语句中出现的表达式,如:在其他语句中出现的表达式,如: if (a=b) z=x;三种三
6、种输入输入-输出输出语句语句 输入输出操作是由函数来实现的输入输出操作是由函数来实现的, ,C语言函数库语言函数库中有中有“标准输入输出函数标准输入输出函数” 字符的输入与输出:字符的输入与输出: getchar()、putchar() 格式输入与输出:格式输入与输出: scanf() 、printf() 字符串的输入与输出:字符串的输入与输出: gets() 、puts()在使用在使用C语言库函数时语言库函数时, ,要用预编译命令要用预编译命令“#include”#include”将有关的将有关的“头文件头文件”包括到用户包括到用户源文件中源文件中 例如:例如:使用标准输入输出库函数时,要用
7、到使用标准输入输出库函数时,要用到“stdio.h”stdio.h”文件,在源文件开头应有:文件,在源文件开头应有: #include 或或 #include “stdio.h” v 字符输入函数字符输入函数 getchar() 格式:格式: c=getchar() 功能:接收从键盘上输入的一个字符,并把它赋给变量功能:接收从键盘上输入的一个字符,并把它赋给变量c。 注意:注意:c可以是字符型或整型变量。可以是字符型或整型变量。例:运行该程序例:运行该程序,在键盘上输入:在键盘上输入:go,然后输出,然后输出a,b的值的值,将在将在屏幕上显示:屏幕上显示:go (c402.c)标准输入标准输入
8、 #include “stdio.h“ /*putchar()函数在函数在stdio.h文件中文件中* main() char a; int b; a=getchar(); b=getchar(); putchar(a); putchar(b); 格式输入函数格式输入函数 scanf() 格式:格式: scanf(输入格式输入格式,地址表列地址表列);功能:按照输入格式接收从键盘上输入的数据,功能:按照输入格式接收从键盘上输入的数据,并把它送入相应的地址表列中去。并把它送入相应的地址表列中去。注意:注意: 输入格式也有三部分组成输入格式也有三部分组成: 普通提示信息;普通提示信息; 格式说明符
9、格式说明符(格式说明符见下表格式说明符见下表) ; 输入分割符输入分割符(一般用空格或逗号一般用空格或逗号)。 输入格式符输入格式符格式符格式符输入内容输入内容%d十进制整数十进制整数%c单个字符单个字符%s以非空白开始以非空白开始,以空白结束的字串以空白结束的字串,并将其送到字符数组中并将其送到字符数组中%f以小数或指数形式输入浮点数以小数或指数形式输入浮点数%e同同%f,可以互换,可以互换%o八进制数八进制数%x十六进制数十六进制数 附加的格式字符(放在附加的格式字符(放在%和字符之间)和字符之间) l用于长型数,可加在格式符用于长型数,可加在格式符d,e,f,o,x前边前边 m确定输入数
10、据所占列数确定输入数据所占列数 h用于输入短整型数,可加在格式符用于输入短整型数,可加在格式符d,o,x前边前边 *表示本项输入的数据不赋给相应的变量表示本项输入的数据不赋给相应的变量例例:main() /* c405.c */ int x,y,z; char c1; float f1; printf(please input 3 integers:); scanf(%d%d%d,&x,&y,&z); printf(n x=%d y=%d z=%d,x,y,z); printf(n please input a real and a character:); scanf(%f,%c,&f1,&
11、c1); printf(n c1=%c f1=%-f,c1,f1);运行该程序运行该程序,操作结果如下操作结果如下(下划线部分为输出下划线部分为输出,其他为输入其他为输入): please input 3 integers: 234 x=2 y=3 z=4 please input a real and a character: 17.1 , a c1=a f1=17.100000Scanf的使用注意事项的使用注意事项scanf(%d,%d,%d,&x,&y,&z);scanf(%d%d%d,&x,&y,&z);v 字符输出函数字符输出函数 putchar() 格式格式: putchar(c)
12、 功能:功能: 在屏幕上输出变量在屏幕上输出变量c的值。的值。注意:注意:c可以是字符型或整型变量,也可以是控制字符或转可以是字符型或整型变量,也可以是控制字符或转义字符义字符(其后介绍其后介绍)。例:例: 运行该程序,将在屏幕上显示:运行该程序,将在屏幕上显示:good (c401.c) 标准输出标准输出 # include “stdio.h” /*putchar()函数在函数在stdio.h文件中文件中*/ main() char a,b; int c,d; a=g; b=o; c=111; d=100; putchar(a); putchar(b); putchar(c); putcha
13、r(d); 标准输出标准输出printf()vv 格式输出函数格式输出函数 printf() 格式:格式: printf(输出格式输出格式, 输出表列输出表列) 功能:在屏幕上按输出格式的说明输出表列功能:在屏幕上按输出格式的说明输出表列中指定的各表达式的值。中指定的各表达式的值。注意:输出格式一般包括以下三部分内容:注意:输出格式一般包括以下三部分内容: 原样照印的字符信息。如原样照印的字符信息。如: X=; 格式说明符格式说明符(见以下列表见以下列表),一个格式说明符一个格式说明符对应输出表列中一个表达式对应输出表列中一个表达式. 如如: %f %d; 格式控制符格式控制符. 如如: n
14、换行。换行。格式符列表格式符列表格式符格式符 输出输出%d带符号的十进制整数带符号的十进制整数%c单个字符单个字符%s字符串字符串%f以小数形式输出浮点数,隐含输出以小数形式输出浮点数,隐含输出6位小数位小数%e以指数形式输出浮点数,保留以指数形式输出浮点数,保留6位小数位小数%g用用%f和和%e中输出宽度较短者中输出宽度较短者,忽略无意义的忽略无意义的0 %o不带正负号的八进制数不带正负号的八进制数 %u不带正负号的十进制数不带正负号的十进制数 %x不带正负号的十六进制数不带正负号的十六进制数 附加的格式字符(放在附加的格式字符(放在%和字符之间)和字符之间) l用于长整型数,可加在格式符用
15、于长整型数,可加在格式符d,o,u,x前边前边 m确定数据的输出宽度确定数据的输出宽度 .n对实数输出的小数位对实数输出的小数位;对字符串截取的字符数。对字符串截取的字符数。 -输出的数据向左靠齐。输出的数据向左靠齐。例:例: ( (c403.c)main() int a,b; char d; float x=234.5, y=18.75, c; a=105; b=-3; c=x+y; d=k; printf(a=%8d b=%-8d c=%8.3f x=%-8.2f n y=%-8.2f d=%3c,a,b,c,x,y,d); 运行该程序,输出结果如下:运行该程序,输出结果如下:a=105
16、b=-3 c=253.250 x=234.50 y=18.75 d=k 转义字符转义字符 转义字符用于控制定位或输出,列表如下:转义字符用于控制定位或输出,列表如下:转义符转义符 功能功能n换行换行 (光标跳到下一行首光标跳到下一行首)t横向跳格横向跳格. 跳到下一个输出区跳到下一个输出区,一个输出区占一个输出区占8列列v竖向跳格竖向跳格b退格退格r回车回车(光标回到行首光标回到行首)f走纸换页走纸换页反斜杠字符反斜杠字符单引号字符单引号字符ddd13位八进制数所代表的字符位八进制数所代表的字符xhh12位十六进制数所代表的字符位十六进制数所代表的字符例例: 改变上边程序输出格式改变上边程序输
17、出格式,使其整数使其整数,实数和字符分三行输出实数和字符分三行输出: main() /* c404.c */ int a,b; char d; float x=234.5,y=18.75,c; a=105; b=-3; c=x+y; d=k; printf(n a=%8d b=%8d n c=%8.3f x=%-8.2f y=%-8.2f n d=%3c,a,b,c,x,y,d); 运行该程序,输出结果如下:运行该程序,输出结果如下: a=105 b=- 3 c=253.250 x=234.50 y=18.75 d=k例例2:main() /* c406.c */ int x,y,z; cha
18、r c1; float f1; printf(please input data:.n); scanf(%4d%4d%4d,c1=%c,f1=%f,&x,&y,&z,&c1,&f1); printf( x=%d y=%d z=%d c1=%c f1=%fn,x,y,z,c1,f1);运行该程序,操作结果如下运行该程序,操作结果如下:please input data:. 963,c1=a,f1=12.125x=9 y=6 z=3 c1=a f1=12.125000从上述的程序操作可知:从上述的程序操作可知:1) 按照指定的格式输入是很重要的,否则变量将得不到按照指定的格式输入是很重要的,否则变
19、量将得不到正确的值。正确的值。2)对于实数输入,在格式符中不能指定小数位,否则变对于实数输入,在格式符中不能指定小数位,否则变量将得不到正确的值。量将得不到正确的值。下边再举一个跳读数据的例子:下边再举一个跳读数据的例子:main() /* c407.c */ int x,y,z; char c1=s; float f1; printf(please input data:.n); scanf(%4d%4d%4d,c1=%*c,f1=%f,&x,&y,&z,&f1); printf( x=%d y=%d z=%d c1=%c f1=%fn,x,y,z,c1,f1);运行该程序,操作结果如下运行
20、该程序,操作结果如下:please input data:.,.963,c1=a,f1=12.125x=9 y=6 z=3 c1=s f1=12.125000 顺序结构顺序结构 顺序结构程序通常是由表达式语句、函数调用语句和顺序结构程序通常是由表达式语句、函数调用语句和输入输出语句组成的一种顺序执行的程序结构。下边通过实输入输出语句组成的一种顺序执行的程序结构。下边通过实例进行说明:例进行说明: 例例1输入三角形的三边长,计算三角形的面积。由数输入三角形的三边长,计算三角形的面积。由数学知识知道:学知识知道: area=s(s-a)(s-b)(s-c) 其中其中a,b,c为三角形为三角形的三边长;的三边长; s=(a+b+c)/2 程序如下程序如下(c408.c):#include main() float a,b,c,s,area; /*说明变量说明变量*/ printf(“input a,b,c:”); /*显示提示信息显示提示信息*/ scanf(“%f,%f,%f”,&a,&b,&c); /*在键盘上输入在键盘上输入a,b,c的值的值 s=(a+b+c)/2.; /*计算计算s 的值的值 area=sqrt(s*(s-a)*(s-b)*(s-c); /*计算三角形的面积计算三角形的面积*/ printf(“n area=%-f”,area); /
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年租赁协议书
- 数控刀具采购协议书范本
- 集资建房如何写合同范本
- 日杂百货合同协议书模板
- 租赁协议合同的模板模板
- 购买竹子合同协议书模板
- 集成吊顶施工合同协议书
- 与材料合作商合同范本
- 区块链培训班协议书范本
- 承包建筑工地的合同范本
- 2025消瘦诊治与管理专家共识解读课件
- GB/T 18867-2025电子气体六氟化硫
- (高清版)DG∕TJ 08-15-2020 绿地设计标准 附条文说明
- 小学金融知识小课堂课件
- 病历质量定期检查评估与反馈制度
- 乐天地产(成都)有限公司乐天广场四期项目环评报告
- 初中生叛逆期教育主题班会
- 小学国家领土与主权教育
- 工程造价协议合同
- 2025年长沙环境保护职业技术学院单招职业技能测试题库附答案
- 人工智能技术在中职语文教学中的实践
评论
0/150
提交评论