写出c语言代码,要求如下:从键盘输入两个字符串,并分别用字符数组和字符指针实现以下两个功能: 1、计算两个字符串的实际字符个数; 2、将字符串a复制为字符串b,然后输出字符串b。
时间: 2024-04-15 19:28:25 浏览: 245
c代码-输入两个实数a,b,按照数值由小到大的顺序输出这两个数。
Sure! 以下是你要求的C语言代码:
```c
#include <stdio.h>
#include <string.h>
int count_characters(char arr[]) {
int count = 0;
for (int i = 0; arr[i] != '\0'; i++) {
count++;
}
return count;
}
int count_characters_pointer(char *ptr) {
int count = 0;
while (*ptr != '\0') {
count++;
ptr++;
}
return count;
}
void copy_string(char *dest, char *src) {
while (*src != '\0') {
*dest = *src;
src++;
dest++;
}
*dest = '\0';
}
int main() {
char string1[100];
char string2[100];
printf("请输入第一个字符串:");
scanf("%s", string1);
printf("请输入第二个字符串:");
scanf("%s", string2);
int count1 = count_characters(string1);
int count2 = count_characters_pointer(string2);
printf("字符串1的实际字符个数:%d\n", count1);
printf("字符串2的实际字符个数:%d\n", count2);
copy_string(string2, string1);
printf("复制后的字符串2:%s\n", string2);
return 0;
}
```
这段代码通过字符数组和字符指针分别实现了计算两个字符串的实际字符个数,并将字符串a复制为字符串b,并输出字符串b。在代码中,我们使用了`count_characters`函数和`count_characters_pointer`函数来计算字符串的实际字符个数,使用`copy_string`函数来复制字符串。在`main`函数中,我们使用`scanf`函数从键盘输入两个字符串,然后调用相应的函数进行计算和复制,并输出结果。
希望对你有帮助!如果有任何疑问,请随时提问。
阅读全文