c语言中float类型,小数点后面保留0位小数,可以写成%.f吗,还是只能是%.0f? c语言中“%.0f”是什么意思?

C\u8bed\u8a00 float\u578b\u7684\u6570\u5b57\u540e\u9762\u8981\u52a0f\u5417\uff1f

float\u7c7b\u578b\u7684\u5b57\u9762\u5e38\u91cf\uff0c\u540e\u9762\u9700\u8981\u52a0\u4e0af\u6216\u8005F\u6765\u8868\u793a\u662f\u4e00\u4e2a\u5355\u7cbe\u5ea6\u6d6e\u70b9\u6570\u3002\u53ea\u6240\u4ee5\u8981\u8fd9\u6837\u5199\uff0c\u662f\u56e0\u4e3a\u9ed8\u8ba4\u7684\u6d6e\u70b9\u6570\u5e38\u91cf\u90fd\u662fdouble\u7c7b\u578b\u3002
#include

int main()
{
1.1; //\u8fd9\u79cd\u6d6e\u70b9\u6570\u5b57\u9762\u5e38\u91cf\uff0c\u5b83\u7684\u9ed8\u8ba4\u7c7b\u578b\u662fdouble
float f1 = 1.1f; //\u4f7f\u7528\u5c0f\u5199\u7684f
float f2 = 1.1F; //\u4f7f\u7528\u5927\u5199\u7684F
printf("%f\t%f\n", f1 ,f2);
return 0;
}

%.0f \u662f\u8f93\u51fa float \u578b\u6216 double \u578b\u6570\u636e\uff0c\u6309\u5b9a\u70b9\u683c\u5f0f\uff0c\u5c0f\u6570\u70b9\u4ee5\u4e0b\u53600\u4f4d\u3002
\u683c\u5f0f\u8f93\u51fa\u4e00\u4e2a\u6d6e\u70b9\u6570\uff0c\u53bb\u6389\u5c0f\u6570\u70b9\u540e\u9762\u7684\u6570\u3002%.0f\u76840\u4ee3\u8868\u5c0f\u6570\u70b9\u540e\u9762\u51e0\u4f4d\uff0c%.2f\u5c31\u662f\u5c0f\u6570\u70b9\u540e\u97622\u4f4d\u3002\u8f93\u51fa\u6d6e\u70b9\u6570\u7684\u6574\u6570\u90e8\u5206\uff0c\u4e0d\u8f93\u51fa\u5c0f\u6570\u70b9\u548c\u5c0f\u6570\u70b9\u4ee5\u4e0b\u90e8\u5206\u3002\u5c0f\u6570\u90e8\u5206 4 \u820d 5 \u5165\u3002

