scanf加不加\n?
近两天用vs2013敲代码碰到的问题
关于scanf小括号中加不加\n的区别
例程序如下所示:
第一个程序:
- int main(){
- int coding = ;
- printf("你会去敲代码吗?(选择1 or 0):>");
- scanf_s("%d", &coding);
- if (coding == )
- {
- printf("坚持,你会有好offer\n");
- }
- else
- {
- printf("放弃,回家卖红薯\n");
- }
- return ;
- }
第二个程序:
- //int main(){
- // int coding = 0;
- // printf("你会去敲代码吗?(选择1 or 0):>");
- // scanf_s("%d\n", &coding);
- // if (coding == 1)
- // {
- // printf("坚持,你会有好offer\n");
- // }
- // else
- // {
- // printf("放弃,回家卖红薯\n");
- // }
- // return 0;
- //
- }
第一个不加\n的结果:
第二个加\n的,
运行结果:scanf中多敲了一个\n,运行时候就要多敲一个键加上回车,否则一直按回车键都将无法继续打印,而且第二个程序运行时任意输入两个数,运行结果只识别第一个数,与第二个输入的数无关,ps:6在程序中运行结果为“回家卖红薯“
而且,
\n换成“空格”也一样
原因:在此vs编译环境中,运行结果要多输入一个数,而且只有第一个输入的值影响程序结果,第二个数不影响程序
理解:加了一个\n代表要在新的换行里多输入一个代码,加了空格也是如此,同理也要多输入一个代码(但是输入代码不能为纯空格键),即%d后面为多输入的代码,不影响程序运行的结果。
结论:通常在scanf(“ “,);中,引号里不加\n。
scanf加不加\n?的更多相关文章
- shell脚本加不加export的区别
加了export: jackyyu@ubuntu:~$ cat 1.sh #!/bin/dash test=test echo ${test} echo ${TERM} TERM=dumb expor ...
- php的mysql语句里变量加不加单引号问题
第一种[{$_GET['id']}加不加单引号都能正常执行没问题] $sql = "select * from `news` where `id` = {$_GET['id']}" ...
- 编译程序加不加 -lpthread 的区别【转】
转自:http://www.cnblogs.com/Swartz/articles/3939382.html 作者:Lokki 出处:http://www.cnblogs.com/Swartz/ 欢迎 ...
- 类中定义成员方法。加不加public有什么区别?
class Trangle{ double sideA, sideB, sideC, area, length; boolean flag; Trangle(double a, double b, d ...
- python r r+;w w+;a a+;以及加不加b区别
#以下内容均在正常打开文件的情况下运行 一.列表格 模式 可做操作 若文件不存在 是否覆盖 r 只能读 报错 --- r+ 可读可写 报错 是 w 只能写 创建 是 w+ 可读可写 创建 是 a 只能 ...
- C#中引用类型的变量做为参数在方法调用时加不加 ref 关键字的不同之处
一直以为对于引用类型做为参数在方法调用时加不加 ref 关键字是没有区别的.但是今天一调试踪了一下变量内存情况才发现大有不同. 直接上代码,结论是:以下代码是使用了 ref 关键字的版本.它输出1 ...
- JavaScript函数后面加不加括号的区别
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 使用/调用 函数的时候, 前面加不加 对象或 this?
这个问题, 其实没有细想: 应该是这样的: (想明白了, 就会少很多困惑, 会对语言的把握 会 更深入更透彻) 任何一门 语言, (如果你自己去设计一门语言...). 都要规定 一些 "关键 ...
- proxy_pass反向代理配置中url后面加不加/的说明
在日常的web网站部署中,经常会用到nginx的proxy_pass反向代理,有一个配置需要弄清楚:配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把loca ...
随机推荐
- 第10组 Alpha冲刺(3/4)
队名:凹凸曼 组长博客 作业博客 组员实践情况 童景霖 过去两天完成了哪些任务 文字/口头描述 继续学习Android studio和Java 制作登录注册界面前端 展示GitHub当日代码/文档签入 ...
- Apache Kylin - 大数据下的OLAP解决方案
OLAPCube是一种典型的多维数据分析技术,Cube本身可以认为是不同维度数据组成的dataset,一个OLAP Cube 可以拥有多个维度(Dimension),以及多个事实(Factor Mea ...
- 系统性能工具篇(sar)
转自:系统性能工具篇(sar) 1. 介绍 内容很多 是sysstat软件包的一部分 自动运行:/etc/crontab/sysstat $ cat /etc/cron.d/sysstat # The ...
- Django实现自动发布(2视图-服务版本查找和新增)
前面做好了服务的管理,接下来是服务版本的管理,和服务类似,版本也有增删改查.先在服务的管理页面做一个入口,如下图: 需要在上一步的服务管理页面增加按钮.按钮方法,点击按钮跳转时要打开一个新的页面,所以 ...
- Win10登陆界面卡住,进去后无法打开网络相关的设置,谷歌浏览器无法上网
今天Win10抽风,进入登录页面输入用户名和密码之后,大约过了10分钟才进入桌面.重启后仍然如此. 经过调查,问题主要出在网络相关模块上,网络无法正常初始化,导致登录一直卡在网络初始化上. 解决方法如 ...
- Java:JSON和Map相互转换
Java:JSON与Map相互转换 需要jar包:jackson-core-2.6.0.jar,jackson-databind-2.6.0.jar,jackson-annotations-2.6.0 ...
- 使用CompletableFuture实现业务服务的异步调用实战代码
假如我有一个订单相关的统计接口,需要返回3样数据:今日订单数.今日交易额.总交易额. 一般的我们的做法是串行调用3个函数,把调用返回的结果返回给调用者,这3次调用时串行执行的,如果每个调用耗时1秒的话 ...
- Oracle中使用Table()函数解决For循环中不写成 in (l_idlist)形式的问题
转: Oracle中使用Table()函数解决For循环中不写成 in (l_idlist)形式的问题 在实际PL/SQL编程中,我们要对动态取出来的一组数据,进行For循环处理,其基本程序逻辑为: ...
- spring boot启动无法访问controller
如题,检测 一.启动类Application是不是在最上一级,默认扫描启动类平级和下级目录的bean 二.启用内置Tomcat,注释掉 scope <dependency> <gro ...
- Houdini Python开发实战 课程笔记
P2 + P3 + P4 + P5 - 基础: 1. Houdini中使用Python的地方 2. Textport:可使用cd.ls等路径操作的命令(命令前加%,可在python中使用) 3. So ...