提交记录 #3
提交时间:2024-10-29 16:18:59
语言:c
状态:Unaccepted
编译情况:编译成功
固定测试点#1:
固定测试点#2:
固定测试点#3:
额外测试点#520:
M62【期中测验6】质因子分解2
#include <stdio.h>
#include <math.h>
void factorize(int num) {
int i, count;
printf("%d=", num);
// 首先处理2的因子
for (i = 2; i <= sqrt(num); i++) {
count = 0;
while (num % i == 0) {
num = num / i;
count++;
}
if (count > 1) {
printf("%d^%d", i, count);
if (num > 1) {
printf("*");
}
}else if(count==1){
printf("%d",i);
if (num > 1) {
printf("*");
}
}
}
// 如果剩余的数大于1,则为质数
if (num > 1) {
printf("%d\n", num);
}
}
int main() {
int n;
scanf("%d", &n);
if (n <= 1) {
printf("Please enter a number greater than 1.\n");
} else {
factorize(n);
}
return 0;
}