main( )
{ int a=2, i ;
for(i=0;i<3;i++) printf(“%4d”,f(a) ) ; }
f( int a)
{ int b=0,c=3;
b++; c++; return(a+b+c); }
答案一定要详细哦
return返回值是多少
追答函数参数a的值一直是main中调用的a的值, 注意, 两个a没有关系的, 就是赋值而已. b++ 后b为1, 同理c为4, return (2 + 1 + 4). 你程序中输出的就是函数的返回值. 还有什么不懂的, 你可以尝试下调试工具.
本回答被提问者采纳结果:
7 7 7
把你的代码的f()函数移动到main()上面,不然飚错:
#include<stdio.h>C语言 42.下列程序的运行结果是( ) void fun(int *a,int *b) {int *...
答案选B.函数 fun(int* a,int* b)的两个参数类型都是int*型.也就是说,参数变量a, b本身的值不会变.当传入两个实参int* x , int* y后.尽管fun里面作了交换操作,这种交换不会影响到原来的x,y变量值.要象这样定义FUN函数,才有意义.void fun(int *a,int *b){int k;�k=*a...
以下程序的运行结果是( )。 main() { int x = 4; do { printf("%2d...
4,C正确,选C——因为输出4后!x就是!4==0,就结束循环了。
以下程序的运行结果是 。 #include <stdio.h> main(){ int i,j; for...
运行结果是 press any key to continue
以下运行程序后的输出结果是#include<stdio.h>main(){int x=1,y=1...
首先指出程序中的三处错误,第一个是int m n中间应该有逗号,第二个是swtich拼写有错误,第三个是打印输入语句printf("x=%d,y=%d",x,y)有误。修正后程序的运行结果是:x=6,y=6。代码运行结果如下图所示:程序运行过程解析:1、完成变量的赋值,其中有x=1,y=1,m=1,n=1。2、执行第一...
以下程序的运行结果是 #include<stdio.h> void main() { int s=1,t...
我们一步步来:int s=1,t=1,a=5,b=2;if (a>0)s++; \/\/此时s=2 if (a>b)t+=s;else if (a==b)t=5;else t=2*s; \/\/此时t=t+s=1+2=3,因为只执行a>b,只执行t+=s;这一句 printf("s=%d,t=%d\\n",s,t); \/\/所以最后打印出s=2,t=3 ...
下面程序段的运行结果是( )。 char *p="abcdefgh"; p+=3; printf("%d...
让p指针指向“A”的地址,如果取值的话就*P拿到A了。这个函数返回的值是目标串的地址,也就是p啦,那么p是个指针怎么算地址的长度呢,其实就是strlen("ABCD")啦,为什么,计算机知道的啦,因为p指向了“ABCD”首地址了,而c语言中默认在ABCD后加个结束符的,所以答案就是4了。
70. 以下程序的运行结果是( ). void main() { int n='e'; switch(n...
答案是C,error good。先判断n为'e'(自减为后续工作,不影响switch),然后由上到下找switch的对应选项。没有'e'选项,则default符合,所以打印了error。没有break语句,则case只作为程序代码段标号,继续执行到break为止,打印了good。这道题的输出结果与default的位置有关。如果将default放到最后,则...
C语言 以下程序的运行结果为( ) void fun(int n) { if(n) fun(n-1...
先递归,再打印,当n为0的时候结束打印,但0还是会执行后续的输出 于是是从0打印到5 选c
C语言,以下程序的运行结果是?
define sw(x,y) {x^=y;y^=x;x^=y;} 这个宏的作用就是在不借助第三变量的情况下,交换x和y的值,^是位异或运算符,x^=y相当于x=x^y,具体什么是位异或运算,可以在网上轻意找到相关教材。b=01代表8进制数的1,1在任何进制计数系统中都相等。
以下程序的运行结果是( ). #include <stdio.h> #include <conio.h>...
if(a=6)这句出了问题,你这样写就变成赋值了,应该写成 if(a==6) 这样就应该正确了