第三章 程序的基本结构和语句(四)

本文介绍了数据输入在C++编程中的基本概念,重点讲解了getchar函数和scanf函数的使用,包括其格式、注意事项以及scanf_s的替代作用。强调了在实际项目中scanf的局限性及其在学习过程中的价值。
摘要由CSDN通过智能技术生成

二、数据的输出与数据的输入

2、数据的输入

数据输入不常用,简单掌握即可,因为书写真正项目代码时,一般不会从键盘上输入数据 ,更何况一旦输入错误还可能 会导致程序执行出现异常。但作为学习的一部分,还是有必要掌握一下这部分内容, 方便以此为基础,学习更多、更深入的新知识。

1)getchar函数

用于等待用户从键盘上输人一个字符,按 Enter键后程序才会继续执行。

格式:

getChar(); 

例:

2)scarf函数

这是一个格式化输入函数,用于从键盘输入任何类型的一到多个数据。

格式:

scanf(格式控制字符串,地址列表) ; 

这个函数的格式和 printf函数非常类似。特别值得一提的是,当用户从键盘上输入数据时,最后都需要输入回车表示整个输入数据的结束。

例:让用户从键盘输入三个数据,并分别保存到 a、b,c变量中,d%是按照十进制整型数据输入,三个待输入的数据之间可以用空格、回车、Tab键分隔,但不可用逗号分隔,否则会得到错误的程序执行结果。

例:在 scanf 函数的格式控制字符串中加入了逗号,那么在输入数据的时候 ,也要在对应的所输入的数据之间输入逗号作为分隔,否则会得到错误的程序执行结果。

例:在 scanf 函数的格式控制字符串中加入了冒号,那么在输入数据的时候 ,也要在对应的所输入的数据之间输入冒号作为分隔,否则会得到错误的程序执行结果。

scanf函数不仅支持 %d 格式字符,还支持其他的多种格式字符,但其他的格式字符都不常用,想了解更多信息,可以去百度搜索scanf格式字符。

注意:

(1)scanf函数圆括号中的第二个参数开始,用的是变量地址 ,千万不要丢掉&符号,否则程序要么编译出错无法执行,要么执行后会报错崩溃。

(2)scanf是一个非常容易用错的函数,尤其是输人多个数据时 ,很容易因为输入 的格 式问题导致对应的变量并没有得到期望的结果 ,往往会发现程序最终执行不正确却不知道问题出在哪里,所以,建议在 scanf语句之后,立即稍加 printf输出语句,通过输出查看通过 scanf函数输入的变量值是否和预期的完全一样。

例:下面代码中第一个 printf语句就是用于验证通过 scanf输入的变量值是否是所期望的。

(3)当输入回车符后,整个 scanf 语句输入结束, 此时如果还没输入完数据 ,则程序肯定不会按预期产生正确的结果。比如本来要输入三个变量的值 ,结果刚输入两个变量的值就按下了Enter键来结束输入。

(4) scanf函数具有一定的学习价值,但在实际工作中几乎没有实用价值。

(5)不同的C++开发软件的版本,如果出现错误提示:error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead... 这个错误的大概意思是系统认为 scanf 函数不安全,建议用 scanf_s替代。这是开发软件版本问题,如果不想出现这个报错,可以在文件的头部#include下面增加一行代码就可以忽略这个警告信息了。

#pragma warning(disable:4996)

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值