满意答案

538084otb

2017.02.21

采纳率:53%    等级:8

已帮助:61人

scanf在不同编译器上传参顺序不一样,大部分都自右向左 ,但有些编译器我无

法找到规律

scanf("%3c%2c",&ch1,&ch2);

printf("%c,%c",ch1,ch2);

以上两句执行输入:abcde

在VC,TC 这两个编译器上都能正常输出 a,d

但是在MinGW及linux下gcc编译器输出结果是e,d,请问这两种编译器是什么原理或者规律

为了推算规律,我试了如下的程序:

1。 scanf("%3c%2c%4c",&ch1,&ch2,&ch3);

printf("%c,%c,%c",ch1,ch2,ch3);

测试输入数据:1234567890 输出结果:8,7,6

2。 scanf("%3c%2c%4c%2c",&ch1,&ch2,&ch3,&ch4);

printf("%c,%c,%c,%c",ch1,ch2,ch3,ch4);

测试输入数据:1234567890abcdefg 输出结果:8,7,a,0

3.scanf("%3c%2c%4c%2c%3c",&ch1,&ch2,&ch3,&ch4,&ch5);

printf("%c,%c,%c,%c,%c",ch1,ch2,ch3,ch4,ch5);

测试输入数据:1234567890abcdefg 输出结果:8,7,d,c ,b

4.scanf("%3c%2c%4c%2c%3c%5c",&ch1,&ch2,&ch3,&ch4,&ch5,&ch6);

printf("%c,%c,%c,%c,%c,%c",ch1,ch2,ch3,ch4,ch5,ch6);

测试输入数据:1234567890abcdefghijklmn 输出结果:8,i,h,g ,f ,e

5.scanf("%3c%2c%4c%2c%3c%5c%2c",&ch1,&ch2,&ch3,&ch4,&ch5,&ch6,&ch7);

printf("%c,%c,%c,%c,%c,%c,%c",ch1,ch2,ch3,ch4,ch5,ch6,ch7);

测试输入数据:1234567890abcdefghijklmn 输出结果:8,i,h,g ,f ,k ,j

6.scanf("%3c%2c%4c%2c%3c%5c%2c%3c",&ch1,&ch2,&ch3,&ch4,&ch5,&ch6,&ch7,&ch8);

printf("%c,%c,%c,%c,%c,%c,%c,%c",ch1,ch2,ch3,ch4,ch5,ch6,ch7,ch8);

测试输入数据:1234567890abcdefghijklmn 输出结果:8,i,h,g ,f ,n ,m ,l

由此可见lz问这个问题其实意义不太大。但是scanf("%3c",&a)可以用来输入一个数组的数据,此时a必须定义为char类型的数组

00分享举报

c语言scanf %4c,scanf(%3c%4c,a,b);当输入ABCDEFGH时 a b的值分别是?怎么来的?相关推荐

  1. c语言putchar和scanf,C语言学习——getchar()、putchar()、scanf和printf用法

    C语言学习--getchar().putchar().scanf和printf用法 在C语言中,数据的输入输出是利用系统函数来实现的.设计人员只要调用相关的系统函数,就可以完成各种数据的输入输出工作. ...

  2. C语言基础之--scanf函数

    写代码的时候,我们可以看得出,几乎每一个C程序都会包括输入输出.输入输出是程序中最基本的操作之一.C语言本身并不提供输入输出的语句,输入输出操作是由C标准函数库中的函数来实现的.今天就先说说输入:sc ...

  3. C语言scanf fgets,C语言中输入函数(scanf()、fgets()和gets())的区别详解

    前言 大家都知道在C语言中,有三种主要的输入函数:scanf(),fgets()以及gets().他们的使用方法及注意事项如下: 1.scanf() 它是一种格式化的输入方式,可一次性按照规定的格式输 ...

  4. c语言程序输入与输出函数,C语言printf()和scanf()函数?其实就是输入输出

    在解释这两个函数之前,为了方便大家更容易理解,我们先来讲讲下面的这幅图. 这个图中的例子其实很简单,我们就是把题目通过输入设备(例如键盘鼠标)传输到计算机中,然后让计算机进行运算得出结果,再然后把结果 ...

  5. 黑马程序员--C语言基础之--scanf函数

    ------IOS培训期待与您交流! ------- 写代码的时候,我们可以看得出,几乎每一个C程序都会包括输入输出.输入输出是程序中最基本的操作之一. C语言本身并不提供输入输出的语句,输入输出操作 ...

  6. c语言怎么用scanf输入字母,c语言输入字符串(c语言怎么用scanf输入字符串)

    但是实际操作发现我的字符串无论输入的多长多短,都是输入的什么输出的就. 在C语言中,输入输出字符串有以下两种方式:1 用scanf/printf输入输出.scanf/printf是C语言的格式化输入输 ...

  7. c语言中scanf(%7.2f,a);合法吗,C语言,语句scanf(7.2f,a);是一个合法的scanf函数?...

    首先,这个语句显然是有问题的,但是能编译通过,说明是合法的.那么我们就需要弄清楚编译器是怎么理解这条语句的,以及运行时这条语句做了什么. 原问题是"C语言,语句scanf("7.2 ...

  8. C语言格式输入函数scanf()详解

    目录 scanf函数的一般形式 格式字符串 scanf函数称为格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中. scanf函数的一般形式 scanf函数是一个标准库函数,它的函数原 ...

  9. 【C】C语言格式输入函数scanf()详解

    参考了:C语言格式输入函数scanf()详解 总述 scanf函数称为格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中. scanf函数的一般形式 scanf函数是一个标准库函数,它 ...

最新文章

  1. iOS: NSTimer的循环引用(解决)
  2. python元组的定义方式_序列之元组详解
  3. Bash脚本获取自身完整路径的可靠方法
  4. netcore 学习
  5. flask 报错 GET /socket.io/?EIO=3transport=pollingt=(跨域问题?)
  6. linux deepin/ubuntu 搭nginx文件服务器配置
  7. 【贪心 和 DP + 卖股票】LeetCode 122. Best Time to Buy and Sell Stock II
  8. 映射java是什么_java – 映射,绑定和解析有什么区别?
  9. 文件格式介绍:文本,图片,音频,视频
  10. 电信网络知识中的一些中英文简称对应表
  11. 给电脑C盘系统盘瘦身的四种方法
  12. 同济高数第七版上册54页例1详细证明过程
  13. 如何核算一个软件开发项目的成本?
  14. C# Winform控件库分享,免费开源,支持中文!(附DLL及教程)
  15. TPshop项目-功能测试(3)
  16. 对于https ssl中的pem文件和key 文件的理解
  17. ios手游怎么投屏到电脑玩
  18. VC++获取CPU的名称、主频和核数(附源码)
  19. bat脚本中获取上级目录_批处理bat命令 获取当前盘符和当前目录和上级目录的代码...
  20. 基于YOLOv5的目标检测系统详解(附MATLAB GUI版代码)

热门文章

  1. Excel插件《CC办公助手》
  2. 小菜鸟Python历险记:(第二集)
  3. tinymce编辑器实现视频上传功能
  4. 整数a关于模m的乘法逆元
  5. 武训离开人间已经整整一百一十五年了
  6. 理解二进制小数定义与转换方法推导
  7. 实现简易字符串压缩算法
  8. 三星打印机ML-2165W实现wifi连接打印
  9. 微信 清理浏览器缓存
  10. LAMP一键安装包(Python版)