资源描述:
《软件工程师笔试编程题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1.已知strcpy的函数原型:char*strcpy(char*strDest,constchar*strSrc)其中strDest是目的字符串,strSrc是源字符串。不调用C++/C的字符串库函数,请编写函数strcpy。char*strcpy(char*strDest,constchar*strSrc){if(strDest==NULL
2、
3、strSrc==NULL)returnNULL;if(strDest==strSrc)returnstrDest;char*tempptr=strDest;while((*st
4、rDest++=*strSrc++)!=‘ ’);returntempptr;}2.写一个函数找出一个整数数组中,第二大的数(microsoft)constintMINNUMBER=-32767;intfind_sec_max(intdata[],intcount){intmaxnumber=data[0];intsec_max=MINNUMBER;for(inti=1;imaxnumber){sec_max=maxnumber;maxnumber=data[i];}els
5、e{if(data[i]>sec_max)sec_max=data[i];}}returnsec_max;}3.回文字符串---递归法#include#includeintmain(){inti=0,n,k=0;chara[20],*p,*q;scanf("%s",a);n=strlen(a);p=a;q=p+n-1;while(i<(n/2+1)&&q>p)if(*p==*q){k++;i++;p++;q--;}if(k==n/2)printf("Yes");elseprint
6、f("No");system("pause");return0;}4.用指针判断回文字符的程序#include#include#include#defineMAX50intcycle(char*s){char*h,*t;for(h=s,t=s+strlen(s)-1;t>h;h++,t--)if(*h!=*t)break;returnt<=h;}main(){chars[MAX];clrscr();while(1){puts("Pleaseinputthestr
7、ingyouwanttojudge(input^toquit):");scanf("%s",s);/*当输入的字符串的第一个字符是^时,退出*/if(s[0]=='^')break;if(cycle(s))printf("%sisacyclestring.",s);elseprintf("%sisnotacyclestring.",s);}getch();}判断一个字符串是不是回文intIsReverseStr(char*aStr){inti,j;intfound=1;if(aStr==NULL)return-1
8、;j=strlen(aStr);for(i=0;i