\u6269\u5c55\u8d44\u6599\uff1a
\u4e09\u4e2a\u5faa\u73af\u7684\u5f02\u540c\u70b9\uff1a\u7528while\u548cdo\u2026while\u5faa\u73af\u65f6\uff0c\u5faa\u73af\u53d8\u91cf\u7684\u521d\u59cb\u5316\u7684\u64cd\u4f5c\u5e94\u5728\u5faa\u73af\u4f53\u4e4b\u524d\uff0c\u800cfor\u5faa\u73af\u4e00\u822c\u5728\u8bed\u53e51\u4e2d\u8fdb\u884c\u7684\u3002
while\u5faa\u73af\u548cfor\u5faa\u73af\u90fd\u662f\u5148\u5224\u65ad\u8868\u8fbe\u5f0f\uff0c\u540e\u6267\u884c\u5faa\u73af\u4f53\uff0c\u800cdo\u2026while\u5faa\u73af\u662f\u5148\u6267\u884c\u5faa\u73af\u4f53\u540e\u5224\u65ad\u8868\u8fbe\u5f0f\uff0c\u4e5f\u5c31\u662f\u8bf4do\u2026while\u7684\u5faa\u73af\u4f53\u6700\u5c11\u88ab\u6267\u884c\u4e00\u6b21\uff0c\u800cwhile\u5faa\u73af\u548cfor\u5c31\u53ef\u80fd\u4e00\u6b21\u90fd\u4e0d\u6267\u884c\u3002
\u53e6\u5916\u8fd8\u8981\u6ce8\u610f\u7684\u662f\u8fd9\u4e09\u79cd\u5faa\u73af\u90fd\u53ef\u4ee5\u7528break\u8bed\u53e5\u8df3\u51fa\u5faa\u73af\uff0c\u7528continue\u8bed\u53e5\u7ed3\u675f\u672c\u6b21\u5faa\u73af\uff0c\u800cgoto\u8bed\u53e5\u4e0eif\u6784\u6210\u7684\u5faa\u73af\uff0c\u662f\u4e0d\u80fd\u7528break\u548c continue\u8bed\u53e5\u8fdb\u884c\u63a7\u5236\u7684\u3002
\u987a\u5e8f\u7ed3\u6784\u3001\u5206\u652f\u7ed3\u6784\u548c\u5faa\u73af\u7ed3\u6784\u5e76\u4e0d\u5f7c\u6b64\u5b64\u7acb\u7684\uff0c\u5728\u5faa\u73af\u4e2d\u53ef\u4ee5\u6709\u5206\u652f\u3001\u987a\u5e8f\u7ed3\u6784\uff0c\u5206\u652f\u4e2d\u4e5f\u53ef\u4ee5\u6709\u5faa\u73af\u3001\u987a\u5e8f\u7ed3\u6784\uff0c\u5176\u5b9e\u4e0d\u7ba1\u54ea\u79cd\u7ed3\u6784\uff0c\u5747\u53ef\u5e7f\u4e49\u7684\u628a\u5b83\u4eec\u770b\u6210\u4e00\u4e2a\u8bed\u53e5\u3002
\u5728\u5b9e\u9645\u7f16\u7a0b\u8fc7\u7a0b\u4e2d\u5e38\u5c06\u8fd9\u4e09\u79cd\u7ed3\u6784\u76f8\u4e92\u7ed3\u5408\u4ee5\u5b9e\u73b0\u5404\u79cd\u7b97\u6cd5\uff0c\u8bbe\u8ba1\u51fa\u76f8\u5e94\u7a0b\u5e8f\uff0c\u4f46\u662f\u8981\u7f16\u7a0b\u7684\u95ee\u9898\u8f83\u5927\uff0c\u7f16\u5199\u51fa\u7684\u7a0b\u5e8f\u5c31\u5f80\u5f80\u5f88\u957f\u3001\u7ed3\u6784\u91cd\u590d\u591a\uff0c\u9020\u6210\u53ef\u8bfb\u6027\u5dee\uff0c\u96be\u4ee5\u7406\u89e3\uff0c\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\u7684\u65b9\u6cd5\u662f\u5c06C\u7a0b\u5e8f\u8bbe\u8ba1\u6210\u6a21\u5757\u5316\u7ed3\u6784\u3002
\u53c2\u8003\u8d44\u6599\u6765\u6e90\uff1a\u767e\u5ea6\u767e\u79d1-C\u8bed\u8a00

c语言的printf格式化输出函数的%.03f,意思是排除非有效数字的0输出,仅保留3位有效数字,但是使用%.0f是只能输出0的,例如:

