m);
int func(int a.有一段程序我看不懂,为什么还可使用return语句
3,p),不明白它的执行过程
2,p;
m=i+a+b.既然函数已定义为空类型;
p=func(k.程序如下,int b):
#include <.h>stdio;%d"
return(m);
void main()
{
int k=4,m=1;
printf(";
i+=m+1;
}
int func(int a,int b)
{
static int m=0,i=21
=func(k,m);;
printf("%d",p);
输出p值为8,也就是m的值
问一个c程序问题,希望各位帮帮忙
答案:5 悬赏:40 手机版
解决时间 2021-02-21 12:57
- 提问者网友:無理詩人
- 2021-02-21 05:03
最佳答案
- 五星知识达人网友:胯下狙击手
- 2021-02-21 05:08
return语句是返回这个int func(int a,int b); 函数的值给p这个函数不是空类型啊。
全部回答
- 1楼网友:纵马山川剑自提
- 2021-02-21 08:51
2
printf("number 是执行顺序
你使用return的那个函数(func)的返回类型是int#include
void main()
{
int k=4; /stdio,i=2;/// //,m);,p);7
}
int func(int a; /
int func(int a;4
m=i+a+b,p;3
i+=m+1,int b)
{
static int m=0;%d"/ /5
return(m).h> /,int b),m=1;1
p=func(k; // //6
}
/,不是void
- 2楼网友:思契十里
- 2021-02-21 07:26
一般地,在表达式中要求两个操作数的类型一致,如果操作类型不一致,则转换为高的类型,各种类型的由低到高顺序如下:bool-- float | | char----int--unsigned--long--unsigned long--double--long double | shor-- '\373'为字符型char,开始不能参与运算,所以开始转换上一级类型int整型,再与转为双精度浮点型的x比较
- 3楼网友:長槍戰八方
- 2021-02-21 06:15
int func(int a,int b)
{
static int m=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
}
这个是函数 定义类型为int 所以返回一个m为int类型,这个和主函数没有关系.
int func(int a,int b)
定义了2个参数.
int k=4,m=1,p;
p=func(k,m);
这句实际上是传入了k,m,2个参数
和函数 func的定义吻合
- 4楼网友:北城痞子
- 2021-02-21 05:26
8
int func(int a,int b),函数类型不是空类型啊,是整型的
static int m=0,i=2;
i+=m+1; 即(i=2+0+1=3)
m=i+a+b; 即(m=3+4+1=8)
return(m); 即(p=func(k,m)=8)
关于问题补充:
p=func(k,m); 里的m参数和return(m);中的m不是一回事
p=func(k,m); 里的m是参数,它在函数func(int a,int b)里和b是相等的,k和a是相等的。而return(m)中的m是函数func(int a,int b)里定义的static int m=0,它作为返回值传给main() 里的p
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