C语言编写程序:题目描述 输入等比数列的首项,公比,项数三个信息,输出一个等比数列的前n项。 如果首项和公比均为整数,则整个数列每一项都是整数;如果首项和公比其中一个为浮点数,则整个数列每一项都是浮点数,题目需要你保留小数点后三位有效数字输出。 输入 三个数字依次代表首项,公比,项数 输出 等比数列的前n项,以空格作为间隔
时间: 2023-09-15 17:21:30 浏览: 207
【c语言】输入一个浮点数(小数点后面有三位数),然后分别求出输出该数的整数部分和小数部分。
以下是使用 C 语言编写的程序,满足题目要求:
```c
#include <stdio.h>
int main() {
double a, r; // 声明浮点数类型的首项和公比
int n; // 声明整数类型的项数
scanf("%lf%lf%d", &a, &r, &n); // 输入三个数
int i;
for (i = 0; i < n; i++) {
if (i > 0) {
printf(" "); // 输出空格作为间隔
}
if ((int)a == a && (int)r == r) {
// 如果首项和公比均为整数,则输出整数
printf("%d", (int)a * (int)pow(r, i));
} else {
// 否则输出保留三位小数的浮点数
printf("%.3lf", a * pow(r, i));
}
}
printf("\n"); // 输出一个换行符
return 0;
}
```
程序的思路是:首先输入三个数,然后根据题目要求分别判断输出整数或者保留三位小数的浮点数。需要注意的是,当输出多个数时,需要在每两个数之间输出一个空格作为间隔,并且在所有数输出完毕后再输出一个换行符。
阅读全文