用C语言写 写一函数将字符串转成全小写。要求不能使用库函数。
时间: 2023-11-27 09:51:12 浏览: 87
下面是一个将字符串转换为全小写的C语言函数实现:
```c
#include <stdio.h>
void toLowerCase(char* str) {
int i = 0;
while (str[i] != '\0') {
if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] += ('a' - 'A');
}
i++;
}
}
int main() {
char str[100];
printf("Enter a string: ");
scanf("%[^\n]", str);
toLowerCase(str);
printf("Lowercase string: %s\n", str);
return 0;
}
```
在该函数中,我们使用了一个while循环来遍历字符串。如果当前字符是大写字母,则将其转换为小写字母。这是通过将当前字符的ASCII值加上差值来实现的。因为大写字母与小写字母之间的ASCII值差为32。因此,我们将大写字母的值加上32,以得到相应的小写字母。
相关问题
c语言函数调用字符串大写转小写
可以使用C语言的标准库函数`tolower()`将字符串中的大写字母转换为小写字母。下面是一个示例代码:
```c
#include <stdio.h>
#include <ctype.h>
void toLower(char* str) {
int i = 0;
while(str[i]) {
str[i] = tolower(str[i]);
i++;
}
}
int main() {
char str[] = "HELLO WORLD";
toLower(str);
printf("%s\n", str); // 输出 hello world
return 0;
}
```
在上面的代码中,`toLower()`函数接受一个字符串参数,并使用`tolower()`函数将其中的大写字母转换为小写字母。然后,在`main()`函数中,我们将一个字符串“HELLO WORLD”传递给`toLower()`函数,并将其输出为“hello world”。
C语言中虽然没有字符串类型,但可以通过字符数组,字符指针,字符串常量来表示字符串,并且标准C库提供众多字符串操作相关的函数,请您写出4个常用的字符串库函数函数原型,并且说明一下他们的功能及所在的头文件。
C语言中常用的字符串库函数有很多,以下是其中4个常用的函数及其原型、功能和所在头文件:
1. strlen函数
函数原型:
```c
size_t strlen(const char *str);
```
功能:计算字符串的长度。该函数返回一个size_t类型的值,表示字符串中字符的个数,不包括字符串结束符'\0'。
头文件:string.h
2. strcpy函数
函数原型:
```c
char *strcpy(char *dest, const char *src);
```
功能:将一个字符串复制到另一个字符串中。该函数返回一个指向目标字符串的指针。
头文件:string.h
3. strcat函数
函数原型:
```c
char *strcat(char *dest, const char *src);
```
功能:将一个字符串追加到另一个字符串的末尾。该函数返回一个指向目标字符串的指针。
头文件:string.h
4. strcmp函数
函数原型:
```c
int strcmp(const char *str1, const char *str2);
```
功能:比较两个字符串的大小。如果str1小于str2,返回一个负整数;如果str1等于str2,返回0;如果str1大于str2,返回一个正整数。
头文件:string.h
以上4个函数是C语言中常用的字符串库函数,可以在编写字符串相关的程序时使用。
阅读全文