只适合这道题,循环写的
添加逗号
https://www.nowcoder.com/practice/f51c317e745649c0900996fd3f683aed
#include <stdio.h> int main() { int count = 1; int n = 0; scanf("%d", &n); //计算一个数有几位数 int num = n; while (num / 10) { ++count; num /= 10; } //得到一个数的每一位倒叙存入一个字符数组当中 char arr[15] = { 0 }; int i = 0; for (i = count; i >= 1; i--) { arr[i] = (n % 10)+48; n /= 10; } int number = 0;//满三加入一个逗号 int d_count = 0;//向后移动的次数 for (i = count; i >= 1; i--) { if (number != 3) { number++; } else { number = 0; int j = 0; //向后移动,给逗号腾出位置 for (j = (count + d_count); j >= i + 1; j--) { char tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } arr[i + 1] = ','; number++; d_count++; } } for (i = 1; i <= (count + d_count); i++) { printf("%c", arr[i]); } return 0; }