用c语言编写一个函数fun,其功能为:对一个字符进行判断,如果是大写字母转换成小写字母。
时间: 2024-04-30 16:19:20 浏览: 34
以下是用C语言编写的函数fun,实现将大写字母转换为小写字母的功能:
```c
void fun(char *c){
if(*c >= 'A' && *c <= 'Z'){ // 如果是大写字母
*c += 32; // 转换成小写字母,ASCII码中大写字母和小写字母相差32
}
}
```
函数中接收一个指向字符的指针,判断该字符是否为大写字母(根据ASCII码表)并进行转换。需要注意的是,这里将大写字母转换成小写字母是通过将字符的ASCII码加上32来实现的。
相关问题
用c语言编写一个函数fun,对字符进行判断,将大写字母转换成小写字母
好的,我会为您解答。请参考以下代码:
```c
#include <stdio.h>
void fun(char *str) {
int i = 0;
while (str[i]) {
if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] = str[i] + 32;
}
i++;
}
}
int main() {
char str[] = "HELLO WORLD";
fun(str);
printf("%s\n", str);
return 0;
}
```
以上代码中,函数 `fun` 接收一个 `char` 类型的指针参数 `str`,循环遍历这个字符串中的所有字符。如果遇到大写字母,则将 ASCII 码值增加 32 后,将其转换为相应的小写字母。最后,在主函数中打印转换后的字符串。
希望这个代码对您有帮助。如果您还有其他问题,请随时问我。
用C语言编写函数fun,其功能是:从字符串中删除指定的字符。同一字母的大、小写按照不同的字符处理。
下面是一个用C语言实现的函数fun,可以删除字符串中指定的字符,包括同一字母的大、小写:
```c
#include <stdio.h>
#include <string.h>
void fun(char *str, char ch)
{
int i, j;
int len = strlen(str);
for (i = j = 0; i < len; i++) {
if (str[i] != ch && str[i] != ch - 'A' + 'a' && str[i] != ch - 'a' + 'A') {
str[j++] = str[i];
}
}
str[j] = '\0';
}
int main()
{
char str[100];
char ch;
printf("请输入字符串:");
scanf("%s", str);
printf("请输入要删除的字符:");
scanf(" %c", &ch);
fun(str, ch);
printf("删除后的字符串是:%s\n", str);
return 0;
}
```
该函数使用两个指针 i 和 j,分别表示遍历原字符串和处理后的字符串的位置。遍历原字符串时,如果当前字符不是要删除的字符,就将它复制到处理后的字符串中,同时 j 指针加1。最后,将处理后的字符串的结尾字符设为 '\0'。