当前位置: 首页 > article >正文

【时时三省】(C语言基础)习题2 scanf函数

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省

用下面的scanf函数输入数据,使a = 3,b = 7,x = 8.5,y = 71.82,c1 = 'A',c2 ='x'在键盘上应如何输入?

分析第一个 scanf 函数:

第一个 scanf 函数为 scanf("a=%db=%d",&a,&b); 。

它的格式要求输入的内容必须严格按照 a=数字b=数字 的形式,这样才能正确地将数字分别赋值给 a 和 b 。

要使 a = 3 , b = 7 ,那么在键盘上应输入 a=3b=7 。这里注意,中间没有空格,因为格式字符串中没有规定空格。如果输入了空格, scanf 函数会认为输入不符合格式要求,导致数据赋值错误。

分析第二个 scanf 函数:

第二个 scanf 函数为 scanf("%f%e",&x,&y); 。

它要求输入两个浮点数, %f 用于接收一般形式的浮点数, %e 用于接收指数形式的浮点数。

要使 x = 8.5 , y = 71.82 ,那么在键盘上接着输入 8.5 71.82 。这里两个数之间用空格隔开,因为格式字符串中两个格式控制符之间没有其他特殊字符,所以默认用空格分隔两个输入值。如果不隔开, scanf 函数会将连续输入的字符当作一个整体来解析,导致数据赋值错误。

分析第三个 scanf 函数:

第三个 scanf 函数为 scanf("%c%c",&c1,&c2); 。

它要求输入两个字符,并且会读取输入缓冲区中的字符。

要使 c1 = 'A' , c2 = 'a' ,在输入完前面的数字后,紧接着输入 Aa ,中间不要有空格。因为如果有空格,空格也会被 c1 读取,导致 c1 为空格, c2 为 A ,不符合要求。

所以,在键盘上应按如下方式输入

a=3b=7 8.5 71.82Aa

 

 


http://www.kler.cn/a/595710.html

相关文章:

  • Pytorch使用手册—自定义 C++ 和 CUDA 运算符(专题五十一)
  • 用AI优化云平台上的企业客服通话满意度和工单解决效率(上)
  • docker compose启动ollama+openweb ui,本地大模型十分钟搭建,速度主要取决于网速
  • windows 平台编译openssl
  • 击退手抖困扰:全面解析健康护理指南
  • 小程序API —— 52 小程序界面交互 - 模态对话框 - 消息对话框
  • Windows 图形显示驱动开发-WDDM 2.9功能- 支持跨适配器资源扫描 (CASO)(二)
  • 基于FPGA频率、幅度、相位可调的任意函数发生器(DDS)实现
  • hexo+butterfly博客功能完善和美化(三)---评论功能载入
  • C#Dictionary值拷贝还是引用
  • IDEA导入jar包后提示无法解析jar包中的类,比如无法解析符号 ‘log4j‘
  • 流式语音识别概述-paddlespeech
  • Solana Anchor 程序接口定义语言(IDL)
  • 【回归算法解析系列09】梯度提升回归树(GBRT, XGBoost, LightGBM)
  • Metasploit 跳板攻击
  • StarRocks 升级注意事项
  • django怎么配置404和500
  • VLAN综合实验报告
  • 【 Kubernetes 风云录 】- MutatingWebhook 实现自动注入
  • 解决 SQL Server 日常使用中的疑难杂症,提供实用解决方案