用c语言实现:编程实现:将串2的前n个字符连接到串1的后面 (假设串2长度不超过20,n由键盘输入,其值小于20)。且不用gets函数
时间: 2024-02-06 13:09:54 浏览: 73
以下是用c语言实现将串2的前n个字符连接到串1的后面的代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[20];
int n, len1, len2;
printf("请输入字符串1:");
scanf("%s", str1);
printf("请输入字符串2:");
scanf("%s", str2);
len1 = strlen(str1);
len2 = strlen(str2);
printf("请输入要连接的字符个数n(小于等于%d):", len2);
scanf("%d", &n);
if (n > len2)
{
printf("n不能大于%s的长度%d\n", str2, len2);
return 0;
}
strncat(str1, str2, n); // 将串2的前n个字符连接到串1的后面
printf("连接后的字符串为:%s\n", str1);
return 0;
}
```
该程序首先使用`scanf`函数分别读入两个字符串`str1`和`str2`,然后使用`strlen`函数求得字符串1和字符串2的长度`len1`和`len2`。接着,程序使用`scanf`函数读入要连接的字符个数`n`,并通过判断`n`是否大于`len2`来确保输入的`n`不会超过字符串2的长度。最后,程序使用`strncat`函数将串2的前n个字符连接到串1的后面,并输出连接后的字符串。
阅读全文