printf(“%d”,11000),printf_s

文章 3年前 (2021) admin
0

Q1:printf(“%d”,11000)

# includevoidmain(){ intx=11000;printf("%d ",x);}这个程序正在运行,它显示上面的语句11000是错误的," % d "-这是由变量的类型决定的," 11000 "不是变量。

Q2:C语言中,printf的%d可以输出多少数据长度 %ld可以输出多少?

1、%ld表示数据按十进制有符号长型整数输入或输出,如果是32位,输出4字节。2、%d表示数据按十进制有符号整型数输入或输出,如果编译器32位,可以输出8字节。示例:printf("%5d\n",1000);//默认右对齐,左边补空格printf("%-5d\n",1000);//左对齐,右边补空格printf("%+d%+d\n",1000,-1000);//输出正负号printf("%d%d\n",1000,-1000);//正号用空格替代,负号输出printf("%x%#x\n",1000,1000);//输出0xprintf("%.0f%#.0f\n",1000.0,1000.0)//当小数点后不输出值时依然输出小数点printf("%g%#g\n",1000.0,1000.0);//保留小数点后后的0printf("%05d\n",1000);//前面补0扩展资料printf()函数的调用格式为:printf("",)。printf()是C语言标准库函数,在stdio.h中定义。输出的字符串除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。格式化字符串包含三种对象,分别为:(1)字符串常量;(2)格式控制字符串;(3)转义字符。

Q3:C语言:printf("%d",1.2 - 1.0 == 0.2)的输出结果是什么,以及,为什么

首先,1.2-1.0是多少?为什么不是0.2?要回答这个问题,我们必须首先了解数字在计算机中是如何表达的。众所周知,计算机使用比特来存储和处理数据。每个二进制数(二进制字符串)对应一个十进制数。最简单的转换是二进制。看一看。以0.1为例,它的二进制数是0.0001100011。这是一个二进制无限循环小数,但是计算机内存有限,所以我们不能用它来存储所有的小数位。那么如何在准确性和记忆力之间做出选择呢?答案是:在某个精确点直接丢弃。当然代价是0.1在电脑里根本不是准确的0.1,而是有舍入误差的0.1。所以不是所有的小数在计算机中都是准确的。二进制可以用有限的位数和2的倍数来精确表示十进制。所以1.2-1.0不是0.2,0.2只是精度有限的近似值,所以不等于0.2。false表示0。你可以详细看到如何在电脑内部表达数字。

Q4:printf("%3d",c)与printf("%d",c)输出结果的区别在哪?

举两个代码# include int main(){ int c;scanf("%d ",c;);printf("=\n ",c);printf("%d\n ",c);返回0;}.c=12输出1212。c=12345输出1234512345。所以%xd的作用是输出一个长度为x的整数,不足的用空格填充,超过的或者刚好的按原样输出。

Q5:unsigned int b=65535;printf(“%d”,b);的结果为什么是-1啊

主要问题出在输出控制上,因为你定义了无符号整数,所以全部16位都用来表示数值,没有符号位。但是,在输出中使用%d是错误的。%d用于输出有符号整数。因此,b的值将以带符号的形式输出。但是,在16位有符号整数表示中,65536的值正好是-1。现在的整数基本上是用32位来表示的,所以这样写不会造成32位编译系统的错误。

Q6:怎样用printf函数显示一个固定几位的整数,前面补零

在%后添加0,然后指定位数。示例:int a=1000;printf("d",a);在%之后加上0,然后指定8位的输出结果为00001000。

版权声明:admin 发表于 2021年11月1日 下午1:50。
转载请注明:printf(“%d”,11000),printf_s | 热豆腐网址之家

相关文章