1. scanf 函数是有返回值的,它的返回值可以分成三种情况

1) 正整数,表示正确输入参数的个数。例如执行 scanf("%d %d", &a, &b);

如果用户输入"3 4",可以正确输入,返回2(正确输入了两个变量);

如果用户输入"3,4",可以正确输入a,无法输入b,返回1(正确输入了一个变量)。

2) 0,表示用户的输入不匹配,无法正确输入任何值。如上例,用户如果输入",3 4",返回0。

3) EOF,这是在 stdio.h 里面定义的常量(通常值为-1),表示输入流已经结束。在Windows下,用户按下CTRL+Z(会看到一个^Z字符)再按下回车(可能需要重复2次),就表示输入结束;Linux/Unix下使用CTRL+D表示输入结束。

所以可以使用下面的代码来处理输入:

while (scanf("%s %c %c", str, &oldchar, &newchar) == 3) /* 或!= EOF , 但前者更好 */

{

; //处理

}

2. 为什么前面 scanf 的格式串里面,%s 和 %c 中间需要空格呢?

那是因为如果没空格的话。。。oldchar输入的就是空格了= =.

3. 顺便说一下,printf 的返回值是输出的字符数,例如,printf("1234")的返回值是4,而printf("1234\n")的返回值是5。

C语言scanf返回值怎么写,C语言 scanf 返回值相关推荐

  1. c语言编程求lnx怎么写,c语言里ln怎么写

    C语言写多项式相加怎么写? 分都不给.算了,以前写了个就给你吧./*此程序结构比较清晰,用单链表实现了多项式的加法.具体原理可以参考清华大学严蔚敏数据<结构C语言版>第二章注意:此程序假设 ...

  2. 【使用VS2022写c语言】第一次使用VS2022写c语言代码可能会遇到的问题及解决方法。

    在看了不少b站上的VS2022安装教程之后,最终也是成功安装好了VS2022,但是在后续的使用过程中又遇到了不少的问题. 1.作为大一新生,平时最多的就是写一些c语言的题目,然后VS2022上面写c语 ...

  3. c语言10位域宽怎么写,C语言格式修饰符洋解

    格式修饰符: 最小域宽限定符: 百分号和格式代码间的整数称为最小域宽限定符,它保证输出时用空格填充以达到最小域宽.默认为空格,如果想用0来填充,那么在域宽限定符前放一个0.如: %05d将对不是五位数 ...

  4. python计算分段函数输出x+2的值怎么写_c语言求分段函数分段函数求解:输入 x ,计算并输出 y 的值:y=x+100 ( 当 x < 20) y= x ( 当...

    题目: c语言求分段函数 分段函数求解:输入 x ,计算并输出 y 的值: y=x+100 ( 当 x < 20) y= x ( 当 2 0 ≤ x ≤ 100) y=x-100 ( 当 x & ...

  5. android系统语言切换及系统烧写默认语言设置

    Android 4.3 1 . 语言全局切换 重写Setting后需要全局切换语言(中英.中阿等),查看原生的Setting代码,抽出切换语言部分,具体实现如下: zh_CN,这是原始localeSt ...

  6. c语言的.h文件怎么写,c语言自己写一个.h的头文件

    首先放上三段简单的源码 main.c 里面的内容 #include"stdio.h" #include "lib.h" int main(){ int a,b, ...

  7. c语言用什么字体输入法,写c语言代码的时候一般用什么输入法

    这是基本的框架,C语言对图形界面支持不好,请问你还要继续让我写下去吗#include "stdafx.h"#include "stdio.h"int main( ...

  8. c语言中字母用什么,写c语言代码的时候一般用什么输入法

    这是基本的框架,C语言对图形界面支持不好,请问你还要继续让我写下去吗#include "stdafx.h"#include "stdio.h"int main( ...

  9. c语言里迭代函数怎么写,C语言,迭代与递归

    概念 迭代(iteration)是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果.每一次对过程的重复称为一次"迭代",而每一次迭代得到的结果会作为下一次迭代的初始值. 递归 ...

最新文章

  1. (C++)类内运算符重载时:此运算符函数的参数太多/少
  2. 安装vim-go插件之后遇到的gopls警告信息不消失的问题的解决方法
  3. LeetCode Python题解(一)----双指针法
  4. 玩转Mixly – 6、Arduino AVR编程 之 文本
  5. 抖音直播间弹幕protocbuf分析
  6. redo日志写入为什么“俩阶段提交”
  7. idea建立一个java工程_IntelliJ IDEA(三、各种工程的创建 -- 之一 -- 创建一个简单的Java工程)...
  8. 学习Java编程面向对象的五大基本原则
  9. 萝卜源码前后端源码 附打包APP的教程
  10. 语言 标签倾斜 绘图_一文搞懂ggplot2:老板再也不用担心我的科研绘图
  11. jstree中json data 的生成
  12. 线性代数:矩阵及其运算
  13. 【数据结构】栈的基本操作
  14. 复杂性理论:科学方法的第三个梯级
  15. CSS实现导航条图片的翻转菜单
  16. 实训日记(二)——分镜
  17. 硬盘SMART信息数据结构
  18. 物联网教程 demo1效果
  19. Chrome浏览器和Edge浏览器永久开启始终允许Flash插件
  20. 图像scale与相机参数_Camera 图像处理原理分析

热门文章

  1. 2023年做什么行业赚钱容易有前景
  2. 使用WebCollector爬取时光网电影数据
  3. 让您的应用兼容 Android Oreo
  4. iis信息服务器 service unavailable,网站出现service unavailable的解决方法
  5. AndroidStudio中FindBugs的简单使用教程
  6. 计算机文档xsl,XSL文件扩展名 - 什么是.xsl以及如何打开? - ReviverSoft
  7. Andy:创业三年的几个感悟
  8. JFreeChart初学
  9. 微软IE9开发者预览版提供下载 支持HTML5
  10. fread读文件读不完全解决