版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章顺序结构第三节数据输入C语言中常用的数据输入函数为:scanf()scanf()的一般调用形式Scanf(格式控制,输入项表);格式控制串的作用是指定输入时的数据转换格式,由“%”开始,其后是格式描述字符。输入项为合法的地址表达式。如:若i为int型变量,j为float型变量,k为char型变量,可以通过调用scanf()函数完成给以上变量进行输入数据。
scanf(“%d%f%c”,&i,&j,&k);&:求地址运算符号&i:取变量i的地址scanf()格式描述字符说明c:一个字符d:十进制整数f(1f):单(双)精度i:整型,不是八、十六进制e(1e):单(双)精度o:八进制x:十六进制u:无符号十进制整数s:字符串注意:a、long或double必须加l。b、在格式字符前可用一个整数指定输入数据所占宽度,但不可指定小数位数。c、格式说明个数应与输入项个数相同。d、当输入数据少于输入项时,程序等待输入,当输入数据多于输入项时,多余的数据并不消失,而是留作下一个输入操作时的输入数据。e、scanf调用结束后将返回一个值,其值等于输入值的输入项个数。f、格式符之间也可以逗号隔开各输入格式符,但真正输入时必须要用逗号将各输入值隔开。(不用逗号隔开时,输入时值必须用空格或TAB隔开)。从键盘输入数据输入数据时,最后一定要按下回车键,scanf才能接受从键盘输入的数据。注意:在scanf格式控制符中不要用\n,因为\n代表换行,本身scanf就要求以回车结束,再加上\n后,会出现必须输入两次才能结束的情况。a、输入的数据多于scanf要求输入的数据时,多余时作为下一次输入操作的输入数据b、格式控制串中插入其它字符,注意:scanf函数的格式控制字符串是为了输入数据用的,无论其中有什么字符,也不会输出到屏幕上,因此要想在屏幕上输出提示信息,应首先使用printf函数输出。(人性化)以下为示例文件3-4-1.c部分程序inta1,a2,a3;printf("请输入a1、a2和a3的值\n");scanf("%d%d%d",&a1,&a2,&a3);printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3);c、输入数据的数据用间隔符(空格,制表符)隔开。见示例文件3-4-2.c#include<stdio.h>/*示例文件3-4-2.c*/voidmain(){inti,j;floata,b;charx,y;printf("请输入i,j,a,b,x,y的值\n");scanf("%d%d%f%f%c%c",&i,&j,&a,&b,&x,&y);printf("i=%d,j=%d,a=%f,b=%f,x=%c,y=%c\n",i,j,a,b,x,y);}注意数值数据输入时的间隔,字符数据输入前不能加间隔符。d、指定输入数据所占宽度(通常不指定)。参照示例文件分析,输入12345.678后,变量a,b,c内输入的数据是多少?#include<stdio.h>/*示例文件3-4-3.c*/voidmain(){inta;floatb;doublec;printf("请输入a,b,c的值\n");scanf("%3d%5f%5lf",&a,&b,&c);printf("a=%d,b=%f,c=%lf\n",a,b,c);}e、跳过某个输入数据在%和格式字符之间加入*号,作用是跳过对应输入的数据。参照示例文件3-4-4.c输入12233445#include<stdio.h>voidmain(){inta1,a2,a3;printf("请输入值\n");scanf("%d%*d%d%d",&a1,&a2,&a3);printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3);}f、在格式控制字符串中插入其他字符注意:在scanf()中格式控制字符不会输出在屏幕上,而是要求输入数据时按照一一对应的位置原样输入这些字符参照示例文件3-4-5.c#include<stdio.h>voidmain(){inta;floatb;scanf("a=%d,b=%f",&a,&b);printf("a=%d,b=%f\n",a,b);}输入:a=20,b=13.345注意:scanf(“%d,%d”,&i,&j);对于上述语句,如果想将13和24输入给i和j,以下三种输入形式是可以的
13,2413,2413,24但如果是13,24这种输入形式则是错误的。字符输入函数:getchar()函数作用是从终端设备接收一个输入字符。一般格式为:getchar()它的值就是程序运行时由使用者从键盘输入的字符,在输入时,空格、回车符都将作为字符读入,而且只有在使用者按下Enter键时,读入才开始执行。#include<stdio.h>/*示例文件3-4-6.c*/voidmain(){charx,y,z;x=getchar();y=getchar();z=getchar();printf("\n");putchar(x);printf("\n");putchar(y);printf("\n");putchar(z);printf("\n");}[例]若变量已正确说明为float类型,要通过以下的输入语句将值10.000000赋给变量a、22.000000赋给变量b、33.000000赋给变量c,以下不正确的输入形式是()scanf(“%f%f%f”,&a,&b,&c);A)102233B)10.0,22.0,33.0C)10.022.033.0D)102233[例]有以下程序#include<stdio.h>voidmain(){chara,b,c,d;c=getchar();d=getchar();scanf(“%c%c”,&a,&b);putchar(a);putchar(b);printf(“%c%c”,c,d);}程序运行后,若从键盘输入(从第1列开始)9876则输出结果为()答案:879设计作业:1、设计程序完成从键盘输入两个整数,交换两个整数并输出到屏幕上。2、设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 剧院暖气安装施工合同
- 租赁合作保证金协议书
- 娱乐场所合同档案维护策略
- 环保企业文职人员劳动合同
- 酒店式公寓租赁协议及家电清单
- 奶茶加盟连锁合作合同
- 通信行业招投标策略分享宣讲
- 城市绿化工程招投标审核表
- 消防设施简易施工合同协议书
- 二零二四年度房地产公司装修装饰合同标的详细
- Unit+1+Knowing+me,+knowing+you+Developing+ideas课件【知识精讲精研】高中英语外研版(2019)必修第三册
- T SISTB002-2020 智慧楼宇评价指标体系3.0
- 例谈思政教育在中学数学中的融合与实施 论文
- 初中数学课件《切割线定理》
- 相似品管理规范
- 老版入团志愿书表格(空白)
- 陶棍幕墙施工方案
- 科学版五年级《体育与健康基础知识-体育活动与营养》说课稿
- 混凝土减水剂测试指标培训课件
- 走进舞蹈艺术-首都师范大学中国大学mooc课后章节答案期末考试题库2023年
- 高标准农田跟踪审计投标合理化建议
评论
0/150
提交评论