ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:27.12KB ,
资源ID:21027091      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21027091.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(面试必备经典CC++面试算法实例文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

面试必备经典CC++面试算法实例文档格式.docx

1、,ai); return 0;Example3: 将一个二维数组行和列元素互换,存到另一个二维数组里。/ Exchange.cpp : int a23=1,2,3,4,5,6; int b32;array a: n for(int i=0;2; for(int j=0;3;j+)%5d,aij); bji = aij; array b:,bij);Example4: 求一个3*4的矩阵的最大值,并输出其所在的行和列 int i,j,row = 0,colum = 0,max; int a34 = 10,5,36,2,-18,6,28,-36,2,15,-10,-89; max = a00;4;

2、 if(aijmax) max = aij; row = i; colum = j;max = %d,row = %d,cloum = %d,max,row,colum);Example5: 输出一个字符串 char a15=h,ow areyu;11;%c注意单词之间的空格赋值Example6: 利用一个scanf函数输入多个字符串,以空格分开 char str15,str25,str35,str413;input three string: scanf(%s%s%s,str1,str2,str3);%5s%5s%5sninput one string:%s,str4);%sn注:把以n个用

3、空格分开字符串输入给一个字符串数组,则其实数组只接收到第一个空格之前的内容,违背愿望。Example7:输入一行字符串,统计其中有多少个单词,单词之间用空格分开 char str100; int num=1; int word;input strings: gets(str);stri!=0; /*if(stri=) num+; 若只用着一个判断,则如果输入字符串时不小心敲进了很多空格,则结果不对*/ if(stri=) word = 0; else if(word=0) word = 1; num+; There are %d words in the line.n,num);Example

4、8:找出3个字符串中的最大者#include char string20; char str320;input three strings:,stri); if(strcmp(str0,str1) 0) strcpy(string,str0); else strcpy(string,str1); if(strcmp(str2,string) 0) strcpy(string,str2);nthe largest string is :n%sn,string);Example9:选择法排序void sort(int a,int n) int min,t;n; min = i; for(int j

5、=i+1; if(aminaj) min = j; if(min!=i) t = amin; amin = ai; ai = t; int a10 = 3,9,1,8,2,10,7,5,4,6; sort(a,10);%4dExample10: 求一个3*3的整形矩阵对角线元素之和int catercornerSum(int a33) int sum = 0; sum += aii; sum += ai2-i; sum -= a11; return sum; int a33 = 1,2,3,4,5,6,7,8,9; int sum; sum = catercornerSum(a);%dn,su

