习题答案:
4.1 C语言有那些语句:C语句分为5类
控制语句;
If…else… for() while()break…return …等等
函数调用语句;
printf(“This is a C statement.”);
表达式语句;
a=3是一个表达式,而a=3;是一个表达式语句;
空语句;
;
复合语句;
{
Code here…
}
C语言可以一行写几个语句,也可以一个语句拆开写在几行上,书写格式没有特殊要求。
4.2 略
4.3 不把输入输出作为C语句的目的是使C语言编译系统简单,因为将语句翻译成二进制的指令是在编译阶段完成的,没有输入输出语句就可以避免在编译阶段处理与硬件有关的问题,可以使编译系统简化,而且通用性强,可移植性好,在各个型号的计算机都能适用,便于在各种计算机上实现。
4.4
int main()
{
int a=3,b=4,c=5;
double x=1.2,y=2.4,z=-3.6;
int u=51274,n=128765;
char c1='a',c2='b';
printf("a=%2d b=%2d c=%2d/n",a,b,c);
printf("x=%lf,y=%lf,z=%lf/n",x,y,z);
printf("x+y=%5.2lf y+z=%5.2lf z+x=%5.2lf/n",x+y,y+z,z+x);
printf("u=%6d n=%9d/n",u,n);
printf("c1=%c or %d/n",c1,c1);
printf("c2=%c or %d/n",c2,c2);
return 0;
}
4.5 略
4.6 略
4.7 略
4.8 略
4.9 略
4.10
二者皆可
Printf(“%d,%d/n”,c1,c2);
不是在任何情况下都可以,因为char最高位是符号位,它的取值范围是-128~127,如果在字符变量中存放一个ASCII码为0~127间的字符,由于字节中最高位是0,因此用%d输出字符变量时,输出的是一个正整数,如果在字符变量中存放一个ASCII码为128~255之间的字符,输出负整数。