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

【时时三省】(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

 

 

相关文章:

  • 在Springboot中集成unihttp后应用无法启动的解决办法
  • IoTDB TTL不生效
  • 3月21日星期五今日早报简报微语报早读
  • 精密校平机:工业制造的精度之源
  • mac上安装nvm及nvm的基本语法使用!!
  • 安装CentOS7
  • 在Linux系统安装Ollama两种方法:自动安装和手动安装,并配置自启动服务
  • 卡特兰数在数据结构上面的运用
  • 阿里云服务器部署 五 Nginx + springboot
  • 使用Systemd管理ES服务进程
  • Python实验:Python语言分支循环结构应用
  • 未来科幻赛博朋克风品牌电影游戏设计装饰英文字体安装包 Heat Robox – The Ultimate Futuristic Display Font
  • Android java 设计封装增强型WebView组件
  • HTTPS 加密过程详解
  • 关于Unity的CanvasRenderer报错
  • spring-tx笔记
  • 关于多目标进化算法评估指标
  • 可编辑52页PPT | 智慧园区安全生产顶层设计方案
  • 在C语言基础上学Java【Java】【二】
  • 工业软件的破局与重构:从技术依赖到自主创新的未来路径
  • 让“五颜六色”面孔讲述上海故事,2025年上海城市推荐官开启选拔
  • 多地再发网约车从业及投资风险提示:避免盲目花费大笔资金“购车”入行
  • 欧盟公布对美关税反制清单,瞄准美国飞机等产品
  • 经济日报整版聚焦“妈妈岗”:就业路越走越宽,有温度重实效
  • 中美“第二阶段”贸易协定是否会在会谈中提出?商务部回应
  • 习近平出席俄罗斯总统举行的欢迎仪式