这一类符号是“格式说明”,用于格式的输入与格式的输出,就是当printf和scanf函数中在输入输出时,对不同类型的数据(如int,float,char等)要使用不同的格式来进行说明。d,用来输出十进制整数。f,用来输出实数(包括单,双精度),以小数形式输出,默认情况下保留小数点6位。c,用来输出一个字符。s,...
这一类符号是“格式说明”,用于格式的输入与格式的输出,就是当printf和scanf函数中在输入输出时,对不同类型的数据(如int,float,char等)要使用不同的格式来进行说明。 %d,用来输出十进制整数。 %f,用来输出实数(包括单,双精度),以小数形式输出,默认情搭并况下保留小数点6位。 %c,用来输出一个字符。 %s,用来...
1楼说的不对。如果是在printf里,"%0.1f"表示输出小数点后面一位。但是scanf()函数中没有精度控制。“%0.1f"这种格式是非法的,你可以试试,用这种格式读取数据,什么也读不到。p1->score[2]的值不会发生改变。详细请参考:http://blog.csdn.net/ttgoo/archive/2010/03/03/5341058.aspx ...
这就是浮点数的误差,因为精度不够, 而加了printf("%lf\n",y);后可能表示的就更精确些(但是也不能保证完全精确,只是误差小了而已),lf表示双精度浮点数格式
字符串:在"%m.ns"中,这可以类比打印浮点数的"%m.nf",m 表示占用宽度(字符串长度不足时补空格,超出了则按照实际宽度打印),n 才表示从相应的字符串中最多取用的字符数。通常在打印字符串时m 没什么大用,还是点号后面的n 用的多。自然,也可以前后都只取部分字符.
小数点前面两位,小数点后面两位。多了会截取相应的部分
char bd[16]={'0','1','2','3','4','5','6','7','8','9','10','A','B','C','D','E','F'};int cn[64],nd,b,in=0;long int ntc;printf("\n Input an integer which is transformed:");scanf("%ld",&ntc);