#include<stdio.h> int mian() { int func( int a,int b ); int k = 4,m = 1,p; p = func(k,m); printf("%d",p); p = func(k,m); printf("%d\n",p); return 0; } int func( int a,int b ) { static int m = 0,i = 2; i += m + 1; m = i + a +b; return m; }运行结果
时间: 2024-03-23 09:40:04 浏览: 57
#include <stdio.h>
这段代码有一个错误,`mian` 应该是 `main`,因此程序无法编译通过。以下是代码的修改后的运行结果:
```
8 15
```
第一次调用 `func()` 函数时,`a` 为 `4`,`b` 为 `1`,因此 `m` 的初始值为 `0`,`i` 的初始值为 `2`。在函数的执行过程中,`i` 的值变为 `4`,`m` 的值变为 `7`,函数返回 `7`。
第二次调用 `func()` 函数时,`a` 仍为 `4`,`b` 仍为 `1`,但是由于 `m` 的值已经变为 `7`,因此 `i` 的初始值为 `10`。在函数的执行过程中,`i` 的值变为 `18`,`m` 的值变为 `30`,函数返回 `30`。
阅读全文