1、从键盘输入两个字符串a和b,要求不用库函数strcat把字符串b的前5个字符连接到字符串b中,如果b的长小于5,则把b的所有元素都连接到a中。
#include<stdio.h>
int main(){
char a[30];
char b[30];
int i=0,j;
int k=0,n=0,m=0;
printf("请输入字符串a:");
scanf("%s",a);
printf("\n请输入字符串b:");
scanf("%s",b);
while(b[k]!='\0')k++;//计算b字符串的长度
while(a[n]!='\0') n++;//计算a字符串的最后一个字符下标
if(k<=5){
while(b[m]!='\0'){
a[n++]=b[m++];
}
}else{
while(b[m]!='\0'){
if(m==5){
break;
}
a[n++]=b[m++];
}
}
a[n]='\0';
printf("%s",a);
return 0;
}
2、从键盘输入一个字符串a,并在字符串a中最大元素后面插入字符串b(b[ ]="ab")。
#include<stdio.h>
#include<string.h>
int main(){
char b[]="ab";
char a[20];
int k=1;
int n=0;
int m=strlen(b);//字符串b长度
int i;
printf("请输入字符串a:");
scanf("%s",a);
int p=strlen(a);//计算a的最后一个字符下标
while(a[k++]!='\0'){
if(a[n]<a[k]){
n=k;//记录最大元素下标
}
}
for(i=p;i>n;i--){
a[i+m]=a[i];
}
int j=0;
while(b[j]!='\0'){a[++n]=b[j];j++;}
printf("%s",a);
return 0;
}
若有疑问,请评论或者私信
若有错误,欢迎指正!