C语言程序设计 课件 任务1.6 输入输出语句_第1页
C语言程序设计 课件 任务1.6 输入输出语句_第2页
C语言程序设计 课件 任务1.6 输入输出语句_第3页
C语言程序设计 课件 任务1.6 输入输出语句_第4页
C语言程序设计 课件 任务1.6 输入输出语句_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

C语言程序设计基础与实践模块一编程技术基础任务1.6输入输出语句C语言程序设计基础与实践课程组04技能点拓展03技能点详解02技能点分析目录CONTENTS任务1.6输入输出语句01问题引入05技能点检测一问题引入

人机互动技术是指通过计算机输入、输出设备,以有效的方式实现人与计算机对话的技术。在程序的运行过程中,往往需要由用户输入一些数据,这些数据经机器处理后要输出反馈给用户。

通过数据的输入输出来实现人与计算机之间的交互,所以在程序设计中,输入输出语句是一类必不可少的重要语句。04技能点拓展03技能点详解02技能点分析目录CONTENTS01问题引入05技能点检测任务1.6输入输出语句二技能点分析1.了解c语言的输入输出语句2.掌握输入输出语句的格式化控制符学习目标1.C语言中最基本的输入输出函数有哪些?这些函数作用是什么?2.写出printf()函数和scanf()函数的一般格式。3.在程序使用printf()函数应注意哪些问题?学期预习04技能点拓展03技能点详解02技能点分析目录CONTENTS01问题引入05技能点检测任务1.6输入输出语句三技能点详解——1putchar函数

putchar()函数的作用是向终端输出一个字符。其基本格式是:putchar(ch);或putchar(i);

其中ch可以是一个字符变量或字符常量,也可以是一个转义字符。当参数为整数i时,将输出i作为十进制ASCII码所对应的字符。

在程序中使用putchar()函数时注意以下两点:(1)putchar()函数只能用于单个字符的输出,且一次只能输出一个字符。(2)在程序(或文件)的开头加上编译预处理命令,即:#include"stdio.h"或#include<stdio.h>,表示要使用的函数,包含在标准输入输出头文件(stdio.h)中。三技能点详解——2printf函数

printf()函数的作用是向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。printf()函数的一般格式如下:printf("格式字符串"[,输出项表]);1)格式字符串“格式字符串”也称“格式控制字符串”,可以包含三种字符:格式指示符、转义字符和普通字符。三技能点详解——2printf函数1)格式指示符由“%”和格式字符组成,如%c,%d等,它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的。常用的格式字符及其含义如表1.6.1所示。表1.6.1printf函数格式字符表格式字符含义格式字符含义c字符s字符串d带符号十进制整数u无符号十进制整数i带符号十进制整数x无符号十六进制整数(小写x)f十进制浮点数X无符号十六进制整数(大写X)e科学表示(用e表示指数部分)o无符号八进制整数E科学表示(用E表示指数部分)p指针ge或f中选择短格式n已输出的字符数GE或f中选择短格式%输出%号三技能点详解——2printf函数格式字符d──以带符号的十进制形式输出整数格式字符c──输出一个字符格式字符s──输出一个字符串格式字符f──以小数形式、按系统默认的宽度,输出单精度和双精度实数。(2)转义字符

在前面任务1.3的字符常量中已详细地介绍了转义字符,表1.4.2列出了常用转义字符及其含义,如printf()函数中的'\n'就是转义字符,输出时产生一个“换行”操作。(3)普通字符

除格式指示符和转义字符之外的其它字符。格式字符串中的普通字符,原样输出。三技能点详解——2printf函数在程序中使用printf()函数时注意以下几点:(1)printf()可以输出常量、变量和表达式的值。从功能角度来看,printf()函数可以完全代替putchar()函数。(2)格式字符x、e、g可以用小写字母,也可以用大写字母。使用大写字母时,输出数据中包含的字母也大写。除了x、e、g格式字符外,其它格式字符必须用小写字母。例如,%f不能写成%F。(3)格式字符紧跟在“%”后面就作为格式字符,否则将作为普通字符使用(原样输出)。例如,“printf("c=%c,f=%f\n",c,f);”中的第一个c和f,都是普通字符。三技能点详解——3getchar函数getchar函数的作用是从终端(或系统隐含指定的输入设备)输入一个字符。getchar函数没有参数,其一般形式为:getchar();函数的值就是从输入设备得到的字符。在程序中使用getchar()函数时注意以下两点:(1)getchar()函数只能用于单个字符的输入,一次输入一个字符。(2)程序中要使用getchar()函数,必须在程序(或文件)的开头加上编译预处理命令:#include"stdio.h"或#include<stdio.h>三技能点详解——4scanf函数scanf()函数的一般格式如下:scanf("格式字符串",输入项首地址表);1)格式字符串

