第二届华为杯软件编程大赛初赛试题 22011年华为杯校园编程大赛 42011华为编程大赛初赛成都赛区试题(c语言b卷) 52010年华为软件校园招聘编程测验 72012华为编程大赛试题 172012年华为杯校园编程大赛决赛 18程序设计大赛报名表 20华为编程规范. 20第二届华为杯软件编程大赛初赛试题考试要求:1、根据给定需求,在规定时间内(3个小时)完成试卷2、提供统一的工程供编程及测试: 开发调试环境:Visual C++ 6.0 运行平台:Windows 3、编程语言:C/C++4、工程文件已经为考生准备好,所有文件,函数命名等,必须按照本要求提供,否则软件无法自动阅卷,将记录为0分5、闭卷考试,考试期间,不得翻阅书籍参加考试的人员须单独完成 ,不允许互相讨论交流,更不允许互相拷贝,不得进行其他任何违反公平公正原则的活动6.开考试根据公示的服务器地址,下载试题(web页面)7.考试结束时按照要求打包,点击提交按钮提交客观题答案和编程题答案考试标准1、程序生成test.exe文件,且可正常运行2、采用自动测试用来进行评分,测试用例由主考官掌握,不对考生公开: 出现严重问题(死循环、异常中止)则中止后续用例执行;考试程序的工程说明1、 试题工程。
请把提供的test.rar文件,解压到C 盘根目录,双击test.dsw即可使用VC6打开开始工程,开始考试过程示例:解压后文件列表如下:2、考试代码考生只允许在fun.cpp和func.h两个程序文件中按照要求实现题目中要求的函数;另外提供了一个测试入口函数TestEntry,可根据提示在里面进行测试;可在该两个文件中自行定义其它需要的内部函数3、编译、调试代码编完后,在VC环境下进行编译、调试,并直接在工程中目录下生成可执行文件test.exe工程默认该路径,请不要更改工程设置)4、工程提交程序调试完成或考试结束时,按“交付件要求”打包提交文件交附件要求 点击提交编程题答案,提交test.exe;l 请严格按上述要求打包交付件,如未按要求提交,将影响后续的自动阅卷工作,后果自负!特别提醒:请最好编完一个功能即进行自测,通过后再实现下一个功能,避免将所有代码写完后统一调试,由于时间或技术问题出现所有功能都没有完成情况尽量避免出现异常等导致程序崩溃的情况,出现崩溃的情况则中止阅卷;2011年华为杯校园编程大赛类别:软件C语言 编程题(共3题,第一题20分,第二题30分,第三题50分,共100分。
请上机编写程序,按题目要求提交文件[详见考试说明]本试题采用自动测试用例进行评分,测试用例不对考生公开,凡不满足提交要求导致不能运行或用例不通过,不予评分) 矩阵转置(20分)问题描述将一个N*N矩阵的行列互换要求实现函数 void MatrixTranspose (const char *InArr, unsigned int n, const char *OutArray)【输入】InArr: 输入的字符矩阵n: N*N矩阵的行数【输出】OutArray: 转置后的字符矩阵【返回】 无注:输入输出的矩阵都是以一维形式保存的二维数组,比如输入为{‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’},实际上表示如下3*3的矩阵‘1’,’2’,’3’,‘4’,’5’,’6’,‘7’,’8’,’9’示例输入InArr = {‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’},n=3输出OutArray = {‘1’,’4’,’7’,’2’,’5’,’8’,’3’,’6’,’9’}2、出圈问题(30分)问题描述M个人围成一圈报数,数到N(1
现给定路径长度Y,找到能够到达的公交站的个数,路径中不能包含路障路径长度定义:节点与其自身的距离为0节点与其上、下、左、右四个相邻节点距离都为1要求实现函数int FindStat (const char *Map, unsigned int iArrN, unsigned int iPathLen)【输入】Map: 城市布局iArrN: 城市布局矩阵的行数iPathLen: 给定的路径长度【输出】无【返回】能够到达的公交站个数注:输入矩阵是以一维形式保存的二维数组,比如输入为{‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’,’G’, ‘H’, ‘I’},实际上表示如下3*3的矩阵‘A’,’B’,’C’,‘D’,’E’,’F’,‘G’,’H’,’I’示例输入:"...S........X.S.....S....", 5, 3返回:2输入:"S...S.........BS........X", 5, 5返回:12011华为编程大赛初赛成都赛区试题(c语言b卷) 2011-05-30 14:19 2126人阅读 评论(0) 收藏 举报 编程华为语言c测试算法2011 年华为杯校园编程大赛 类别:软件C 语言 编程题(共 3 题,第一题20 分,第二题30 分,第三题50 分,共100 分。
请上机编写程序,按题目要求提交文件[详见考试说明] 本试题采用自动测试用例进行评分,测试用例不对考生公开,凡不满足提交要求导致不能运行或用例不通过,不予评分) 1、 排序算法( 20 分) l 问题描述 将给定的无序整数数组降序排列后输出,输入的无序数组长度为 N ,类型为 unsigned int l 要求实现函数 void DscSort (const int InputArray[], unsigned int n, int OutputArray[]) 【输入】 InputArray : 给定的无序数组 n : 数组长度 【输出】 OutputArray : 排序后的数组 【返回】无 l 示例 输入: InputArray={1,5,4,8,3,2,9,6,7,0} 输出: OutputArray={9,8,7,6,5,4,3,2,1,0} 2 、查找最大的不重复数( 30 分) l 问题描述 如果一个数字十进制表达时,不存在连续两位相同,则称之为“不重复数”例如, 105 、 1234 和 12121 都是“不重复数”,而 11 、 100 和 1225 不是。
给定一个正整数 A ,返回大于 A 的最小“不重复数” A 小于 100000 l 要求实现函数 unsigned int GetNotRepeatNum(unsigned int lValue) 【输入】 lValue : 给定的数字,返回大于该值的最小不重复数 【输出】 无 【返回】大于 iValue 的最小不重复数 l 示例 输入: iValue =54 返回: 56 输入: iValue =10 返回: 12 输入: iValue =98 返回: 101 输入: iValue =21099 返回: 21201 3 、字符串匹配( 50 分) l 问题描述 判断包含通配符的匹配字符串是否完全匹配输入的字符串,匹配字符串中包含的通配符仅有‘ * ’和‘?’,且通配符不会连续出现 要求完全匹配,而不是包含) 其中,通配符‘ * ’:代替 0 个或多个字符,通配符‘ ? ’:代替一个字符 l 要求实现函数 int GetMatchSta (const char *ArrStr, const char *KeyStr) 【输入】 ArrStr : 给定的字符串 KeyStr : 包含通配符的匹配字符串 【输出】 无 【返回】是否匹配,匹配返回1 ,不匹配返回0 l 示例 输入: ” abcdefg”, “a*'” 返回: 1 输入: “tommababcabc” , t?m*ab*abc 返回: 1 (前两题很简单,给出第三题参考答案,答案来源于网络) 第三题参考答案:int GetMatchStr(const char* ArrStr,const char* KeyStr){ switch (*KeyStr) { case '/0': return (*ArrStr=='/0')? 1:0; case '?': return (*ArrStr=='/0')? 0:GetMatchStr(ArrStr+1,KeyStr+1); case '*': return (*ArrStr=='/0')? GetMatchStr(ArrStr,KeyStr+1): GetMatchStr(ArrStr+1,KeyStr)|GetMatchStr(ArrStr,KeyStr+1); default: return (*ArrStr!=*KeyStr)? 0:GetMatchStr(ArrStr+1,KeyStr+1); }}2010年华为软件校园招聘编程测验类别:软件C语言编程题(共2题,第一题40分,第二题60分,共100分。
请上机编写程序,按题目要求提交文件[详见考试说明]本试题采用自动测试用例进行评分,测试用例不对考生公开,凡不满足提交要求导致不能运行或用例不通过,不予评分)1. 删除字符串中所有给定的子串(40分)问题描述: 在给定字符串中查找所有特定子串并删除,如果没有找到相应子串,则不作任何操作要求实现函数: int delete_sub_str(const char *str, const char *sub_str, char *result_str)【输入】 str:输入的被操作字符串 sub_str:需要查找并删除的特定子字符串【输出】 result_str:在str字符串中删除所有sub_str子字符串后的结果【返回】 删除的子字符串的个数注:I、 子串匹配只考虑最左匹配情况,即只需。