摸不着头脑啊 2022-03-30 00:57 采纳率: 66.7%
浏览 46
已结题

cin,cout与scanf、printf的区别

img


代码只由scanf改cin,printf改cout其余不变就可以通过oj,没有改的时候通过不了,这是为什么呀??

  • 写回答

3条回答 默认 最新

  • CSDN专家-link 2022-03-30 08:22
    关注

    这个说明一下,scanf对输入数据的格式要求比较严格,如果你写%d,就只能输入32位以内的整数变量;如果你写%f,就只能输入float型变量;如果你写%lf,就只能输入double型变量等等。你用错类型或变量,输入结果都是错误的。而cin要智能很多,能够自行判断输入数据和变量类型,只要变量类型足够在输入值的有效范围,就可以完成正确输入。
    就你这代码来说。long long类型,用scanf输入时,必须指定为%lld才可以正确输入;但用cin时,只需要输入的数在long long范围内,就可以输入到变量内,不需要显式指定变量的类型。
    希望有所帮助

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 创建了问题 3月30日

悬赏问题

  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 qgcomp混合物线性模型分析的代码出现错误:Model aliasing occurred
  • ¥100 已有python代码,要求做成可执行程序,程序设计内容不多
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助
  • ¥15 STM32控制MAX7219问题求解答
  • ¥20 在本地部署CHATRWKV时遇到了AttributeError: 'str' object has no attribute 'requires_grad'