不采用系统库函数,自定义一个函数将你的学号作为一个字符串存入一个字符数组,采用该函数将你的姓名作为一个字符串存入另一个字符数组,不采用系统库函数,自己编写--个函数将姓名字符串和学号字符串连接成一个字符串,再编写一- 个函数在连接后的字符串姓名和学号之间加入下划线字符’’,并输出这个字符串。编写main函数测试这些函数。 c语言
时间: 2024-03-21 11:41:49 浏览: 55
好的,以下是代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
void str_cpy(char *dest, char *src) {
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
}
void str_cat(char *dest, char *src) {
while (*dest != '\0') {
dest++;
}
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
}
void add_underline(char *str) {
char *p = str;
while (*p != '\0') {
p++;
}
while (p != str) {
*(p+1) = *p;
p--;
}
*(str+strlen(str)) = '_';
}
int main() {
char stu_id[20] = "2021000000";
char name[20] = "Tom";
char result[40];
str_cat(result, name);
str_cat(result, stu_id);
add_underline(result);
printf("%s", result);
return 0;
}
```
这段代码中,我们首先定义了三个字符数组,分别用于存储学号、姓名和结果。然后,我们编写了三个函数,分别实现了字符串复制、字符串拼接和在字符串中添加下划线的功能。
在 main 函数中,我们先将姓名和学号拼接起来,然后在拼接后的字符串中添加下划线,最后输出结果即可。
需要注意的是,为了方便起见,我们在编写字符串拼接和添加下划线的函数时,都假设了两个字符串都以 `\0` 结尾。因此,在实际编写时,需要保证输入的两个字符串都是以 `\0` 结尾的。
阅读全文