数字占四格。如果数字小于四位数的话,设数字长度为len,则空4-len,再输出数字。否则直接输出数字。
如果输出少于四位则占四位,按右对齐;如果输出值大于四位则按输出值的位数显示。
printf((j==9)?"%4d\n":"%4d",i*j);是什么意思 另外“%4d\n”怎么解释
(j==9)?"%4d\n":"%4d"这是一个三元表达式( ? :) ,意思是
j等于9吗? 等于9的话,这个表达式的值就是"%4d\n",否则就是"%4d"
4.这里是把判断放到了printf里面,%4d在printf里面意思是格式化输出一个整型数,宽度是4个字节
后面的\n是换行
%d是表示输出一个整型变量,没有限定宽度
%c是字符,字符都是一个字节,没有宽度的概念
%4f有这种表示,4个字节宽度的实数
5.printf("%4d");表示如果数据的位数小于4,则左端补以空格,若大于4,则按实际位数输出。但这里printf光有格式控制符"%4d",缺少了要输出的变量,所以输出了-22这样一个未知的变量.
这个程序是求十进制数n的p进制表示