6、m);Example11:找出一个数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小iostreamusing namespace std; int a34= 124,25,100,31,20,96,216,95,14,25,54,1; int b3; int c4; char x = NULL; char y = NULL; /*cout please input 12 integer numbers: endl; i aij; */ int t = 0; i+) t = ai0; bi = 0; j j+)t) t = aij; bi = j; for(int j=0; t = a0

7、j; cj = 0; for(int i=0; if(aij cj = i; if(i=cj)&(j=bi) x = i+1+48; y = j+1+48; if(x=NULL)&(y=NULL) cout 该二位数组没有鞍点 else cout 鞍点位置:( x , y )endl;鞍点位置数字为: t 说明:分别记下每一行最大值及每一列最小值的位置,该两位置重复的点即是鞍点字符串Example1:编写字符串拷贝函数strcpy/ strcpy.cpp :/char *strcpy(char *strDest, const char *strSrc) char *address = strD

8、est; while( (*strDest+ = *strSrc+) != ) NULL ; return address; char str1=asfasdfasfa int length=0; char *str2=new char20; strcpy(str2,str1);str2: %sn,str2);copy successfully! delete str2;字符串连接函数strcat/ strcat.cpp :char *strcat(char *str1,char *str2) int i=0; int j=0; while(str1i) i+; while(str2j) j+

9、; char *str3 = new chari+j+1; for(int m=0;mi;m+) str3m = str1m;j; str3m+i = str2m; str3i+j= return str3; char *str1 = ggg char *str2=bbbb char * str3 = new char20; str3 = strcat(str1,str2);the string str3 is:,str3); delete str3;Example3: 删除已经在str2中出现过的str1中的字符 char str1 = ahadfggklgfd char *str2 = d

10、ff char *str3 = new char10; int length1 = int(strlen(str1); int length2 = int(strlen(str2); int m = 0;length1;length2; if(str1i = str2j) /str1中的该字符在str2中出现 str1i = str20; /将所有在str2中出现过的str1中的字符全部改为str2的第一字符值 j = length2; /跳出内层for循环i+) /将str1中所有不等于str20的字符挨个赋给str3 if(str1i!=str20) str3m=str1i; m+=1;

11、str3m= /将str3最后加上,str3即为删除后的结果 delete str3;Example4: 字符串倒置,“Just do it”变为“ti od tsuJ”void inversion(char*p1,char*p2) int i; int length=int(strlen(p1);length; p2i=p1length-1-i; p2i = char *p1=Just do it char *p2=new char20; inversion(p1,p2);,p2);Example5: 将字符串中的单词倒置,“Just do it”变为“it do Just”/定义一个字符串

12、倒置函数,其中参数包括字符串及需要到置部分的起点和终点void reverse(char str,int from,int to) int length = to - from; char s;length/2+1;i+) /通过循环将该部分字符串倒置 s = strfrom+i; strfrom+i = strto-i; strto-i=s;Make progress every day to learn abc abcd abcde while(str1length) length+; reverse(str1,0,length-1); /先将str1整个颠倒 /可理解为慢指针 /可理解为

13、快指针 while(str1j) /扫描倒置过的str1 if(j=length) /当还没扫描完str1时 while(str1j!str1j) /碰到空格及为一个单词的倒置,再给颠倒回来就可 j+; reverse(str1,i,j-1); /将快指针指向空格后的第一个字符 i=j; /将满指针指向下一个单词,以便接下来将单词颠倒回来 else /说明已经扫描完 j-; /将快指针指向字符串后的,跳出while循环,str1);统计字符串每个字符出现的次数#include char str150 = ddfd;ljk90()asdHSMAR_ !#$%&*() char *p = new

14、char50; int times; int a50; /用于判断字符是否重复出现 int length1 = 0; while(str1i!) length1+; pm = str10; int length2 = 1; /length2为p指向字符串的长度,初始为 /去掉字符串str1中重复出现过的字符(保留一个即可),把剩余的字符保存到指针p指向的动态存储区 for(int i=1; t = 0; for(int k=0;kk+) if(str1i = pk) t+; /说明该字符重复,t加 if(t=0) /t=0说明该字符没出现过,存入动态存储区 m+; pm = str1i; le

15、ngth2+; pm+1 = /通过与p指向的字符串比较,即可得出每一个字符出现过的次数 ai = 0; if(pi=str1j) ai+;字符串%c出现次数为:,pi,ai);将整型数据转换成字符串类型要将整型数据转换成字符串,首先将整型数据各个数位进行拆分,然后存储到一个数组当中,结尾处补0。例如要将12345转换成字符串,主要思路是将12345先于10取余,结果为5,将5转成字符存储到数组当中,然后将1234除以10再与10取余得到十位上的数4,将4 存储到数组中,以此类推。得到数组54321,再将数组逆序返回。循环的条件控制是判断整数与10相除的结果,如果是0的话结束循环。代码:/ E

16、4.cpp : Defines the entry point for the console application./将int转换为stringchar* ToString(int number) char* str = new char6; int i = 0; while(number/10 != 0) stri+ = number%10 + 48; /字符0比整数大 number = number/10; /去掉个位数 stri+ = number + 48; /将最后一个整数转换为字符 stri = (i-1)/2;j+) /颠倒字符串“” int a = strj ; strj = stri-1-j; stri-1-j = a; return str; int a = 12345; char *str = ToString(a);,str);注意:当循环结束时整数的最高位还未转成字符,所以循环结束后要将最高位转成字符并且要在结尾加上0表示字符串结束。将字符串转换成整型数据/ ToInt.cpp :int ToInt(char *p) int l = 0; int a5; while(pl) al+ = pl -

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1