#include<stdio.h>
void f() {
static int a = 200;
int b = 1;
++b;
printf("%d+%d=%d\n", a, b, a+b);
a += 200;
}
main()
{
int i;
for (i= 1; i <= 5; i++)
f();
}
400+2
600+2
800+2
1000+2
怎么把2变成+1
+2
+3
+4
怎么把+2变成
+1
+2
+3
+4
改正如下:
#include<stdio.h>
void f() {
static int a = 200;
static int b = 1;
++b;
printf("%d+%d=%d\n", a, b, a+b);
a += 200;
}
main()
{
int i;
for (i= 1; i <= 5; i++)
f();
}
希望对题主有所帮助!可以的话,帮忙点个采纳!
啥意思,还不行么?
将b声明为static即可,代码修改如下
#include<stdio.h>
void f() {
static int a = 200;
static int b = 1; //b声明为static
printf("%d+%d=%d\n", a, b++, a + b);
a += 200;
}
main()
{
int i;
for (i = 1; i <= 5; i++)
f();
}