目录
一.今天学习内容-函数
二.函数的基本结构
三.解题思路
-
int getSum(int a, int b)
-
{
-
return a+b;
-
}
题目中虽然说能不能用+,=符号,但是leetcode只会检测结果,不会检测过程,所以只需要直接水过就行啦。
另解:
-
int getSum(int a, int b) {
-
return (b += a);
-
}
-
};
题目中只说了不能使用+,=,但是没说不能使用+=符号!!!
-
int multiply(int A, int B)
-
{
-
return A * B;
-
}
水题了水题了
-
int divide(int a, int b){
-
if(a == -2147483648 && b == -1) {
-
return 2147483647;
-
}
-
return a / b;
2147483648就是2的三十次方,也可以用pow(2,30)来表示
-
double myPow(double x, int n){
-
return pow(x, n);
pow返回的是浮点型的数,这里需要注意的!!!
-
int mySqrt(int x)
-
{
-
return (int)sqrt(x);
-
}
这里需要注意的是sqrt函数返回的也是浮点型,题目要求的是需要整数型,所以要使用强制转换类型,c强制转换类型是(int),而像其他语言如python是
int()
-
int maximum(int a, int b)
-
{
-
return a > b ? a : b; //这是用的是三元运算符,相当于if else
-
}
6.最大数值
编写一个方法,找出两个数字a
和b
中最大的那一个。不得使用if-else或其他比较运算符。
-
int maximum(int a, int b)
-
{
-
return a>b?a:b;
-
}
当有两个数字找最值时,利用三元运算符是最简单的,那么如果是三个数字找最值呢
编写一个方法,找出三个数字a
和b
和c中最大的那一个。
-
int maxx(int a ,int b, int c)
-
{
-
int max=0;//max的初始化
-
max = a > b ? a : b;//两个三元运算符实现取最大值
-
max = max > c ? max : c;
-
return max;
-
}
我们再延申一下,如果是n个数字找最大值,怎么做呢?