高分求解~C语言小程序谢谢

2024-12-28 18:08:53
推荐回答(5个)
回答1:

我来给你来个终极详细的解吧:
如下:1 给i,a赋值
2 利用i这个变量做一个 for循环 因为 i<2 所以i从 0开始 循环2次,分别是0 , 1
3 所以,每循环一次就打出一个 f(a) 和 a+b

以上为主程序 main 里的.

然后就是MAIN外的 他这定义 int f 代替定义 f(a)
然后这里定义b=1 c=2 并在此基础上做一个自加程序.
再返回a+b+c=5的值 到f(a)里. 同时返回 a+b的值 3 到 a+b里.
但是同时你要注意了. 边循环的时候,b和c的值都在做++的运算,所以第2次循环的时候 返回 a+b+c=7 a+b=4

所以呢,就这样.循环两次,4个值表达出来...题目也结束了....

看我打的如此之辛苦,理当多多加分 ^ ^ 在此,谢谢

回答2:

a的值一直是2;
main前定义的b值一直是1; main前面定义的是全局变量,函数里面的b值改变
不影响外面的b的值;
b++运行两次;
c++一次也没执行,因为c是静态变量,只能初始化赋值,其他地方不能改变其值
printf都执行两次
其实这些问题,你找个编译器跑一次就解决了,不用这么麻烦到网上来问的。。
比如:
想知道b++执行几次 就在b++后面加一条printf语句就行了

回答3:

其实在MAIN()外定义的是外部变量,在整个程序中多可以调用,但是MAIN()内部的A,B会被被覆盖的,所以其实他执行的是内部的A,B的值。

你是不是写错啦,那个被调用的函数应该在MAIN()外面吧,所以被调用的A应该是外部变量的A,其他的多被内部变量给覆盖了。
至于B++,C++运行几次就看FOR循环了,因为如果没有{}默认执行printf("%d,",f(a)); 可以知道FOR循环总共循环两次,所以执行printf("%d,",f(a)); 两次,那么就被调用两次,所以就运行两次。printf("%d,",f(a));这个执行两次
printf("%d\n";a+b); 这个执行一次。
看来你对C还是了解的不过好,这好像很基本,要多多学习哦

回答4:

7,4
8,5
static什么功能?a,b都是变量,开始赋值了,主要是怕程序出错的,也可以在后面赋值,具体等于多少就看它最后赋的值是多少了,I=0;I<2;I++,说面I的取值可以是0和1;两个PRINTF都执行了两次,我也是两年前学的,考完证就没摸过了!

回答5:

你可以把这个放到VS2005里设断点DEBUG,每个都清清楚楚的