C语言的问题。。有不懂,请教了

来源:百度知道 编辑:UC知道 时间:2024/05/15 08:25:30
就讲重点的比如 long n=1234567;
printf("%ld,%lo,%x\n",n,n,n);--这个长整型输出的结果是 它们各是多少。。。
还有 float x=67.8564,y=-789.124
printf("%e,%10.2e\n",x,y)---我对这个指数输出不太熟悉。。详细分析给我听听。。 我知道它是输出10列。然后取左端的2为。这个两位。。那个 - 号算不算一位?是-7 还是-78
printf(%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n"x,y,x,y,x,y);

负(-) 符号算不算一位呢。。上面的 % .4f 是输出4列。。取左端 4位。。 - 符号算不算一位//

---------------------------
---------------------------
---------------------------

long n=1234567;
printf("%ld,%lo,%x\n",n,n,n);--这个长整型输出的结果是 它们各是多少。。。
---------------------------
运行结果:
1234567//10进制 4553207//8进制 12d687//16进制
这是标准输出,只需要转换成相应的进制就可以了

---------------------------
float x=67.8564,y=-789.124
printf("%e,%10.2e\n",x,y)---我对这个指数输出不太熟悉。。详细分析给我听听。。 我知道它是输出10列。然后取左端的2为。这个两位。。那个 - 号算不算一位?是-7 还是-78
---------------------------
运行结果:
6.785640e+001 -7.89e+002

%10.2e
//10.2e你理解错了,不是输出10列,然后取左端的2位。10.2表示全数10位(包括整数,小数,标点,负号),小数部分2位,而e是指科学计数法输出,因为科学计数法输出时整数部分都是1位,所以10对于e是无效的,2后面是小数部分位数,这个有效,所以是-7.89e,后面是10的指数,指数部分是默认是3位(%e系统指定6位小数,5位指数(e+002 ),所以第一个结果为6.785640e+001)

---------------------------
printf(%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n"x,y,x,y,x,y);
---------------------------
运行结果:
___67.86,_-789.12,67.8564,-789.