printf("%%.03f,%.03f
",a);//这句可以输出0.007

  printf("%%.0f,%.0f
",a);//但是这句就只能输出0,在最新的GCC编译器中是这样

//但是在visual studio c 里又是正常的


如果你想去除浮点数a的小数部分,

可以使用

a=-6.5;printf("%%d,%d
",(int)a);//输出为-6

 

 如果你想最稳定地输出数字,建议用math.h的round函数



float类型的字面常量,后面需要加上f或者F来表示是一个单精度浮点数。只所以要这样写,是因为默认的浮点数常量都是double类型。include int main(){ 1.1; //这种...

float类型的字面常量,后面需要加上f或者F来表示是一个单精度浮点数。只所以要这样写,是因为默认的浮点数常量都是double类型。include int main()

对于上述情况,你只能写成后面的格式,因为前面的格式是没有限制小数点的意思!谢谢,望采纳!

一般情况下的话,我觉得如果说出现了这种情况下的话,确实是不可以进行加百分数的,所以说我觉得性价比那也是并不很高

  • C璇█float绫诲瀷淇濈暀鍑浣嶅皬鏁
    绛旓細float绫诲瀷榛樿淇濈暀灏忔暟鐐鍚6浣嶏紝鑻ユ槸瑕佽緭鍑轰竴浣嶆垨鑰呭叾浠栦綅鏁帮紝鍙互鎸夌収浠ヤ笅褰㈠紡杩涜杈撳嚭锛歱rintf("%.锛堣繖閲岃緭鍏ヨ杈撳嚭鐨勪綅鏁帮級f",x);濡傝緭鍑轰竴浣嶏細printf("%.1f",x);
  • C璇█娴偣鍨灏忔暟鐐鍚庝负澶氬皯浣
    绛旓細鍗曠簿搴︽诞鐐瑰瀷灏忔暟鐐鍚庨潰鏈夋晥鏁板瓧涓7浣嶅拰鍙岀簿搴︽诞鐐瑰瀷灏忔暟鐐瑰悗闈㈡湁鏁堟暟瀛椾负16浣嶃傚崟绮惧害鍦ㄤ竴浜涘鐞嗗櫒涓婃瘮鍙岀簿搴︽洿蹇屼笖鍙崰鐢ㄥ弻绮惧害涓鍗婄殑绌洪棿锛屼絾鏄綋鍊煎緢澶ф垨寰堝皬鐨勬椂鍊欙紝瀹冨皢鍙樺緱涓嶇簿纭傚綋闇瑕佸皬鏁伴儴鍒嗗苟涓斿绮惧害鐨勮姹備笉楂樻椂锛屽崟绮惧害娴偣鍨嬬殑鍙橀噺鏄湁鐢ㄧ殑銆備緥濡傦紝褰撹〃绀虹編鍏冨拰鍒嗘椂锛屽崟绮惧害娴偣鍨嬫槸...
  • c璇█涓璮loat绫诲瀷,灏忔暟鐐鍚庨潰淇濈暀0浣嶅皬鏁,鍙互鍐欐垚%.f鍚,杩樻槸鍙兘鏄%...
    绛旓細c璇█鐨printf鏍煎紡鍖栬緭鍑哄嚱鏁扮殑%.03f锛屾剰鎬濇槸鎺掗櫎闈炴湁鏁堟暟瀛楃殑0杈撳嚭锛屼粎淇濈暀3浣嶆湁鏁堟暟瀛楋紝浣嗘槸浣跨敤%.0f鏄彧鑳借緭鍑0鐨勶紝渚嬪锛歱rintf("%%.03f,%.03f\n",a);//杩欏彞鍙互杈撳嚭0.007 printf("%%.0f,%.0f\n",a);//浣嗘槸杩欏彞灏卞彧鑳借緭鍑0锛屽湪鏈鏂扮殑GCC缂栬瘧鍣ㄤ腑鏄繖鏍 //浣嗘槸鍦╲isual studio c ...
  • float绫诲瀷鏁板瓧淇濈暀鍑犱綅灏忔暟鐐鍚庨潰鐨鏁板瓧?
    绛旓細鍦C璇█涓紝float绫诲瀷鐨勬暟鎹粯璁や繚鐣灏忔暟鐐鍚6浣嶏紝涓嶈冻6浣嶇殑浠0琛ラ綈锛岃秴杩6浣嶆寜鍥涜垗浜斿叆鎴柇銆傛渶澶氳兘淇濈暀7浣嶆湁鏁堟暟瀛楋紝鑳界粷瀵逛繚璇6浣嶆湁鏁堟暟瀛椼傝缁嗗彲鍙傝冨崥鏂囷細缃戦〉閾炬帴 鐓х墖涓殑2.0鍏跺疄灏辨槸2.000000锛3.0鍏跺疄灏辨槸3.000000锛宖loat绫诲瀷鐨勯粯璁や繚鐣欏皬鏁扮偣鍚6浣嶏紱100/40缁撴灉搴旇鏄2.5锛屼功涓殑2....
  • c璇█涓璮loat灏忔暟鐐鍚庤兘鏈夊嚑浣?
    绛旓細float 绫诲瀷鎬诲叡鍙兘琛ㄧず7浣嶆湁鏁堟暟瀛,濡傛灉闇瑕侀潪甯稿噯纭殑鏁板瓧锛岃鑰冭檻浣跨敤 Decimal 鏁版嵁绫诲瀷
  • c璇█涓璁$畻int,float,double,char鍥涚鏁版嵁绫诲瀷鎵鑳借〃绀虹殑鏁版嵁鑼冨洿_鐧 ...
    绛旓細float涓哄崟绮惧害娴偣鍨嬶紝鑳藉噯纭埌灏忔暟鐐鍚庡叚浣嶏紝3.4 x 10^锛-38锛墌 3.4 x 10^锛+38锛塪ouble涓哄弻绮惧害娴偣鍨嬶紝鑳藉噯纭埌灏忔暟鐐瑰悗鍗佷簩浣嶏紝1.7 x 10^锛-308锛墌 1.7 x 10^锛+308锛塩har涓哄崟瀛楄妭瀛楃鍨嬶紝-(2^7)鍒2^7-1鍗-128鍒127銆傚鏋滄槸鏃犵鍙峰瓧绗nsigned char锛岄偅涔堟槸0鍒2^8-1...
  • 濡備綍鐢c璇█璁$畻灏忔暟鐐鍚庝綅鏁(float鏈韩閮芥棤娉曠簿纭)
    绛旓細1銆佸厛鎶婃诞鐐规暟鍙樻垚瀛楃涓诧紝鍐嶉氳繃灏忔暟鐐纭畾灏忕偣鍚庨潰鐨勪綅鏁般2銆佷緥绋嬶細include <stdio.h>#include <string.h>void main() { char * ptr; char strFloat[20]; float number=100.25432; sprintf(strFloat, "%f", number); ptr = strstr(strFloat, "."); if (ptr != ...
  • C璇█鐨double涓float绫诲瀷鏈澶氬彧鑳介粯璁よ緭鍑灏忔暟浣嶆暟閮藉彇6浣?_鐧惧害鐭 ...
    绛旓細float 涓哄崟绮惧害锛屾湁鏁堟暟瀛椾负6~7double 涓哄弻绮惧害锛屾湁鏁堟暟瀛椾负15~16 浣嗕粬浠湪杈撳嚭鏃锛屽皬鏁扮偣鍚庨兘鏈6浣嶅皬鏁銆備緥濡3.123456 浣嗘槸鍦ㄦ牸寮忓寲杈撳嚭鏃朵緥澶栥傚锛歮ain(){ int a=15;float b=123.1234567;double c=12345678.1234567;char d='p';printf("a=%d,%5d,%o,%x\n",a,a,a,a);printf("b=...
  • c 璇█涓,涓轰粈涔float鍨 瀵瑰簲鐨灏忔暟閮ㄥ垎鏄6浣?涓轰粈涔
    绛旓細float鍨嬫暟鎹簿搴 鏈夋晥鏁板瓧 6-7 浣嶏紝姣斿瀛樻斁 12345.53231 鏃讹紝鍙兘绮剧‘鍒 12345.53銆傝繖鏄C璇█float绫诲瀷鐨闄愬埗銆
  • C璇█涓璮loat ,double, long double鍒嗗埆鏈澶氬彲鏀寔鍑犱綅灏忔暟鐐
    绛旓細float 鍗曠簿搴︽诞鐐,8涓偣銆俤ouble鍙岀簿搴︽诞鐐, 16涓偣銆俵ong double闀垮弻绮惧害娴偣锛32涓偣銆
  • 扩展阅读:float强制保留1位小数 ... unity float保留两位小数 ... 什么时候用eval和float ... float精确到几位小数 ... c语言float计算 ... c语言float强制转换为int ... c语言整型是int还是float ... c语言float小数点后两位 ... float数只留一个小数 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网