C语言给定一个正整数n和一个大于1的正整数x,一定有唯一的<a0,a1,...,ak>(0<=ai<x)使得下面的等式成立: n = a0 + a1x + a2x2 + ... + akxk 要求编写程序,输入n和x,倒序输出 a0,a1,...,ak ak+1=ak+2=...a∞=0,因此不输出
时间: 2023-06-13 11:07:09 浏览: 150
C语言程序设计-计算并输出给定整数n的所有因子之和(不包括1与自身);注意:n的值不大于1000.c
5星 · 资源好评率100%
下面是一个示例程序,使用了数组来保存系数,然后倒序输出即可:
```c
#include <stdio.h>
int main() {
int n, x;
scanf("%d %d", &n, &x);
int a[100]; // 假设最高次项不超过99
int k = 0; // 记录最高次项的指数
// 不断取余、除以 x,直到商为 0
while (n > 0) {
a[k++] = n % x;
n /= x;
}
// 倒序输出系数
for (int i = k - 1; i >= 0; i--) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
输入格式为:
```
n x
```
例如:
```
1000 10
```
输出为:
```
0 0 0 1 0 0
```
阅读全文