2013华为校园招聘机试题目题5
2015-11-09 01:27
169 查看
C++ Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | //2013华为校园招聘机试题目题5 //将一个int类型的数字转化为字符串 //并判断有无重复字符串(长度应大于2)有返回1,无返回2 #include <stdio.h> #include <stdlib.h> #define MAX 200 int ItoAandRepeat(unsigned int theNum,char *s) { char Str[MAX]; char Repeat[MAX]; int interg,remainder,i=0,j,z=0,k=0,temp; //数字转换成字符串 remainder=theNum%10; interg=theNum/10; while(interg) { Str[i]=remainder+48; i++; remainder=interg%10; interg=interg/10; } Str[i]=remainder+48; i++; Str[i]='\0'; for(z=0,j=i-1;j>=0;j--,z++) { s[z]=Str[j]; } s[z]='\0'; printf("%d转换成字符串为:%s\n",theNum,s); //判断有无重复字符串 for(i=0;s[i]!='\0';i++) { //判断之前是否出现过该字符 for(j=0;j<i;j++) { //出现过,从此位置开始向后判断,有多少位重复 if(s[j]==s[i]) { z=i; z++; j++; temp=1;//第一次重复 while(s[j]==s[z]&&s[z]!='\0')//继续判断 { z++; j++; temp++; } if(temp>1)//重复字符数大于1 { for (k=0;k<temp;k++,i++) { Repeat[k]=s[i];//复制重复的字符串便于打印 } Repeat[k]='\0'; printf("%s有重复字符串,重复字符串为:%s\n",s,Repeat); return 1; } } } } return 2; } //测试主函数 void main() { int number,temp1,re; char s[MAX]; printf("请输入一个整数!\n"); temp1=scanf("%d",&number); while(temp1==1) { re=ItoAandRepeat(number,s); printf("re=%d\n",re); printf("\n请输入下一个整数!\n"); temp1=scanf("%d",&number); } } |
相关文章推荐
- (spring-第2回【IoC基础篇】)Spring的Schema,基于XML的配置
- mysql 乐观锁和悲观锁实现
- Vaadin - 来自北欧的 Web 应用开发利器,第 2 部分: Vaadin 的体系结构和功能扩展
- QPS
- Vaadin - 来自北欧的 Web 应用开发利器,第 1 部分: Vaadin 的基本概况和基础开发
- Kafka入门经典教程
- vaadin入门
- [笔记] Convex Optimization 2015.10.28
- 关于下拉刷新你是否真的非常理解还是只会搬砖?附 Android 实例子源代码文件下载地址380个合集
- 数据源(数据库连接池的简易实现)
- Eclipse和PyDev搭建完美Python开发环境(Windows篇)
- 系统学习下python网络爬虫 笔记一
- arm 网络调试内核及文件系统(tftp下载内核,nfs挂载根文件系统)/x86下nfs挂载根文件系统
- The Ordered List Abstract Data Type
- UINavigationController
- 如何在高并发分布式系统中生成全局唯一Id
- 异常怎么记录
- Chromium硬件加速渲染的OpenGL命令执行过程分析
- UITableView
- python之模块datetime详解