- 博客(15)
- 收藏
- 关注
原创 反转字符串,但其指定的子串不反转
给定一个字符串以及该字符串的子串,将字符串反转,但子串部分不反转,示例如下。输入字符串为"Welcome you, my friend"子串为"you"输出为"dneirf ym ,you emocleW#include#include#includeusing namespace std;char* reverse(const char* welcome,const char
2009-11-30 07:25:00 553
原创 字符串处理 11月26
对一个长度小于20的字符串进行编码,遵循3个规则。 ● 字母用后面的第4个字母替换。例如:a->e,A -> E,X -> b,y ->c,,z ->d。 ● 如果字符不是字母,字符保持不变。 ● 翻转整个字符串。 #includeusing namespace std;char LowerCaseAlphabets[]={a,b,c,d,
2009-11-26 16:55:00 297
原创 在字符串中,插入字符统计的个数 两种方法
需要在字符串中插入字符统计的个数。例如字符串aaab,插入字符个数后变成aaa3b1。 方法一:#includeusing namespace std;char* charcount( char*source,char* dest){ if(source==NULL) return NULL; char* temp=source; int j=0; dest[j]=tem
2009-11-20 20:11:00 913
原创 两字符串比较 找出最大公共字串 11月18日
#includeusing namespace std;char * maxstr(const char* source,const char* dest){ const char* str_short; const char* str_long; if(*source==NULL || *dest==NULL) { return NULL; } if(strlen(source) {
2009-11-19 22:14:00 334
原创 判断字符是不是回文
根据题目要求,我们可以从一个字符串的两端进行遍历比较。例如对于“level”字符串,我们可以进行如下操作。 ● 计算需要比较的次数。由于“level”字符串长度为5,是奇数,因此比较2次。 ● 第1次比较:看“level”的第1个字符与最后1个字符是否相等,如果相等进行第2次比较。 ● 第2次比较:看“level”的第2个字符与倒数第2个字符是否相等,如果相等则是回文。
2009-11-17 19:10:00 452
原创 实现单词倒置 而不改变单词内部的字母顺序 11月16日
#includeusing namespace std;void revstr(char *str){ char *start,*end,*ptr; start=end=ptr=str; while(*ptr++!=/0) { if(*ptr== || *ptr==/0) { end=ptr-1; while(start swap(*start++,*end--
2009-11-16 16:27:00 491 1
原创 查找父串中是否包含字串 11月16日
#include#includeusing namespace std;const char* strfind(const char* source,const char* sub){ assert((NULL!=source) || (NULL!=sub)); const char* temp_source=source; const char* temp_sub=sub; while
2009-11-16 14:09:00 283
原创 实现内存复制 memcpy
memcpy与strcpy不同之处有二: 1 memcpy可以指定复制的长度 2 memcpy可以复制任意类型的数据 strcpy只能复制char* #include#includeusing namespace std;void strmemcpy(void *dest,const void *source,size_t n) //注意size_t{ asser
2009-11-15 19:35:00 433
原创 用两种不同的方法 计算出字符串的长度 11月15日
#include#includeusing namespace std;int strlen1(const char* char_count1){ assert(NULL!=char_count1); int i=0; const char *ptr=char_count1; while(*ptr!=/0) { i++; ptr++; }
2009-11-15 19:02:00 517 1
原创 不调用库函数 实现strcpy 11月15日
#includeusing namespace std;char *strcopy(char *strdestination,const char *source){ if(strdestination==NULL || source==NULL) { return NULL; } char *strcopysource=strdestination; while(*source!=0)
2009-11-15 08:22:00 297
原创 将字符转换为数字 11月14日
#includeusing namespace std;int strtoint(const char *temp_str){ if(temp_str==NULL) return 0; int temp_int=0; const char *ptr=temp_str; if(*ptr==- || *ptr==+) ptr++; while(*ptr!=0) { if((*ptr
2009-11-14 21:08:00 249
原创 输入整数(包含正负),将整数转换为字符串 11月13日
#includeusing namespace std;void inttochar(int n,char *str){ if(str==NULL) { return; } int i=0; int temp=n char buf[10]=""; while(temp) { buf[i++]=temp%10+0;
2009-11-14 17:28:00 384
原创 不使用 if switch 等 求出两个变量中的较大或(较小)的一个 11月13日
int a,b,max;max=((a+b)+abs(a-b))/2; //max为较大的整数max=((a+b)-abs(a-b))/2; //max为较小的整数
2009-11-14 17:25:00 312
原创 输入N 输出螺旋矩阵 11月12日
N=31 2 3 8 9 4 7 6 5 N=41 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 N=51 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9答案#include #define N 3
2009-11-14 17:23:00 535
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人