垦丁大街美食餐馆:有关C语言的

来源:百度文库 编辑:神马品牌网 时间:2024/05/10 12:45:25
以下程序的输出结果是 ()。
int a=1234;
printf(“%2d\n”,a);
(A) 12. (B)34
(C)1234 (D)提示出错、无结果
答案为什么会是C语 这个%2d\n" 是啥意思呀 谁能给我解释一下的? 在这先谢了

c语言中printf函数参数中的%nd是表示预期打n列数据,但只是预期,当列数<n时,前面用空格补足n列,而列数>n时,数据不会被截断,而是按数据本身的列数显示。

答案 选C
实践一下就知道,%nd一般是为了使界面好看,
例如
#include<stdio.h>
void main()
{
int a=1234,b=3456;
printf("%6d%6d\n",a,b);
}
显示结果为
1234 3456
如果
#include<stdio.h>
void main()
{
int a=1234,b=3456;
printf("%d%d\n",a,b);
}
则显示为
12343456
结果分布出a 和b是什么
对于%nd来言,如果n小于所要输出数字的实际位数,不影响输出结果,如果大于所要输出数字的实际位数,在输出数字前添空格补位

%2d表示用2位来显示整型数据,但当其超过两位是显示全部位数,不足两位是用空格补足,\n表示换行。

%2d就是输出位数为2,但是实际超出2位时,%2d中的2不起作用,以实际为准,\n就是换行

%2d就是输出位数为2,但是实际超出2位时以实际为准,\n就是换行
答案应该是c

选C