`
小骏向前冲
  • 浏览: 18220 次
社区版块
存档分类
最新评论

华为机试题一

    博客分类:
  • C
阅读更多

题目描述:输入1到50个数字,求最大和最小数的和,输入的数以逗号

#include <stdio.h>
#define N 50
int getAverage(int a[], int count);
int main() {
    char str[100];
    int a[N] = {0};  //保存解析出来的数
    int i = 0;
    int j = 0;
    int sign = 1;
    gets(str);   //以字符串方式获取输入
    while(str[i] != '\0') {
        if(str[i] != ',') {
            if(str[i] == '-') {
                i++;
                sign = -1;   //如果输入字符是负号,把正负标志置-1
            }
            else {
                if(sign == 1) {  //要保存的是一个正数
                    if(a[j] == 0)
                        a[j] = (str[i] - '0');   //当前字符是普通整数并且上一个字符是逗号的情况
                    else if(a[j] > 0)
                        a[j] = a[j] * 10 + (str[i] - '0');  //当前字符和上一个字符都是普通整数的情况
                } else if(sign == -1) {  //要保存的是一个负数
                    if(a[j] == 0)
                        a[j] = (-1) * (str[i] - '0');   //当前字符是普通整数而上一个字符是负号的情况
                    else if(a[j] < 0)
                        a[j] = a[j] * 10 - (str[i] - '0');  //当前字符和上一个字符都是普通正式的情况
                }
                i++;
            }
        } else {  //读到“,”号意味着准备保存一个新的整数
            j++;
            i++;
            sign = 1;
        }
    }
    printf("最小数和最大数之和平均值:%d", getAverage(a, N));
    return 0;
}

int getAverage(int a[], int count) {
    int max, min;
    int i;
    max = min = a[0];
    for(i = 0; i < count; i++) {
        if(a[i] > max)
            max = a[i];
        if(a[i] < min)
            min = a[i];
    }
    return (max + min) / 2;
}

 隔开

 

分享到:
评论

相关推荐

    华为机试题合集

    1. **数据结构与算法**:华为机试题往往重视对数据结构的理解和应用,如链表、数组、栈、队列、树(二叉树、平衡树等)和图。在这些问题中,你可能需要实现排序算法(如快速排序、归并排序、堆排序)、查找算法(如...

    华为机试题校园招聘大全

    "华为机试题校园招聘大全"是华为公司在招聘过程中,为评估应聘者的技术能力、逻辑思维以及问题解决能力而设计的一系列题目集合。这份资料的整理工作耗时费力,汇聚了众多专业人士的经验与智慧,对于准备参加华为校园...

    华为机试题2020.zip

    【华为机试题2020.zip】这个压缩包文件包含了2020年华为公司面试中涉及的部分编程题目,特别是第二题和第三题的解题思路及对应的代码实现。由于第一题是经典模型,可能在其他资料中已经广泛讨论,所以此压缩包未包含...

    华为机试题源码合集

    华为机试题源码合集 本资源摘要信息中收录了多个华为机试题的源码合集,涵盖了基本的四则运算、字符串逆序、单词不逆序、单词逆序、大数的加法和乘法等多个知识点。下面将对每个知识点进行详细的阐述。 基本的四则...

    华为机试题大全

    【华为机试题大全】 华为作为全球知名的电信设备与信息技术解决方案供应商,其招聘过程中常常会包含技术性的机试环节。这份“华为机试题大全”集合了华为历年来的面试题目,旨在帮助求职者熟悉并准备华为的技术考核...

    [Java]华为机试题 2011-9-17

    【Java】华为机试题2011-9-17 在Java编程领域,华为的面试题往往涵盖广泛,从基础语法到高级设计模式,再到实际的编程问题解决能力。这篇2011年的机试题可能包括了多个部分,旨在评估候选人的Java编程技能和对软件...

    2014华为机试题

    2014-2012各地机试题大集锦华为上机考试试题

    华为C语言试题及参考答案.pdf

    华为C语言试题及参考答案.pdf 本资源文件提供了华为C语言试题及参考答案,涵盖了C语言基础知识、指针、数组、字符串、函数、预处理器 等方面的知识点。 一、判断题 1. 数组定义int a[2][2]={{1},{2,3}};则 a[0][1...

    华为机试题上机总结

    ### 华为机试题知识点解析 #### 一、选秀节目打分系统算法解析 ##### 题目背景: 在华为的机试题中,有一道题目是关于选秀节目的打分系统设计。题目要求根据专家评委和大众评委的不同评分,计算出选手的最终得分。...

    华为2018机试题附自己的答案.zip

    【华为2018机试题附自己的答案.zip】这个压缩包文件显然包含了华为公司在2018年进行的一次技术面试或笔试的题目及其解答。虽然没有具体的标签信息,但我们可以推断,这个资料可能涵盖了华为对求职者在IT领域的各种...

    华为机试题 二师弟的星际加法

    现在我们将首先给您一个数字表示N进制,然后给出两个数字的字符串,请算出其求和结果并输出,如果输入不能正常计算则输出-1。 说明: 1:数字的字符串其中包括0-9和a-z(表示10-35)。 2:所有的输入和输出都只会是...

    2022华为Java机试题.docx

    2022华为Java机试题 本资源摘要信息基于华为Java机试题,涵盖了多个Java编程领域的知识点,包括字符串处理、数组操作、算法实现等。下面是对相关知识点的详细解释: 1. 字符串处理: 在Java中,字符串是最基本的...

    华为射频天线笔试机试题(2021年)

    1. **电压驻波比(VSWR)**:电压驻波比是衡量传输线与负载匹配程度的指标,p=2表示存在一定的反射,但并未给出足够的信息计算具体反射系数和负载阻抗。 2. **磁力矩和磁感应强度**:正三角形线圈在磁场中受力矩的...

    华为机试题2013第二次

    【华为机试题2013第二次】是一场针对应聘者的技术测试,主要考察候选人的编程能力和计算机科学基础知识,尤其侧重于C++语言的应用。作为一项重要的面试环节,华为的机试题通常涵盖数据结构、算法、操作系统、网络...

    华为考试试题-答案.pdf

    【华为考试试题解析】 华为考试试题主要涵盖通信技术的基础知识,特别是无线通信领域的GSM和WCDMA技术。以下是对部分试题的详细解释: 1. 功率控制是无线通信中确保信号质量和覆盖的重要手段。GSM功率控制的调整...

    华为2010-2015年机试题面试题(含答案)

    这份资源涵盖了2010年至2015年间华为公司的机试题与面试题,不仅提供了编程题目的代码解答,还对面试问题进行了详尽的解释,这对于准备进入华为或者希望提升自己技术能力的IT从业者来说是一份宝贵的参考资料。...

Global site tag (gtag.js) - Google Analytics