华为机试题目_(转载总结)

原作者地址:http://blog.csdn.net/xcbeyond/article/details/45627247

题目二

2.程序实现目标:求一个整型数组中元素的平均值,并统计其中大于和小于此平均值的元素的个数。

程序要求:输入:整型数组中的元素个数及各个元素。

输出:整型数组中元素的平均值,大于和小于此平均值的元素的个数。

/*
 * 一点总结:
 * 1、Java中没有指针,那么如何定义全局变量,还是只要public就可以共享了呢,试下去掉static可不可以:错误:无法在静态方法中引用非静态变量
 * 2、全部设置为static;不管是方法还是全局变量;定义了public型的全局变量在各个成员函数中不需要再定义,直接使用即可
 * 3、输出流的import java.util.Arrays;包的使用;Arrays.toString(array)可以将数组转换成字符串输出;
 */
package HW;

import java.util.Arrays;    //Arrays.toString(array)的使用

public class test_tm2 {
    public static int average = 0;     // 定义一个全局静态变量;
    //public  int average = 0;     // 定义一个全局静态变量;

    public static void main(String[] args){
        int[] array={1,23,4,13,6} ;
        int kk = avg(array) ;
        int mm[] = countAvg(array) ;
        System.out.println("数组"+Arrays.toString(array)+"的平均值是:"+kk+
        "大于和小于平均值元素的个数分别为:"+Arrays.toString(mm));

    }

    public static int[] countAvg(int[] array){
        int gt = 0; //大于
        int lt = 0; //小于
        int[] result = {0,0};
        for(int i=0;i<array.length;i++) {
            if(array[i]>average){
                gt++;
            }else if(array[i]<average){
                lt++;
            }
        }
        result[0] = gt ;
        result[1] = lt ;

        return result;
    }
    public static int avg(int[] array){
        //int average = 0 ;
        int sum=0;
        for(int i=0;i<array.length;i++){
            sum += array[i] ;
        }
        average = sum/array.length ;

        return average;
    }

}
时间: 2024-12-04 22:34:53

华为机试题目_(转载总结)的相关文章

2016校招华为机试题目回忆1

题目一:根据指定的分隔符分隔字符串,并输出指定的段 描述 根据指定的分隔符分隔字符串,并输出指定的段.如果指定的段超过分隔的段数,输出:NULL 举例: AAA?BBB?CCC??2 字符串为:AAA?BBB?CCC? 分隔符为:? 指定的段为:2 字符串分割为:AAA BBB CCC共三段,第2段字符串为:BBB 输入输出格式要求 输入分隔字符串长度小于128个字符,指定的段是一个正整数. 样例 输入:AAA?BBB?CCC??2 输出:BBB 题目二:输入若干整数,输出其中能被这些整数中其他

2016校招华为机试题目回忆

题目一:字符串格式化输出 AAABBBBCC–>A3B4C2 将字符串按照字符+连续重复数格式化输出 题目二:好友推荐 有n个人,每个人都有各自的好友列表.给定一个阈值p,当A和B的共同好友数超过p则推荐A和B为好友.请实现自动推荐直到没有好友可以推荐(每次推荐默认同意,即一定成为好友),然后进行一些查询. 查询1:A的好友数有几个?如果A不在这n个里面,输出-1,否则输出好友数: 查询2:A和B是好友吗?如果是则输出0,否则输出-1. 输入:p n m x y p为阈值,n为人数,m为初始时的

Java机试题目_怎样截取字符串

面试题1  怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串.但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个". 试题分析 本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这

华为机试题目---字符串替换

题目要求:输入一个字符串,然后在输入一个整数,就是替换字符串的次数,然后依次输入需要替换的字符串-- 例如: 输入:abcdefg 3 a->qwe b->s fg->abc 输出:qwescdeabc //字符串替换 #include<iostream> #include<vector> #include<string> #define max 100 using namespace std; void change(char str[],int c

华为机试题目

1.求区间最高分 int getMax(int *pScore, int low, int high) { if(low > high) { high = low ^ high; low = low ^ high; high = low ^ high; } int maxScore = pScore[low]; for(int i = low + 1; i <= high; ++i) { if(maxScore < pScore[i]) { maxScore = pScore[i]; }

华为机试正式版(西安c/c++/java),今天下午去机试的题目,新鲜出炉了!

以下题目都是回忆的,题目都很简单, 大家有些基础就可以参加!(语言可以是c/c++,也可以是java的) 题目一(60分): 字符串操作, 将小写转换成大写, 将大写转化为小写, 数字的不做转换 例如, 输入:aBcD12 输出:AbCd12 题目二(100分): 将输入的字符串按照规定重新排序,如果字符串长度为奇数, 则中间的字符保持不变, 中间字符左侧降序排列, 右侧字符按照升序排列, 如果字符串长度为偶数,则左半侧字符降序排列,右半侧字符则按照升序排列 例如, 输入:ab5de 输出:ba

2014年七月华为校招机试题目--最难的一道, 呵呵!

今天百无聊赖之时, 漫心看到14年的华为校招机试题目, 一共三道, 前两道皆是平平, 第三道却柳暗花明, 让人眼前一亮. 咋一看, 饶有趣味, 看似平淡无奇, 然而却玄机颇深(对我这种弱渣而言).(不过对于ACMer, 好像应该用基础算法, 就能解决!) (然而我也只会基础的算法!!忏愧的紧!!!).如果有幸被大神看到, 能指点我一两招, 不胜感激!  下面是题目和我的详细题解思路(可供巨巨一笑!嘿嘿!). 2014年七月华为校招机试题目: 第三题: 输入一个正整数X,在下面的等式左边的数字之间

华为2016机试题目01

牛客网做的华为2016机试题目,新手,代码较乱,一起讨论. 题目要求如下: 老师想知道从某某同学当中,分数最高的是多少,现在请你编程模拟老师的询问.当然,老师有时候需要更新某位同学的成绩. 输入描述: 输入包括多组测试数据. 每组输入第一行是两个正整数N和M(0 < N <= 30000,0 < M < 5000),分别代表学生的数目和操作的数目. 学生ID编号从1编到N. 第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩 接下来又M行,每一行有一

[华为机试真题]66.单词搜索

题目 代码 /*--------------------------------------- * 日期:2015-07-06 * 作者:SJF0115 * 题目:WordSearch * 来源:华为机试真题 -----------------------------------------*/ #include <iostream> #include <string> #include <vector> #include <stack> #include