




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章 顺序结构程序设计,主要内容 C的语句 简单的输入输出 顺序结构程序设计 要求:熟练掌握用合适的格式输入/输出不同类型的数据;会编写简单的程序。,4.1 C语句,了解C的基本语句: 简单语句:又称表达式语句。 在一个表达式的后面加上分号即构成表达式语句,例如 x=0; k+; printf(“n welcome“); 复合语句: 用一对花括号 括起来的多个语句序列,有时称为分程序。(见下页例4.2) 注意:复合语句以“”结束,后面不需再加分号。 3. 流程控制语句:用来控制程序中语句的执行顺序。C语言中提供了9中流程控制语句(下面的章节将要学习),例4. 2重复(10次):输入两个整数,输出两数之和。 main() int a, b, c, n; /*定义变量语句*/ for(n=1; n=10; n+) /*for语句控制重复10次*/ printf(“n input 2 integers:“); /*提示用户输入*/ scanf(“%d%d“, /*输出和*/ ,4.2 输入/输出概述,输入输出:是相对于计算机的主机而言的。 输入是指从计算机的外部设备将数据读入主机,输出是指将数据从主机送到外设(显示器、打印机、磁盘等)。 C语言本身没有专门的输入输出语句,输入输出操作是通过函数调用来实现的。编程时必须先将输入输出函数所在的头文件:stdio.h 包含进本程序中。使用命令: #include “stdio.h “ 或 #include C语言中的标准输入输出设备约定为用户终端,即键盘和显示器。 特别说明:调用输入函数时应该明确:数据从哪儿输入(省略为键盘)、以什么格式输入、输入的数据存放在哪里;调用输出函数时应该明确:要输出什么内容、按什么格式输出、输出到哪个设备(省略为显示器)。,4.3 字符输入/输出函数:getchar( ) 和 putchar( ),putchar()函数: 调用格式: putchar(c); 其中,c是要输出的字符,它可以是字符型或整型的常量和变量。当c为整型时,其值应是要输出的字符的ASCII码,范围是0255. 函数功能:输出一个字符到显示屏的当前光标处。,例4.3 输出三个字符:A*B。 #include “stdio.h” main() char c1; int c2; c1=A; c2=66; /*给变量c1,c2赋值*/ putchar( n ); /*输出字符n*/ putchar(c1); /*输出变量c1中的字符:A*/ putchar( * ); /*输出字符* */ putchar(c2); /*输出变量c2中的字符:B*/ ,2. getchar()函数: 调用格式: getchar() 函数功能:从标准输入设备(一般指键盘)读取一个字符,返回该字符的ASCII码。,例4. 4 输入两个字符,输出每个字符及其ASCII码。 #include “stdio.h“ main() char c, d; printf(“n enter two characters:“); /*提示用户*/ c=getchar( ); d=getchar( ); printf(“%c:%dn“, c, c); /*输出c中的字符及ASCII码*/ printf(“%c:%d“, d, d); ,运行结果: (在TC中演示其执行过程) enter two characters:AB A:65 B:66 特别提示:从键盘输入数据时,并不是键入一个字符后立即将其送入主机,而是等到按下回车键后,才能把这一行字符送入计算机的数据缓冲区,然后输入函数从缓冲区的第一个字符开始逐个读取数据。只有当缓冲区中无数据可读时,才等待用户输入。 思考: (1) 若输入:a b,结果如何?(注::a, b之间有一个空格,空格也是一个字符,与n一样是不可见字符),4.4 格式输入/输出函数,1. Printf()函数的一般调用格式: printf(格式控制字符串 , 输出表列); 例如: printf(“n enter name:“); printf(“n a=%d,b=%f “ , a, b); /* 设int a=3;float b=5;*/ printf(“%f“, a*b); 明确:格式控制符、普通字符的作用。 2. Scanf()的一般调用格式: scanf(格式控制串, 地址表列); 例如: scanf(“%d%f “ , /*不常用*/,1. 格式输出函数printf(),例4.5:打印华氏温度到摄氏温度的对应表: 华氏温度-摄氏温度 0 -17 20 -6 40 4 60 15 80 26 100 37 120 48 320 148,分析任务:从华氏温度0到320,每隔20度转换一次,转换的公式为: c = (5/9)(f-32) 其中,f为华氏温度,c为摄氏温度,#include main() float celsius; int fahrenheit; printf(“n F C “); fahrenheit = 0; while( fahrenheit =300 ) celsius = 5*(fahrenheit 32)/9; printf(“n %dt%f“ , fahrenheit , celsius); fahrenheit +=20; ,若要使输出更整齐些(比如右对齐),可将语句 printf(“n %dt%f“ , fahrenheit , celsius); 改为: printf(“n %3dt %6.2f “ , fahrenheit , celsius); 其中,%3d的含义为:按整型格式输出,域宽为3,并且右对齐。 %6.2f的含义为:按实型格式输出,域宽为6,且小数点后保留2位小数,右对齐。 若将%3d改为%-3d则在域宽范围内实现左对齐。 具体的格式说明符参见表4.1和表4.2,例4. 7 输出字符和字符串。 main() char ch=Y; /*定义一个字符数组 s, 并保存字符串“very good“*/ char s =“very good“; printf(“nch: %c, s: %s“, ch, s); Result: ch: Y, s: very good 程序中,输出项ch、s与控制项%c、%s一一对应,且类型匹配。,2. 格式输入函数 Scanf(),例4. 10 用scanf输入整型数据、实型数据。 #include main() int a, b; float x, y; scanf(“%d%d“, 运行结果: 12 24 (12与24之间用空格分开) 15,30 (注意两数间的逗号) a=12,b=24,x=15.000000,y=30.000000,例4.12:输入某商品的编号(整型)、类别(AZ字符型)、价格(实型),并输出该信息。 #include main() int num ; char class ; float price ; printf(“n enter number(AZ):“); scanf(“%d“ , ,特点:混合输入,有两种处理方法:一是在一个scanf()函数中实现所有数据的输入;二是将数值与字符分别输入,而不是用一个scanf()函数。通常采用第二种方法,用第一种方法输入时容易出错。 本程序中分别用scanf()和getchar()输入编号、价格和类别。 并且每次输入后用getchar() 读取多余的回车符,以免影响后面的正确输入。,4.5 顺序结构程序设计举例,例4. 15 交换两个整型变量的值。 分析:首先定义程序中要用到的变量,设两个整型变量为a、b。 然后设计算法:输入两个整数a、b 交换a、b的值 输出交换后的a、b的值。 其中,实现 的方法有两种: 一是用第三个变量c暂存其中一个数,如程序1。 二是不使用第三个变量,利用其中一个变量保存两数之和,通过减法来实现,如程序2。,程序1: main() int a, b, c; printf(“n enter 2 integers to a, b:“); scanf(“%d%d“, 运行结果: enter 2 integers to a, b:4 6 a=6, b=4 思考:若将三个交换语句的顺序调整,结果如何?,程序 2: main() int a, b, c; printf(“n enter 2 integers to a, b:“); scanf(“%d%d“, 运行结果同上。,例4. 17 输入一个数字符号,并转换成相应的整数输出。如读入字符8,转换成整数8输出。 分析:首先定义程序中要使用的变量,设字符变量ch 存放读入的字符,整型变量d存放转换后的整数。 然后设计算法: 输入一个字符给ch 将字符ch转换成对应的数值d 输出d。 其中第二步如何转换呢?利用ASCII码的编码规律:0 ,1,29的ASCII码值是连续的,即48、49、5057
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新能源汽车研发团队绩效奖励补充协议
- 2025年高级按摩考试题及答案
- 警察专业面试题及答案解析
- 下肢蜂窝织炎护理查房
- 消防安全检查培训教学课件
- 幼儿园泥工培训活动
- 妊高症病人的观察及护理
- 2025至2030中国贯叶连翘提取物行业产业运行态势及投资规划深度研究报告
- 2025至2030直接驱动主轴行业发展趋势分析与未来投资战略咨询研究报告
- 公司金融产品汇报
- 2025年部编版语文新教材三年级上册第六单元大单元教学及课时教案
- 贸易安全管理办法
- 国企总经理竞聘面试题8套和专业题22问及答案
- 酒店室内装饰工程施工组织设计方案
- 西学中考试题库及答案
- 设计色彩教学课件
- 公务摄影培训课件
- 电气工程设计课件
- 学校食堂诺如病毒防控培训
- 双膝关节骨性关节炎护理
- 乡镇财务培训教程课件
评论
0/150
提交评论