欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2023年华为认证笔试题目.docx

    • 资源ID:92084506       资源大小:19.59KB        全文页数:25页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2023年华为认证笔试题目.docx

    2023华为认证笔试题目 第一题【20分】:鉴定回文数组 给定一个数组推断是否是回文,这题没什么好说明,直接看代码: 1 #include 2 using namespace std; 3 4 bool isHuiWen(string s) 5 6 int length_s=s.length(); 7 int i=0; 8 for(i=0;i(length_s1);i+) 9 10 if(s.at(i)!=s.at(length_s-1-i) 11 return false; 12 13 return true; 14 15 16 int main() 17 18 string ss=iloveevolis; 19 if(isHuiWen(ss) 20 21 coutHuiwen 22 23 else 24 25 coutNo 26 27 return 1; 28 其次题【30分】:求两个整型数组的异集,即A+B-(A与B的交集)。 这里只是供应我的一个思路: 这个问题的求解可以简化为统计数组A B中任何字符的个数,A+B-(A与B的交集)的结果就是统计仅仅消失过一次的数字: 但是题目中没有限制是字符,而是整形,数据量太大,这里借用了map操作,进展简化内存: 针对这个思路程序如下: 1 #include 2 #include 3 using namespace std; 4 5 map mi; 6 map:iterator mit; 7 int A10=1,2,3,4,5,6,3,2,8,9; 8 int B10=8,7,6,5,9,0,3,4,8,40; 9 int R20; 10 int RC=0; 11 12 13 void getAB(int* a,int na,int* b,int nb) 14 15 string re; 16 mi.clear(); 17 for(int i=0;i 18 19 mit=mi.find(ai); 20 if(mit!=mi.end() 21 22 mit-second+; 23 24 else 25 26 mi.insert(make_pair(ai,1); 27 28 29 30 for(i=0;i 31 32 mit=mi.find(bi); 33 if(mit!=mi.end() 34 35 mit-second+; 36 37 else 38 39 mi.insert(make_pair(bi,1); 40 41 42 43 for(mit=mi.begin(),i=0;mit!=mi.end();mit+) 44 45 if(mit-second=1) 46 47 Ri+=mit-first; 48 49 50 RC=i; 51 52 53 int main() 54 55 getAB(A,10,B,10); 56 for(int i=0;i 57 58 cout 59 60 return 1; 61 第三题【50分】:判定德州扑克的牌型。给5张牌,返回它的牌型,4个的,3个+对子,顺子,3个+2个单张,2对,1对,其他。 德州扑克我还是很喜爱玩的,其中牌型牌型可以有近10中结果,题目仅仅让我们推断七种。但是这七种结果不具有继承性,所以我们设计一个好的程序。 那么就要统一他们的表现形式,下面是我的思路: 排序 推断跳变次数 进展筛选结果 这样可以较为统一的处理各种结果,参考程序如下: 1 #include 2 #include 3 using namespace std; 4 5 struct Node 6 char type;/0 1 2 3四种花色,可以考虑用enum类型 7 int v;/面值 8 ; 9 10 Node N5= 11 0,5, 12 0,9, 13 0,2, 14 0,9, 15 0,9, 16 ; 17 18 int n_of_v5=0,0,0,0,0; 19 20 bool myCMP(Node a,Node b) 21 22 return a.vb.v; 23 24 25 bool myNCMP(int a,int b) 26 27 return ab; 28 29 30 /猎取每个的个数 31 int getN(Node* Nv) 32 33 int i=0; 34 int j=0; 35 int n=1; 36 for(i=0;i4;i+) 37 38 if(Nvi.v=Nvi+1.v) 39 40 n+; 41 42 else 43 44 n_of_vj+=n; 45 n=1; 46 47 48 n_of_vj+=n; 49 return j; 50 51 52 void showResult() 53 54 if(n_of_v0=4) 55 56 cout4+1 57 58 else if(n_of_v0=3n_of_v1=2) 59 60 cout3+2 61 62 else if(n_of_v0=3n_of_v1=1) 63 64 cout3+1+1 65 66 else if(n_of_v0=2n_of_v1=2) 67 68 cout2+2+1 69 70 else if(n_of_v0=2n_of_v1=1) 71 72 cout2+1+1+1 73 74 else if(n_of_v0=1) 75 76 /可能是顺子 77 if(N0.v=N1.v+1 78 N1.v=N2.v+1 79 N2.v=N3.v+1 80 N3.v=N4.v+1) 81 82 cout不好意思,出了个顺子 83 84 else 85 cout五张单牌 86 87 88 89 /传入大小为5的构造体数组 90 /进展推断 91 int getType(Node* Nv) 92 93 /首先排序 94 sort(N,N+5,myCMP); 95 /提取个数 96 getN(Nv); 97 sort(n_of_v,n_of_v+5,myNCMP); 98 99 /依据n_数组进展推断 100 101 if(n_of_v0=4) 102 103 cout四个一样的哦 104 105 106 return 1; 107 108 int main() 109 110 getType(N); 111 showResult(); 112 return 1; 113 2023华为认证笔试题目二 1、通过键盘输入100以内正整数的加、减运算式,请编写一个程序输出运算结果字符串。 输入字符串的格式为:“操作数1 运算符 操作数2”,“操作数”与“运算符”之间以一个空格隔开。 补充说明: 1. 操作数为正整数,不需要考虑计算结果溢出的状况。 2. 若输入算式格式错误,输出结果为“0”。 要求实现函数: void arithmetic(const char *pInputStr, long lInputLen, char *pOutputStr); 【输入】 pInputStr: 输入字符串 lInputLen: 输入字符串长度 【输出】 pOutputStr: 输出字符串,空间已经开拓好,与输入字符串等长; 【留意】只需要完成该函数功能算法,中间不需要有任何IO的输入输出 例如 输入:“4 + 7” 输出:“11” 输入:“4 - 7” 输出:“-3” 输入:“9 + 7” 输出:“0” 注:格式错误 复制代码 1 void arithmetic(const char *pInputStr,long lInputLen,char *pOutputStr) 2 3 assert(pInputStr!=NULL pOutputStr!=NULL lInputLen0); 4 int iOperand1=0; 5 int iOperand2=0; 6 char cSymbol; 7 long i; 8 for (i=0;i+) 9 10 if (pInputStri=0 pInputStri=9) 11 12 iOperand1=iOperand1*10+(pInputStri-0); 13 14 else if (pInputStri= ) 15 16 break; 17 18 else 19 20 return; 21 22 23 24 for (+i;i+) 25 26 if (pInputStri=+ | pInputStri=-) 27 28 cSymbol=pInputStri; 29 30 else if (pInputStri= ) 31 32 break; 33 34 else 35 36 return; 37 38 39 40 for (+i;i 41 42 if (pInputStri=0 pInputStri=9) 43 44 iOperand2=iOperand2*10+(pInputStri-0); 45 46 else 47 48 break; 49 50 51 int iTemp; 52 switch(cSymbol) 53 54 case +: 55 iTemp=iOperand1+iOperand2; 56 break; 57 case -: 58 iTemp=iOperand1-iOperand2; 59 break; 60 default: 61 break; 62 63 64 int k=0; 65 if (iTemp0) 66 67 iTemp=-iTemp; 68 pOutputStr0=-; 69 k+; 70 71 72 char cTemp10; 73 itoa(iTemp,cTemp,10); 74 int j=0; 75 while(cTempj) 76 77 pOutputStrk+=cTempj+; 78 79 80 pOutputStrk=0; 81 82 复制代码 2、手机号码合法性推断(20分) 问题描述: 我国大陆运营商的手机号码标准格式为:国家码+手机号码,例如:8613912345678。特点如下: 1、 长度13位; 2、 以86的国家码打头; 3、 手机号码的每一位都是数字。 请实现手机号码合法性推断的.函数(注:考生无需关注手机号码的真实性,也就是说诸如86123123456789这样的手机号码,我们也认为是合法的),要求: 1) 假如手机号码合法,返回0; 2) 假如手机号码长度不合法,返回1 3) 假如手机号码中包含非数字的字符,返回2; 4) 假如手机号码不是以86打头的,返回3; 【注】除胜利的状况外,以上其他合法性推断的优先级依次降低。也就是说,假如推断出长度不合法,直接返回1即可,不需要再做其他合法性推断。 要求实现函数: int verifyMsisdn(char* inMsisdn) 【输入】 char* inMsisdn,表示输入的手机号码字符串。 【输出】 无 【返回】 推断的结果,类型为int。 例如 输入: inMsisdn = “869123456789“ 输出: 无 返回: 1 输入: inMsisdn = “88139123456789“ 输出: 无 返回: 3 输入: inMsisdn = “86139123456789“ 输出: 无 返回: 0 复制代码 1 int verifyMsisdn(char *inMsisdn) 2 3 assert(inMsisdn!=NULL); 4 5 int iLen=strlen(inMsisdn); 6 if (iLen!=13) 7 8 return 1; 9 10 11 for (int i=0;i 12 13 if (inMsisdni0 | inMsisdni9) 14 15 return 2; 16 17 18 19 if (inMsisdn0!=8 | inMsisdn1!=6) 20 21 return 3; 22 23 24 return 0; 25 26 复制代码 3、将一个字符串的元音字母复制到另一个字符串,并排序(30分) 问题描述: 有一字符串,里面可能包含英文字母(大写、小写)、数字、特别字符,现在需要实现一函数,将此字符串中的元音字母选择出来,存入另一个字符串中,并对字符串中的字母进展从小到大的排序(小写的元音字母在前,大写的元音字母在后,依次有序)。 说明: 1、 元音字母是a,e,i,o,u,A,E,I,O,U。 2、 筛选出来的元音字母,不需要剔重(chong); 最终输出的字符串,小写元音字母排在前面,大写元音字母排在后面,依次有序。 要求实现函数: void sortVowel (char* input, char* output); 【输入】 char* input,表示输入的字符串 【输出】 char* output,排好序之后的元音字符串。 【返回】 无 例如 输入:char *input = “Abort!May Be Some Errors In Out System. “ 输出:char *output =“aeeeooouAEIO “ 复制代码 1 void sortVowel(char *pInput,char *pOutput) 2 3 assert(pInput!=NULL pOutput!=NULL); 4 5 int iLen=strlen(pInput); 6 char *pSmall=new chariLen+1; 7 char *pLarge=new chariLen+1; 8 9 int iSmallCount=0; 10 int iLargeCount=0; 11 12 for (int i=0;i 13 14 if (pInputi=a | pInputi=e | pInputi=i | pInputi=o | pInputi=u) 15 16 pSmalliSmallCount+=pInputi; 17 18 19 else if (pInputi=A | pInputi=E | pInputi=I | pInputi=O | pInputi=U) 20 21 pLargeiLargeCount+=pInputi; 22 23 24 25 sort(pSmall,pSmall+iSmallCount); 26 sort(pLarge,pLarge+iLargeCount); 27 28 int j,k=0; 29 for (j=0;j 30 31 pOutputk+=pSmallj; 32 33 for (j=0;j 34 35 pOutputk+=pLargej; 36 37 38 pOutputk=0; 39 40 delete pSmall; 41 delete pLarge; 42 复制代码 4、我国公民的身份证号码特点如下: 1、 长度为18位; 2、 第117位只能为数字; 3、 第18位可以是数字或者小写英文字母x。 4、 身份证号码的第714位表示持有人生日的年、月、日信息。 例如:511002198808080111或51100219880808011x。 请实现身份证号码合法性推断的函数。除满意以上要求外,需要对持有人生日的年、月、日信息进展校验。年份大于等于1900年,小于等于2100年。 需要考虑闰年、大小月的状况。所谓闰年,能被4整除且不能被100整除 或 能被400整除的年份,闰年的2月份为29天,非闰年的2月份为28天。其他状况的合法性校验,考生不用考虑。 函数返回值: 1) 假如身份证号合法,返回0; 2) 假如身份证号长度不合法,返回1; 3) 假如身份证号第117位含有非数字的字符,返回2; 4) 假如身份证号第18位既不是数字也不是英文小写字母x,返回3; 5) 假如身份证号的年信息非法,返回4; 6) 假如身份证号的月信息非法,返回5; 7) 假如身份证号的日信息非法,返回6(请留意闰年的状况); 【注】除胜利的状况外,以上其他合法性推断的优先级依次降低。也就是说,假如推断出长度不合法,直接返回1即可,不需要再做其他合法性推断。 要求实现函数: int verifyIDCard(char* input) 【输入】 char* input,表示输入的身份证号码字符串 【输出】 无 【返回】 推断的结果,类型为int 例如 1) 输入:”511002111222”,函数返回值:1; 2) 输入:”511002abc123456789”,函数返回值:2; 3) 输入:”51100219880808123a”,函数返回值:3; 4) 输入:”511002188808081234”,函数返回值:4;

    注意事项

    本文(2023年华为认证笔试题目.docx)为本站会员(夜**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开