编写程序,定义任意两个字符串数据,将两个字符串连接起来,不要用strcat 函数,结果输出到屏幕查看结果。
时间: 2023-04-24 18:00:49 浏览: 96
可以使用字符串拼接的方式将两个字符串连接起来,具体步骤如下:
1. 定义两个字符串变量,例如str1和str2。
2. 计算出两个字符串的长度,分别为len1和len2。
3. 定义一个新的字符串变量str3,长度为len1+len2+1(加1是为了存放字符串结束符'\')。
4. 将str1的内容复制到str3中。
5. 将str2的内容复制到str3中,从str1的结束位置开始。
6. 在str3的末尾添加字符串结束符'\'。
7. 输出str3的内容,即为两个字符串连接后的结果。
示例代码如下:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str1[] = "hello";
char str2[] = "world";
int len1 = strlen(str1);
int len2 = strlen(str2);
char str3[len1+len2+1];
strcpy(str3, str1);
strcpy(str3+len1, str2);
str3[len1+len2] = '\';
printf("%s\n", str3);
return ;
}
```
输出结果为:
```
helloworld
```
相关问题
C语言编写程序,定义任意两个字符串数据,将两个字符串连接起来,不要用strcat 函数,结果输出到屏幕查看结果
可以使用指针和循环实现字符串连接,示例代码如下:
```c
#include <stdio.h>
int main() {
char str1[] = "Hello";
char str2[] = "World";
char result[100]; // 存储结果的字符串数组,需要预设足够的长度
int i, j;
// 将 str1 复制到 result 中
for (i = 0; str1[i] != '\0'; i++) {
result[i] = str1[i];
}
// 将 str2 连接到 result 后面
for (j = 0; str2[j] != '\0'; j++) {
result[i + j] = str2[j];
}
result[i + j] = '\0'; // 结尾要加上字符串结束符
// 输出结果
printf("%s\n", result);
return 0;
}
```
输出结果为:
```
HelloWorld
```
编写程序,定义任意两个字符串数据,将两个字符串连接起来,\r\n不要用 strcat 函数,结果输出到屏幕查看结果。
本题目的意思是编写程序,定义任意两个字符串数据,将两个字符串连接起来,不要用 strcat 函数,结果输出到屏幕查看结果。
分析:
连接字符串可以用指针来实现,不需要使用 strcat 函数。可以分别定义两个字符串指针变量,分别指向两个字符串的首地址,然后利用循环将第二个字符串指针变量所指向的字符串依次拼接到第一个字符串指针变量所指向的字符串的尾部,直到第二个字符串指针变量所指向的字符串结束。
编程实现:
#include<stdio.h>
#include<string.h>
int main()
{
char s1[20] = "hello"; //定义字符串s1
char s2[10] = "world"; //定义字符串s2
char *p1 = s1, *p2 = s2; //定义2个指针变量,分别指向字符串的首地址
while (*p1) //查找字符串s1的结束位置
p1++;
while (*p2) //将字符串s2拼接到字符串s1后面
{
*p1 = *p2;
p1++;
p2++;
}
*p1 = '\0'; //给新生成的字符串添加结束符'\0',避免出现乱码
printf("%s\n", s1); //输出新字符串
return 0;
}
这个程序输出的结果为:
helloworld
这是将两个字符串连接在一起的结果。
阅读全文