c语言编写程序,输入两个正整数m和n(m<=n),求 S=1/m+1/(m+1)+1/(m+2)+…+1/(n-1)+1/n。结果保留10位小数。
时间: 2023-08-04 09:02:43 浏览: 95
以下是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int m, n;
printf("请输入正整数m:");
scanf("%d", &m);
printf("请输入正整数n(n大于等于m):");
scanf("%d", &n);
double S = 0.0;
for (int i = m; i <= n; i++) {
S += 1.0 / i;
}
printf("S的值为:%.10f\n", S);
return 0;
}
```
输入m和n后,程序会使用for循环计算S的值,最后输出结果。注意,为了保留10位小数,我们使用了格式化字符串,其中的`.10f`表示保留10位小数。在C语言中,需要使用`double`类型来存储浮点数,以保证运算精度。
相关问题
C语言编写程序,输入两个正整数 m 和n (2<=m<=5,2<=n,=5),为m*n 的矩阵a输入元素值,然后求出该矩阵所有元素的平均值。
好的,以下是一个用C语言编写的求解矩阵元素平均值的代码:
```c
#include <stdio.h>
int main()
{
int m, n, a[5][5], i, j, sum = 0;
float avg;
printf("请输入矩阵的大小(2 ≤ m,n ≤ 5):");
scanf("%d%d", &m, &n);
printf("请输入矩阵元素值:\n");
for(i = 0; i < m; i++)
{
for(j = 0; j < n; j++)
{
scanf("%d", &a[i][j]); // 输入矩阵元素
sum += a[i][j]; // 累加矩阵元素的值
}
}
avg = (float)sum / (m * n); // 计算矩阵元素的平均值
printf("矩阵元素的平均值为:%.2f\n", avg); // 输出结果
return 0;
}
```
在该代码中,使用了两个变量m和n来表示矩阵的行数和列数,使用了二维数组a来存储矩阵元素。通过for循环遍历矩阵元素,并使用sum变量来累加矩阵元素的值。最后,通过计算(sum / (m * n))来求出矩阵元素的平均值,并使用printf函数输出结果。注意,需要将sum转换为float类型,以避免整数除法的问题。
用c语言编写程序:输入两个正整数 m 和 n(1<=m, n<=1000),输出 m 到 n之间的所有满足各位数字的立方和等于它本身的数
好的,以下是用C语言编写的程序,可以实现输入两个正整数 m 和 n(1<=m, n<=1000),输出 m 到 n之间的所有满足各位数字的立方和等于它本身的数。
```c
#include <stdio.h>
int main() {
int m, n;
printf("请输入两个正整数m和n(1<=m, n<=1000):\n");
scanf("%d %d", &m, &n);
for (int i = m; i <= n; i++) {
int num = i, sum = 0;
while (num > 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
if (sum == i) {
printf("%d\n", i);
}
}
return 0;
}
```
程序中的思路是:遍历m到n之间的所有整数,对于每个整数,将它的各位数字的立方和累加,如果等于它本身,则输出该数。
阅读全文