C语言求助

main()
{
int a=2,b=3,temp;
printf("a=%d,b=%d/n",a,b);
temp=a;
a=b;
b=temp;
printf("a=%3d,b=%d/n,a,b);
}

以上是一段数据交换的程序,
需要 int a=2,b=3,temp的解释,介绍
还有,printf("a=%d,b=%d/n",a,b);以及printf("a=%3d,b=%d/n,a,b)的介绍,解释。a=%d和a=3%d的意义是什么

c语言中,数据是存放在一定的地址中的,就如装在容器中的东西一样。所以,如果我们要交换两个容器A,B中的东西a,b,就得先拿出一个一个空容器C,先将a放入C中,再将b放入A中,最后将a放入B中,就完成了交换。此处的temp就是这样的一个空容器。

int a=2,b=3,temp;这句话是声明a,b,temp为整型数据。

printf("a=%d,b=%d/n",a,b);以及printf("a=%3d,b=%d/n,a,b)都是错误的,应该是printf("a=%d,b=%d\n",a,b);
%d表示以整型格式输出,数据有多少位就输出多少位。后面的数据将代换这个位置。3表示按预置3位输出,不足的在左端补空格。双引号内按原样输出,\是转义字符,\n表示输出一个换行符。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-06-02
int a=2,b=3,temp
定义整型变量a,b,temp.并为a赋值为2,b赋值为3
printf("a=%d,b=%d/n",a,b);
输入结果为a=2,b=3,%d代表输入结果为整型。依次代替后面的a,b
/n是转义字符,代表换行
%3d代表输入整数为三位数。
第2个回答  2009-06-02
int a=2,b=3,temp指定义一个整型变量a,b,temp.其中为a赋值2,b赋值3.
printf("a=%d")中,a= 原样输出,%d指以十进制形式输出a的值,而%3d是指系统
预留3位给a输出用,如果不足3位就靠右输出a的值
第3个回答  2009-06-02
temp=a;
a=b;
b=temp;
以上语句:是将a,b的值交换
printf("a=%d,b=%d/n",a,b);这个不就是将a,b,以十进制的方式输出
printf("a=%3d,b=%d/n,a,b)即是指定a的输出宽度占3列;若实际长度不足3列左补空格,否则按实际长度输出
第4个回答  2020-11-19