完善程序 int i,j; [填空1] =n; [填空2] =e; for (i=0;i<n;i++) for (j=0;j<n;j++) g.edges[i][j]=A[i][j];
时间: 2024-01-02 11:03:01 浏览: 27
可以将[填空1]填写为"g.vertex_num",将[填空2]填写为"g.edge_num",最终程序如下:
```c++
int i,j;
g.vertex_num=n;
g.edge_num=e;
for (i=0;i<n;i++)
for (j=0;j<n;j++)
g.edges[i][j]=A[i][j];
```
相关问题
填空void fun(float *sn,int n) { float s=0.0,w,f=-1.0; int i=0; for (i=0;i<=n;i++); { f= 1* f; w=f/(2*i+1); s+=w; } 2=s; }
这段代码有一些问题,无法通过编译。
1. 函数名前应该有返回类型,比如 `void`、`int` 等。
2. 第7行多了一个分号,导致整个 for 循环没有任何效果。
3. 第9行的 `2=s;` 也是一个语法错误,应该为 `*sn=s;`。
修正后的代码应该是这样的:
```c++
void fun(float *sn, int n) {
float s = 0.0, w, f = -1.0;
int i = 0;
for (i = 0; i <= n; i++) {
f = -1 * f;
w = f / (2 * i + 1);
s += w;
}
*sn = s;
}
```
这个函数的作用是计算 $\pi/4$ 的近似值,具体方法是用莱布尼茨级数进行求和。传入参数 `n` 表示级数的项数,返回值通过指针 `sn` 传出。
程序的功能是计算s = 1 ! + 2 ! + 3 ! + 4 ! + 5 ! +…. + n ! # include<stdio.h > long fun ( int n ) { int i ; long s = [填空1 ] ; for ( i = 1 ; i<=n;i++ ) s = [填空2 ] ; return s ; } int main ( ) { long s = 0 ; int k , n ; scanf ( % d , & n ) ; for ( k = 1 ; k\u003C=n;k++ ) / /计算1 ! + 2 ! + 3 ! + ... . _ n ! s = [填空3 ] ; printf ( % ld \ , s ) ; }
这是一道经典的阶乘求和题目,程序应该填写如下:
```
#include <stdio.h>
long fun(int n) {
int i;
long s = 1; // 填空1:初始化s为1
for (i = 1; i <= n; i++) {
s *= i; // 填空2:累乘i
}
return s;
}
int main() {
long s = 0;
int k, n;
scanf("%d", &n);
for (k = 1; k <= n; k++) {
s += fun(k); // 填空3:累加每个阶乘的值
}
printf("%ld", s);
return 0;
}
```
程序的功能是计算 s = 1! + 2! + 3! + 4! + 5! + …. + n!,其中 ! 表示阶乘。程序中的函数 fun(n) 用于计算 n 的阶乘,主函数中则通过循环计算出每个阶乘的值并累加到变量 s 中,最后输出 s 的值。