1 , scanf 和printf 中的中的格式控制符各有什么作用控制什么scanf中格式控制符控制输入变量的类型printf的格式控制符控制输出变量转换为什么类型 , 输出的长度 , 对齐方式,输出精度等有很多,例如%d输出十进制整数,%f输出十进制小数,%c输出字符串还有其他的在网上都可以查到
2,在C语言的scanf函数中若格式控制说明符的个数与地址表列的个数一般情况下编译器会告警或报错较老的编译器可能不会报错 , 此时如果格式说明符的个数大于地址表列的个数,问题不大,如果格式说明符的个数小于地址表列的个数,则程序会崩溃或者异常 。即:scanf("%d%d", &a, &b, &c) 程序会崩溃或异常(内存混乱)scanf("%d%d%d", &a, &b)程序不会受影响编译会报错再看看别人怎么说的 。一般情况下编译器会告警或报错较老的编译器可能不会报错,此时如果格式说明符的个数大于地址表列的个数,问题不大 , 如果格式说明符的个数小于地址表列的个数,则程序会崩溃或者异常 。即:scanf("%d%d", &a, &b, &c) 程序会崩溃或异常(内存混乱)scanf("%d%d%d", &a, &b)程序不会受影响【格式控制说明符,scanf 和printf 中的中的格式控制符各有什么作用控制什么】
3,C语言整型的格式控制符printf的格式控制的完整格式:%-0m.nl或h格式字符下面对组成格式说明的各项加以说明:①%:表示格式说明的起始符号 , 不可缺少 。②-:有-表示左对齐输出,如省略表示右对齐输出 。③0:有0表示指定空位填0,如省略表示指定空位不填 。④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数 。n指精度 。用于说明输出的实型数的小数位数 。为指定n时,隐含的精度为n=6位 。⑤l或h:l对整型指long型,对实型指double型 。h用于将整型的格式字符修正为short型 。---------------------------------------格式字符格式字符用以指定输出项的数据类型和输出格式 。①d格式:用来输出十进制整数 。有以下几种用法:%d:按整型数据的实际长度输出 。%md:m为指定的输出字段的宽度 。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出 。%ld:输出长整型数据 。②o格式:以无符号八进制形式输出整数 。对长整型可以用"%lo"格式输出 。同样也可以指定字段宽度用“%mo”格式输出 。例:main()printf("%d, %o", a, a);}运行结果:-1,177777程序解析:-1在内存单元中(以补码形式存放)为(1111111111111111)2,转换为八进制数为(177777)8 。③x格式:以无符号十六进制形式输出整数 。对长整型可以用"%lx"格式输出 。同样也可以指定字段宽度用"%mx"格式输出 。④u格式:以无符号十进制形式输出整数 。对长整型可以用"%lu"格式输出 。同样也可以指定字段宽度用“%mu”格式输出 。⑤c格式:输出一个字符 。⑥s格式:用来输出一个串 。有几中用法%s:例如:printf("%s", "china")输出"china"字符串(不包括双引号) 。%ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出 。若串长小于m,则左补空格 。%-ms:如果串长小于m , 则在m列范围内,字符串向左靠,右补空格 。%m.ns:输出占m列,但只取字符串中左端n个字符 。这n个字符输出在m列的右侧 , 左补空格 。%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格 。如果n>m,则自动取n值,即保证n个字符正常输出 。⑦f格式:用来输出实数(包括单、双精度),以小数形式输出 。有以下几种用法:%f:不指定宽度,整数部分全部输出并输出6位小数 。%m.nf:输出共占m列 , 其中有n位小数,如数值宽度小于m左端补空格 。%-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格 。⑧e格式:以指数形式输出实数 。可用以下形式:%e:数字部分(又称尾数)输出6位小数,指数部分占5位或4位 。%m.ne和%-m.ne:m、n和”-”字符含义与前相同 。此处n指数据的数字部分的小数位数,m表示整个输出数据所占的宽度 。⑨g格式:自动选f格式或e格式中较短的一种输出,且不输出无意义的零 。---------------------------------------关于printf函数的进一步说明:如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示,如:printf("%f%%", 1.0/3);输出0.333333% 。---------------------------------------对于单精度数,使用%f格式符输出时 , 仅前7位是有效数字,小数6位.对于双精度数 , 使用%lf格式符输出时,前16位是有效数字,小数6位.对于m.n的格式还可以用如下方法表示(例)char ch[20];printf("%*.*s\n",m,n,ch);前边的*定义的是总的宽度,后边的定义的是输出的个数 。分别对应外面的参数m和n。我想这种方法的好处是可以在语句之外对参数m和n赋值,从而控制输出格式我自己敲过格式符的代码,给你看看吧:%i的意思是有符号整型的意思,实质上和%d是一个意思来的 。只管使用%d就好啦 。
4,C语言里面的lddU都是什么意思啊%d十进制有符号整数%u十进制无符号整数%f浮点数%s字符串%c单个字符%p指针的值%e指数形式的浮点数%x, %X无符号以十六进制表示的整数%0无符号以八进制表示的整数%g自动选择合适的表示法 可以在"%"和字母之间加小写字母l, 表示输出的是长型数 。%ld表示输出long整数 %lf表示输出double浮点数可以在"%"和字母之间插进数字表示最大场宽 。例如:%3d表示输出3位整型数, 不够3位右对齐 。%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,小数点占一位, 不够9位右对齐 。%8s表示输出8个字符的字符串, 不够8个字符右对齐 。如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出 。但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出; 若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出 。另外, 若想在输出值前加一些0, 就应在场宽项前加个0 。例如:%04d表示在输出一个小于4位的数值时, 将在前面补0使其总宽度 为4位 。如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度, 小数点前的数字代表最小宽度 。例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串 。若大于9,则 第9个字符以后的内容将被删除 。可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可 说明输出为左对齐, 否则为右对齐 。例如:%-7d表示输出7位整数左对齐%-10s 表示输出10个字符左对齐1、%d 十进制有符号整数 。2、%u 十进制无符号整数 。3、%ld 输出long整数。4、%s 字符串 。5、%c 单个字符 。6、%p 指针的值 。7、%e 指数形式的浮点数 。8、%x, %X 无符号以十六进制表示的整数 。9、%0 无符号以八进制表示的整数 。10、%g 自动选择合适的表示法 。扩展资料精度指定:* d、o、i、 u、x 或 X 转换的最少数字显示位数 。* e 和 f 转换的基数字符后的最少数字显示位数 。* g 转换的最大有效数字位数 。* s 转换中字符串的最大打印字节数目 。包含需要输出的数据,可以是常量(字符常量、数字常量、字符串常量) , 变量,以及运算式 。此处的数据应当与前面的format中的格式控制符一一对应(如果不对应会产生错误) 。参考资料来源:搜狗百科:printf()函数%ld,%d,%u都是格式说明符中的类型 。它的作用是将输入或者输出的数据按照格式说明符指定的格式进行输入或者输出 。(1)%ld表示数据按十进制有符号长型整数输入或输出 。(2)%d表示数据按十进制有符号整型数输入或输出 。(3)%u表示数据按十进制无符号整型数输入或输出 。格式说明符由%和格式字符组成 。在一个格式控制字符串中可以有多个格式说明符 , 每一组格式说明符都是以%开始,以一个格式字符作为结束 。具体类型和所代表含义如下图:扩展资料:当格式说明符限制了输入或输出的数据类型时,要与数据起始定义数据类型一一对应,否则会引起输入或输出错误 。下面介绍一些基本的数据定义类型 。(1)void:声明函数无返回值或无参数,声明无类型指针,显示丢弃运算结果 。(C89标准新增)(2)char:字符型类型数据,属于整型数据的一种 。(K&R时期引入)(3)int:整型数据,表示范围通常为编译器指定的内存字节长 。(K&R时期引入)(4)float:单精度浮点型数据 , 属于浮点数据的一种 。(K&R时期引入)(5)double:双精度浮点型数据,属于浮点数据的一种 。(K&R时期引入)(6)_Bool:布尔型(C99标准新增)(7)_Complex:复数的基本类型(C99标准新增)(8)_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)(9)_Generic:提供重载的接口入口(C11标准新增)参考资料:c语言_搜狗百科%d 短整形,一般占两个字节 %u 无符号短整形 %ld 长整形,一般占四个字节%ld 长整形,一般占四个字节 long类型%d 短整形,一般占两个字节 int类型%u 无符号短整形 shint类型
推荐阅读
- 好玩的手游女生冷门,有没有比较适合女生玩的画风唯美的手机游戏
- 模拟器手游下载,手机模拟器
- c语言中的输出函数,C语言输入输出函数
- 万王之王3
- ios有什么推荐的游戏,苹果手机什么游戏好玩
- 米思齐编程,米思齐 如何让两个循环同时进行
- 5464
- idea图形界面开发插件是什么,intellij idea 怎样启用插件
- android工程师,什么样才算是Android工程师呢