以下程序的运行结果是__
发布网友
发布时间:2022-05-20 17:51
我来回答
共4个回答
热心网友
时间:2023-11-06 03:07
这个程序本身就没有错啊!!只是要保持一个好习惯调用函数之前要先声明.
至于运行结果为什么会是这样呢?前三次的reset函数的调用对i都是没有用的,因为输出的是i的值,所以i=5,i=2,i=2(第二次的时候i被赋值为i/2=2).之后调用workover,在workover中,i(此时为2)被赋值(i%i)*((i*i)/(2*i)+4),因为i%i的值为0,则该式为0*((i*i)/(2*i)+4), 故为0,所以在workover中输出i的值为0.接着在主函数中,输出i的值为2.
故运行结果为
i=5
i=2
i=2
i=0
i=2
热心网友
时间:2023-11-06 03:07
此程序的运行结果为:
最后一项输出格式是d%,所以输出的是a和c的ASCII码之和130。
热心网友
时间:2023-11-06 03:08
在使用函数前要先声明
运行结果是:
i=5
i=2
i=2
i=0
i=2
#include<stdio.h>
int i=0;
int reset(int i);
int workover(int i);
main()
{int i=5;
reset(i/2); printf("i=%d\n",i);
reset(i=i/2); printf("i=%d\n",i);
reset(i/2); printf("i=%d\n",i);
workover(i); printf("i=%d\n",i);
}
int workover(int i)
{i=(i%i)*((i*i)/(2*i)+4);
printf("i=%d\n",i);
return(i);
}
int reset(int i)
{i=i<=2?5:0;
return(i);
}
热心网友
时间:2023-11-06 03:08
i=5
i=2
i=2
i=0
i=2