输出有符号的十进制整数,要输出一个带符号的十进制

1,要输出一个带符号的十进制a 。printf("%d/n",x);A你可以查一下printf的用法 这是很常用的函数
2,i在C语言里也用来输出有符号十进制整数为何大家多用dMSDN中的定义 。。dintSigneddecimalinteger.iintSigneddecimalinteger. 刚知道还有%i 。。受教了 。。在printf中这两者没有区别但是在scanf中略有不同比如scanf("%i%d",&a,&b);如果你输入 012 012 之后a=12 ,b=10%i会把八进制和十六进制转换成十进制后写入因为书上都是用的%d 。MSDN中的定义 。。dintSigneddecimalinteger.iintSigneddecimalinteger. 刚知道还有%i 。。受教了 。。在printf中这两者没有区别但是在scanf中略有不同比如scanf("%i%d",&a,&b);如果你输入 012 012 之后a=12 ,b=10%i会把八进制和十六进制转换成十进制后写入unsigned char a = 255 ;printf("%d\n",a);//输出 -1printf("%u\n",a);//输出 255
3 , C语言中 unsigned short 怎么输出例如 int d printfddnd就是在int的格式前加hshort 对应的%hdunsigned short 对应%hu(十进制)%ho(八进制)%hx(十六进制)unsigned short d ;printf("d = %u\n",d);输出unsigned short ,unsigned int 一般用 %u像unsigned long 输出的话一般用%luC语言是一门通用计算机编程语言,应用广泛 。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言 。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台 。二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法 , 称为ANSI C,作为C语言最初的标准 。输入、输出unsigned short类型可以 使用%u,%d,%o,%x都可以用来做为格式控制各项的意义介绍如下:1) 类型:类型字符用以表示输出数据的类型,其格式符和意义如下表所示:格式字符 意义d 以十进制形式输出带符号整数(正数不输出符号)o 以八进制形式输出无符号整数(不输出前缀0)x,X 以十六进制形式输出无符号整数(不输出前缀Ox)u 以十进制形式输出无符号整数f 以小数形式输出单、双精度实数e,E 以指数形式输出单、双精度实数g,G 以%f或%e中较短的输出宽度输出单、双精度实数c 输出单个字符s 输出字符串2) 标志:标志字符为-、+、#、空格四种,其意义下表所示:标 志 意义- 结果左对齐,右边填空格+ 输出符号(正号或负号)空格 输出值为正时冠以空格,为负时冠以负号输出值为-1 。原因:1、在c语言中整型常量的数据类型默认为int,所以unsigned int a = -1中,-1的类型是int类型 。实际上是有一个隐式转换,即将int类型转成unsigned int类型 。这个转换的意义不大,因为没有超出unsigned类型的表示范围,所以a的机器码依然是-1的机器码 。2、printf输出函数的控制字符是%d , 即输出有符号数,所以结果是-1,如果要输出无符号数,请使用:printf("%u\n", a);试试在打印语句的d之前加强制类型转换(unsigned short)dunsigned short d ;printf("d = %u\n",d);输出unsigned short ,unsigned int 一般用 %u像unsigned long 输出的话一般用%lu希望对你有帮助!【输出有符号的十进制整数,要输出一个带符号的十进制】

    推荐阅读