#include<stdio.h>
#include<math.h>
int main(){
int a , b ,sum ;
scanf("%d %d",&a,&b);//scanf用法
//printf("%d,%d\n",a,b);
sum= a + b ;
if(abs(sum)<1000)
printf("%d\n",sum);
else if(abs(sum)<1000000)
printf("%d,%03d\n",sum/1000,abs(sum%1000));//利用C的格式输出,类似在C++中利用iomanip中setfill('0')和setw(n)函数
else
printf("%d,%03d,%03d\n",sum/1000000,abs((sum%1000000-sum%1000)/1000),abs(sum%1000));//abs要加,余数和和同正负
return 0;
}
自己写的时候C的格式化输出都忘了。。。
看了C++上用setw('0');和setfill(3);才想起来C上可以用更简单的格式输出
复习一下格式输出
技巧:1、flag标记正负
output.insert(output.begin(), temp+'0');
2、字符串首插入函数
3、temp+'0'
本文通过一个C语言程序示例介绍了如何使用printf进行格式化输出,特别是针对不同数值范围的不同格式化需求。该程序展示了如何根据数字大小进行千位分隔符的添加,并回顾了C语言中常用的格式化输出技巧。
236

被折叠的 条评论
为什么被折叠?