格式字符串可以包含3种类型的字符:格式指示符、空白字符(空格、Tab键和回车键)和普通字符。2)输入项首地址表由若干个输入项首地址组成,相邻2个输入项首地址之间,用逗号分开。三技能点详解——3getchar函数3)使用scanf函数时应注意的问题(1)scanf函数中的“格式控制”后面应当是变量地址,而不是变量名。(2)如果在“格式控制”字符串中除了格式说明以外还有其他字符,则在输入数据时在对应位置应输入这些字符。例如:scanf(“%d,%d”,&a,&b);(3)如果相邻两个格式指示符之间,不指定数据分隔符(如逗号、冒号等),则应在输入第一个数后,至少用一个空格,或者Tab键,或者按回车,再输入下一个数。(4)在用“%c”格式输入字符时,空格字符和“转义字符”都作为有效字符输入。案例1.6.1getchar()&putchar()函数的使用编写程序,要求实现从键盘输入一个大写英文字母,然后在屏幕上输出它的小写形式。/***********************************************内容简述:在屏幕中输入输出任意一个字符。***********************************************/#include

<stdio.h>//包含标准输入输出函数的头文件

voidmain(void){

charch;

printf("请输入大写字母:");ch=getchar();//从键盘中获取输入的第一个大写字母并赋值给chprintf("读取到的大写字母是:");putchar(ch);//输出读取到的大写字母printf("\n");printf("对应的小写字母是:");putchar(ch+32);//输出一个小写字母printf("\n");}三技能点详解——案例案例1.6.2scanf()&printf()函数的使用编写一个程序从键盘输入圆柱体的半径r和高度h,计算其底面积和体积。(结果保留2位小数)/**************************************************************内容简述:

从键盘输入圆柱体的半径r和高度h,计算其底面积和体积。**************************************************************/#include

<stdio.h>

voidmain(void){

floatpi=3.1415926;

floatr,h,S,V;

printf("请输入r,h:"); scanf("%f,%f",&r,&h);//键盘输入圆半径r和高度 S=pi*r*r;//计算底面圆的面积S的值 V=S*h;//计算圆柱体体积V的值 printf("底面积=%.2f\t圆柱体积=%.2f\n",S,V);}三技能点详解——案例04技能点拓展03技能点详解02技能点分析目录CONTENTS01问题引入05技能点检测任务1.6输入输出语句四技能点拓展——1printf函数的重定向

在stdio.h头文件中声明了printf函数,所以在C语言程序中调用printf函数时必须在程序头部包含stdio.h头文件,但printf函数的定义是根据参数字符串长度循环调用fputc函数用作逐个字符输出,而fputc函数输出的字符默认定向输出的标准设备是显示器,所以我们要想printf函数输出到其他设备上,必须重新定义fputc函数。fputc函数是带有weak弱类型关键字的弱定义函数,允许用户重新定义。在MicroLib的stdio.h中,fputc()函数的原型为:intfputc(intch,FILE*stream)如使用printf函数输出到某种单片机的串口,需要将fputc里面的输出指向串口,这一过程就称为重定向。四技能点拓展——1printf函数的重定向如果使用单片机的串口1(USART1)输出字符,用户自定义的发送函数为USART_SendChar(),则printf函数重定向的代码如下:#include

<stdio.h>intfputc(intch,FILE*stream){

/*USART_SendChar()为串口发送字符函数*/USART_SendChar(USART1,(uint8_t)ch);

returnch;}

有些单片机的厂家定义了串口发送字符的标准库函数,如HAL_UART_Transmit(),那么调用这个串口发送函数的printf函数重定向的代码就可写成:#include

<stdio.h>intfputc(intch,FILE*f){HAL_UART_Transmit(&huart1,(uint8_t*)&ch,1,0xFFFF);

returnch;}四技能点拓展——1printf函数的重定向四技能点拓展——2gets函数与puts函数char*gets(char*s)函数从stdin读取一行到s所指向的缓冲区,直到一个终止符或EOF。intputs(constchar*s)函数把字符串s和一个尾随的换行符写入到stdout

温馨提示

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

评论

0/150

提交评论