C里面printf("%-5c",n%10+'0')什么意思
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/29 12:24:39
C里面printf("%-5c",n%10+'0')什么意思
n如果是-23066
输出是- 2 3 0 6 6
我就不知道'0'有什么用
n如果是-23066
输出是- 2 3 0 6 6
我就不知道'0'有什么用
"%-5c":%-5c 是左对齐,宽度为5,第一格(即贴左边边界)是单字符,其余四格为_(空白符).
而n%10+'0'就是把n除以10的余数加上'0',结果就是余数的ASCII码,比如n=12,n%10+'0'='2'.
这个语句综合起来,其实就是输出n%10的相应字符格式而已.
以n=12为例,printf("%-5c",n%10+'0')的输出结果就是2____
再问: 不加这个难道输出不是'2'么 求教
再答: 这样才拐弯抹角啊!这样不正是那些无聊出题者的本意吗?要是我出题我就狠狠出一堆指针题郁闷死他们,让他们一样脑细胞死一堆。 '0'就是ASCII表里值为48,控制字符0的那个0。
再问: 那个我还是不太懂 你就直接告诉我这里'0'的作用吧
再答: '0'的作用就是得到数字0-9在ASCII表里头的基础值48,这样 n%10得到的数 加上48 也就得到 这个数在ASCII表里头的值。比如n=12,n%10=2,但是这是整型2,加上48得到50,50就是数字2在ASCII表里头对应的ASCII值,通过输出%c就能得到字符型的2。
再问: 你的意思是n本来是int型的 这样一转就成为char型了吧
再答: n%10还是int型,只不过是转换后输出其对应的字符形式而已
而n%10+'0'就是把n除以10的余数加上'0',结果就是余数的ASCII码,比如n=12,n%10+'0'='2'.
这个语句综合起来,其实就是输出n%10的相应字符格式而已.
以n=12为例,printf("%-5c",n%10+'0')的输出结果就是2____
再问: 不加这个难道输出不是'2'么 求教
再答: 这样才拐弯抹角啊!这样不正是那些无聊出题者的本意吗?要是我出题我就狠狠出一堆指针题郁闷死他们,让他们一样脑细胞死一堆。 '0'就是ASCII表里值为48,控制字符0的那个0。
再问: 那个我还是不太懂 你就直接告诉我这里'0'的作用吧
再答: '0'的作用就是得到数字0-9在ASCII表里头的基础值48,这样 n%10得到的数 加上48 也就得到 这个数在ASCII表里头的值。比如n=12,n%10=2,但是这是整型2,加上48得到50,50就是数字2在ASCII表里头对应的ASCII值,通过输出%c就能得到字符型的2。
再问: 你的意思是n本来是int型的 这样一转就成为char型了吧
再答: n%10还是int型,只不过是转换后输出其对应的字符形式而已
C语言:printf("n!%d/n",n,n*n)最后那个n*n什么意思?
printf("c=%#x\n",
main( ) { int c=5;printf("%d\n",(c+=c,c+8,++c);}
关于C语言的一道题:#include int main(void){printf("%f\n",5);printf("%
C语言if(i%5==0)printf("\n");是什么意思
C语言中的printf(“\n c=%d”,c)是什么意思
main() {int a=5,b=3,c=0; if (a=b+c) printf ("***\n"); else p
关于C语言 printf("%d\n",printf("%d",printf("%d",i)));
#include main() {char ch; ch='A'+'5'-'3'; printf("%d,%c\n",c
printf("%d:%c->%c",n,x1,x3)怎么理解?
求C语言求助 c=0x80; printf("c=%c,c=%d\n", c, c); 中c=0x80;是什么意思 得出
C语言中,int m,n; if(m%n)printf("#")中