#includestdio.h
站在用户的角度思考问题,与客户深入沟通,找到金湖网站设计与金湖网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、成都做网站、外贸营销网站建设、企业官网、英文网站、手机端网站、网站推广、空间域名、雅安服务器托管、企业邮箱。业务覆盖金湖地区。
void s_trcat(char *s1,char *s2);//连接两个字符串
void s_trcpy(char *s1,char *s2);//字符串s2复制给字符串s1
int s_trcmp(char *s1,char *s2);//两个字符串比较大小
int s_trlen(char *s);//计算一个字符串的长度
int main()
{
char s1[11]="12345", s2[11]="ABCDE";
char x1[11]="12345",x2[11]="SSSKK";
char str1[11]="ABCD",str2[11]="ACB";
char s[11]="ABCDEF";
int n,len;
s_trcat(s1,s2);//拼接s1,s2
printf("拼接s1,s2,输出s1\n");
puts(s1);
s_trcpy(x1,x2);//将x2的内容复制给x1
printf("将x2的内容复制给x1,输出x1\n");
puts(x1);
n=s_trcmp(str1,str2);//比较str1与str2大小,返回一个整数,代表比较的结果
if(n==0)
printf("str1与str2相同\n");
if(n==1)
printf("str1大于str2\n");
if(n==-1)
printf("str1小于str2\n");
len=s_trlen(s);//计算字符串s的长度,并返回一个整数(字符串长度),
printf("字符串s的长度:%d\n",len);
}
void s_trcat(char *s1,char *s2)//连接两个字符串
{
char *p=s1;
char *q=s2;
while(*p)
p++;
while(*q)
{
*p=*q;
p++;
q++;
}
*p='\0';//给新字符串尾部加个结束符
}
void s_trcpy(char *s1,char *s2)//字符串s2复制给字符串s1
{
char *p=s1;
char *q=s2;
while(*p++=*q++);
*p='\0';//给新字符串尾部加个结束符
}
int s_trcmp(char *s1,char *s2)//两个字符串比较大小
{
char *p=s1;
char *q=s2;
int len1=0,len2=0;
while(*p++)
len1++;
while(*q++)
len2++;
p=s1,q=s2;
while(*p!='\0'*q!='\0')
{
if(*p*q)
return 1;
if(*p*q)
return -1;
p++;
q++;
}
if(len1==len2)
return 0;//返回0,两个字符串相同
if(len1len2)
return 1;//返回1,前大于后
if(len1len2)
return -1;//返回-1,前小于后
}
int s_trlen(char *s)//计算一个字符串的长度
{
char *p=s;
int len=0;
while(*p++)
len++;
return len;//返回字符串长度
}
宽字符有专门的输入函数wscanf。
用普通的scanf也可以做到,但需要做处理,所以在输入宽字符的时候,最佳选择还是专门的wscanf。
当输入宽字符型变量时,需要使用格式符号%lc, 输入宽字符串时需要使用格式符号%ls。
另外,宽字符一般用wprintf输出,这时输出字符和字符串时,用%c和%s即可。
参考代码如下:
void main( void ){ wchar_t wc, ws[81];//定义一个宽字符变量,及一个宽字符数组。 wscanf( L"%lc%ls",wc, ws );//输入值。 wprintf( L"%c,%s\n",wc, ws);//输出值。}
1、新建一个工程和.c文件,输入头文件和主函数。
2、定义变量类型。
3、调用cpy函数。
4、定义一个函数,并定义变量类型。
5、用一个For 语句和if语句判断是否为元音。
6、最后加一个字符串结束符,并在主函数中输出。
7、编译。运行。
字符串连接:即将字符串b复制到另一个字符a的末尾,并且字符串a需要有足够的空间容纳字符串a和字符串b。
#includestdio.h
void mystrcat(char a[],char b[]){//把a和b拼接起来
int i=0,j=0;
while(a[i++]!='\0');
i--;
while(b[j]!='\0'){
a[i++]=b[j++];
}
a[i]='\0';
}
int main()
{
char a[100],b[100];
gets(a);
gets(b);
mystrcat(a,b);
puts(a);
return 0;
}
/*
运行结果:
abc
def
abcdef
*/
对于strcat,其格式为
char *strcat(char *a, char *b);
其功能为,将字符串b拼接到a的尾部,并将结果字符串返回。
所以,实现该函数的思路为:
1 找到字符串a的结尾;
2 将b的所有字符复制到a尾部的空间中,到\0为止。
需要注意的是,复制的结果要包含b的结束符。
代码如下:
char *strcat(char *a, char *b)
{
char *p = a;
while(*p) p ++;
//当*p为\0时退出,即查找到a的结尾。
do
{
*p++ = *b;//将b中的每个字符复制到p中。
if(*b == '\0')break;//遇到结束符退出。
b++;//移动指针b的位置。
}while(1);
return a;//返回结果字符串首地址。
}
可以先定义两个字符数组 分别存放需要拼接的字符.然后使用strcpy()函数来实现拼接,