关闭

java学习12--函数--练习

128人阅读 评论(0) 收藏 举报
分类:

需求1: 定义一个功能,完成两个整数的和的获取。
需求2: 定义一个功能,画一个矩形在控制台。
需求3: 定义一个功能,比较两个数是否相等。
需求4: 定义一个功能,获取两个整数中较大的那个数。
打印99乘法表
根据考试成绩获取学生分数对应的等级

class FunctionTest
{
    public static void main(String[] args) 
    {
        draw(4,6);
        draw(7,9);
        System.out.println(equals(5,5));
        int max = getMax(5,8);
        System.out.println(max);
        print99();  
        char x = getLevel(95);
        System.out.println(x);
//  主函数里面的语句只是调用函数用的。不要在主函数中写函数。    
    }

    /*
    需求1: 定义一个功能,完成两个整数的和的获取。
    思路:既然定义功能,就是可以用函数来体现。

        如何定义一个函数呢?通过两个明确来完成。
    明确一:这个功能的结果是什么?
        是和。是功能的结果,所以该功能的返回值类型是int。
        其实就是在明确函数的返回值类型。结果=确定返回值类型。

    明确二:这个功能实现过程中是否需要未知内容参与运算?
        有,加数和被加数。这就是函数的参数列表(参数的个数,参数的类型)
        其实就是在明确参数列表。

    注意:返回值类型和参数类型没有直接关系。
    */
    public static int add(int a,int b)//修饰符,类型,名称(参数类型,形参)
    {
        int sum = a+b;//执行语句怎么写看自己个人了,只要实现功能即可
        return sum;
    }

    /*
    需求2: 定义一个功能,画一个矩形在控制台。
    明确一:这个功能的结果是什么?
        没有结果,因为直接打印到了控制台,并未返回给调用者。
        用void表示。
    明确二:这个功能实现过程中是否需要未知内容参与运算?
        有,行和列不确定。两个。整数 int.
    */
    public static void draw(int row,int col)//row行,col列
    {
        for (int x=1; x<=row ;x++ )
        {
            for (int y=1;y<=col ; y++ )
            {
                System.out.print("*");
            }
            System.out.println();
        }
//      return ;//可以省略不写。
    }


    /*
    需求3: 定义一个功能,比较两个数是否相等。
    明确一:这个功能的结果是什么?
            有,boolean.
    明确二:这个功能实现过程中是否需要未知内容参与运算?
            有,两个整数。
    */
    public static boolean equals(int a,int b)//两个数是否想等
    {

//      if(a==b)
//          return true;
//      else
//          return false;

//      boolean x ;
//      if(a==b)
//          x = true;
//      else
//          x = false;
//      return x;

//      return (a==b)?true:false;//三元运算符运算完必须有结果,ifelse语句执行完不一定要有结果
        return a==b;//等同于上句
    }

    /*
    需求4: 定义一个功能,获取两个整数中较大的那个数。
    明确一:这个功能的结果是什么?
            有,其中一个数。 int
    明确二:这个功能实现过程中是否需要未知内容参与运算?
            有,参与比较的两个整数 int
    */
    public static int getMax(int a,int b)//形参a、b的作用域仅在当前函数中,所a、b不冲突
    {
        /*
        if(a>b)
            return a;
        else
            return b;
        */
        return a>b?a:b;//代码简化
    }

    /*
    定义功能,打印99乘法表。
    1、没有结果,直接打印的
    2、参数:可以没有
    */
    public static void print99()
    {
        for(int x=1; x<=9; x++)
        {
            for(int y=1; y<=x; y++)
            {
                System.out.print(y+"*"+x+"="+y*x+"\t");
            }
            System.out.println();
        }
    }

    /*
    根据考试成绩获取学生分数对应的等级
    90~100     A
    80~89      B
    70~79      C
    60~69      D
    60以下        E

    结果:等级,字符,char
    参数:分数 ,int.
    */
    public static char getLevel(int num)
    {
        char level ;
        if(num>=90 && num<=100)
            level = 'A';//写return时不执行下面的句子,所以定义了level。
        else if(num>=80 && num<=89)//加了else就可以使得分数少进行比较,比如95满足了第一个,就不会再比较了。
            level =  'B';
        else if(num>=70 && num<=79)
            level =  'C';
        else if(num>=60 && num<=69)
            level =  'D';
        else 
            level =  'E';

        return level;
    }
//  编译在于检查代码,语法格式,值在哪没关系;
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3930次
    • 积分:243
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档