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 ...
随机推荐
- Mongoose 入门以及实现数据的增、删、改、查
mongoose 介绍 Mongoose 是在 node.js 异步环境下对 mongodb 进行便捷操作的对象模型工具.Mongoose 是 NodeJS 的驱动,不能作为其他语言的驱动. Mong ...
- 作业:IEEE754浮点数
人工转换: 5.75转换成二进制:101.11右移2位,补0:1.0111000000000000000000000000000000000000000000000000.10000000001 16 ...
- FZU Monthly-201909 获奖名单
FZU Monthly-201909 获奖名单 冠军: 空缺 一等奖: 张咏真 S031802540 孔铖晗 S031802115 二等奖: 苏锦程 S031802325 林柄灿 S031802117 ...
- Hyper-V中安装CentOS7设置静态ip并且可以连接外网
https://blog.csdn.net/xj19940904/article/details/89165002 https://blog.csdn.net/u011598235/article/d ...
- Emotion Recognition Using Graph Convolutional Networks
Emotion Recognition Using Graph Convolutional Networks 2019-10-22 09:26:56 This blog is from: https: ...
- Golang 实现UDPServer并发送消息到ActiveMQ
示例代码 package main import ( "net" "os" "github.com/gpmgo/gopm/modules/goconf ...
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器功能简介---视频直播、直播鉴权(如何完美将EasyDSS过渡到新版)
作为RTMP流媒体服务器,接受RTMP推流.进行实时的直播流分发是EasyDSS流媒体服务自身一大核心功能.写本篇博文的一个目的是向大家介绍EasyDSS新版的直播间.匿名直播.和虚拟直播的功能, 另 ...
- 快速安装Python3+RobotFrameowork自动化测试环境
1. 安装Python3(笔者这里安装的Python3.6.5) 安装 robotframework : pip install robotframework -U pip install rob ...
- Docker容器中启动OPMS项目
1.上传opms项目包到Linux下面 2.解压赋权 3.执行文件即可 4.浏览器输入服务器ip地址加上8088端口号
- Dockerfile语法梳理
Dockerfile语法 我们先来看一下上篇的 Dockerfile #获取base image FROM adoptopenjdk/openjdk8:latest #类似于执行 linux指令 RU ...