比较 a,b,c大小,为什么把return(z); 去掉就不对了?#include "stdio.h"int max(int a,int b,int c){ int z; if (a>=b) { z=a; } else { z=b; } if (z
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/29 03:54:42
比较 a,b,c大小,为什么把return(z); 去掉就不对了?#include "stdio.h"int max(int a,int b,int c){ int z; if (a>=b) { z=a; } else { z=b; } if (z
比较 a,b,c大小,为什么把return(z); 去掉就不对了?
#include "stdio.h"
int max(int a,int b,int c){ int z; if (a>=b) { z=a; } else { z=b; } if (z
比较 a,b,c大小,为什么把return(z); 去掉就不对了?#include "stdio.h"int max(int a,int b,int c){ int z; if (a>=b) { z=a; } else { z=b; } if (z
在函数int max(int a,int b,int c)中,申请的变量int z 是在栈上分配的临时局部变量,和你主函数main中的z变量不是相同的,当你在主函数中调用max函数过后,max函数执行结束如果不把z值返回(就是return(z)),z 的值就会随max函数的执行结束而释放掉,在你的主函数中得不到最大值,而你主函数中的z没有初始化,将是一个不确定的值.
因为你定义了一个max的函数 并且他为int型的 所以必须返回一个int型的参数。
int max(int a,int b,int c){ int z; if (a>=b) { z=a; } else { z=b; } if (z
你定义的方法有返回值,所以必须返回一个该类型的返回值