极简题解
2025-08-19 18:32:43
发布于:上海
4阅读
0回复
0点赞
#include <stdio.h>
#include <stdlib.h>
int main() {
int n;
scanf("%d", &n);
int cnt = n;
int first_term = 1; // 标志位处理首项
while (cnt >= 0) {
int num;
scanf("%d", &num);
if (num != 0) {
// 处理符号
if (!first_term) {
if (num > 0) printf("+");
else if (num < 0) printf("-");
} else {
first_term = 0;
if (num < 0) printf("-");
}
// 处理系数(绝对值部分)
if (abs(num) != 1 || cnt == 0) {
printf("%d", abs(num));
}
// 处理变量和指数
if (cnt > 0) printf("x");
if (cnt > 1) printf("^%d", cnt);
}
cnt--;
}
// 处理所有系数都为0的情况
if (first_term) {
printf("0");
}
printf("\n");
return 0;
}
全部评论 1
注释也太详细了!不得点个赞
1周前 来自 上海
1
有帮助,赞一个