用C语言编写一个实现strepy函数功能的函数,并试用主函数调用。
时间: 2023-06-16 14:02:02 浏览: 78
strepy函数的功能是将字符串中的所有大写字母转换成小写字母,将所有小写字母转换成大写字母,其他字符不变。下面是C语言的实现:
```c
#include <stdio.h>
void strepy(char *str) {
while (*str != '\0') {
if (*str >= 'a' && *str <= 'z') {
*str -= 'a' - 'A';
} else if (*str >= 'A' && *str <= 'Z') {
*str += 'a' - 'A';
}
str++;
}
}
int main() {
char str[100];
printf("Enter a string: ");
fgets(str, 100, stdin);
strepy(str);
printf("The converted string is: %s", str);
return 0;
}
```
在这个程序中,我们首先定义了一个strepy函数,它接受一个指向字符串的指针作为参数。函数使用while循环遍历字符串中的每个字符,并检查它是否是一个大写字母或小写字母。如果是小写字母,则将其转换为大写字母,如果是大写字母,则将其转换为小写字母。最后,我们在主函数中使用fgets函数获取用户输入的字符串,并将其作为参数传递给strepy函数。然后,我们输出转换后的字符串。
相关问题
2.编写strcpy函数 己知strcpy函数的原型是 char *strcpy(char *strDest,const char *strSrc); strDest是目的字符串,strSrc是源串。(不调用C的字符串库函数,编写函数strepy)
好的,下面是一个简单的实现strcpy函数的代码:
```c
char *strcpy(char *strDest, const char *strSrc) {
if (strDest == NULL || strSrc == NULL) {
return NULL;
}
char *dest = strDest;
const char *src = strSrc;
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
return strDest;
}
```
这个函数会将源字符串(strSrc)复制到目的字符串(strDest)中,并返回目的字符串的指针。它通过逐个字符的复制,直到遇到源字符串的结束符('\0'),然后在目的字符串的末尾添加一个结束符。需要注意的是,这个实现假设目的字符串有足够的空间来存储源字符串的内容。同时,为了防止空指针引发错误,函数会检查传入的目的字符串和源字符串是否为空,如果为空,则返回空指针。