noob55 添加逗号
#include <stdio.h>
int main() {
long long N;
scanf("%lld", &N);
if (N == 0) {
printf("0\n");
return 0;
}
char result[20] = { 0 };//寻出结果字符串
int count = 0;//记录当前位数
int isNegative = 0;//记录是否为负数
if (N < 0) {
isNegative = 1;
N = -N;
}
//在数组当中存储结果
//输出要逆序输出
while (N > 0) {
if (count > 0 && count % 3 == 0) {
result[strlen(result)] = ',';
}
long long digit = N % 10;
N = N / 10;
//将数字转为字符并插入结果字符串(注意是逆序,最后需要反转)
result[strlen(result)] = digit + '0';
count++;
}
//处理负数
if (isNegative) {
//先把负号存进去
result[strlen(result)] = '-';
}
//反转字符串得到正确的顺序
//反转的核心逻辑
int len = strlen(result);
for (int i = 0; i < len / 2; i++) {
char temp = result[i];
result[i] = result[len - 1 - i];
result[len - 1 - i] = temp;
}
//这样写每次都会覆盖掉之前的元素
/*char temp[100];
for (int i = len;i >= 0;i--)
{
for (int j = 0;j < len;j++)
{
temp[j] = result[i];
}
}*/
printf("%s\n", result);
return 0;
}