如何编写 C 语言程序将字符串转换为小写而不使用 strlwr 函数。我们可以通过多种方式将字符串转换为小写,但我们将讨论四种不同的方法:使用 For 循环、While 循环、函数和 ASCII 值。
C 语言将字符串转换为小写,不使用 strlwr()
此程序允许用户输入任何字符数组。接下来,它将使用 For 循环遍历该字符串中的每个字符并将其转换为小写。
#include <stdio.h>
#include <string.h>
int main()
{
char Str1[100];
int i;
printf("\n Please Enter a String to Convert into Lowercase : ");
gets(Str1);
for (i = 0; Str1[i]!='\0'; i++)
{
if(Str1[i] >= 'A' && Str1[i] <= 'Z')
{
Str1[i] = Str1[i] + 32;
}
}
printf("\n The given String in Lower Case = %s", Str1);
return 0;
}

我们声明了一个大小为 100 的字符 数组。下面的语句要求用户输入任何单词,并将用户输入的字符数组赋给 Str 变量。请参考 strlwr 函数。
printf("\n Please Enter any String : ");
gets(Str);
在 C 语言程序的下一行,我们使用 For 循环 来迭代并将 字符串 转换为小写。
for (i = 0; Str1[i]!='\0'; i++)
{
if(Str1[i] >= 'A' && Str1[i] <= 'Z')
{
Str1[i] = Str1[i] + 32;
}
}
用户输入的文本 = “hELLo”
第一次迭代:for (i = 0; Str[0]!=’\0′; 0++)
(Str[0] != ‘\0’) 条件为 TRUE,因为 Str[0] = h
if(Str1[i] >= ‘A’ && Str1[i] <= ‘Z’) – 条件为 False
第二次迭代: for (i = 1; Str[1]!=’\0′; 1++)
(Str[1] != ‘\0’) 条件为 TRUE,因为 Str[1] = E
if(Str1[i] >= ‘A’ && Str1[i] <= ‘Z’) – 条件为 True
Str1[i] = Str1[i] + 32 => 69 + 32
Str1[i] = 101
101 是 'e' 的 ASCII 码
对其余迭代执行相同操作
使用 For 循环和 ASCII 将字符串转换为小写
这个 程序 与上面相同。但是,这次我们在 If 语句 中使用了 ASCII 值。我建议您参考 ASCII 表 文章。
#include <stdio.h>
#include <string.h>
int main()
{
char Str1[100];
int i;
printf("\n Please Enter a String that you want to Convert into Lowercase : ");
gets(Str1);
for (i = 0; Str1[i]!='\0'; i++)
{
if(Str1[i] >= 65 && Str1[i] <= 90)
{
Str1[i] = Str1[i] + 32;
}
}
printf("\n The Given String in Lower Case = %s", Str1);
return 0;
}
Please Enter a String that you want to Convert into Lowercase : TUTORIAL GATEWAY
The Given String in Lower Case = tutorial gateway
使用 While 循环将字符串转换为小写的 C 语言程序
这个将字符串转换为小写的程序与上面的相同。但这次,我们使用 While 循环(用 While 循环替换 C 语言编程 For 循环)。
#include <stdio.h>
int main()
{
char str[100];
int i;
printf("\n Please Enter any upper text : ");
gets(str);
i = 0;
while (str[i] != '\0')
{
if (str[i] >= 'A' && str[i] <= 'Z')
{
str[i] = str[i] + 32;
}
i++;
}
printf("\n Lower Case = %s", str);
return 0;
}
Please Enter any upper text : C PROGRAMMING
Lower Case = c programming
这个将字符串转换为小写的 程序 使用 函数 概念将逻辑与主函数分开。
#include <stdio.h>
void StrLow(char []);
int main()
{
char str[100];
printf("\n Please Enter any text : ");
gets(str);
StrLow(str);
printf("\n Lower Case = %s", str);
return 0;
}
void StrLow(char str[])
{
int i = 0;
while (str[i] != '\0')
{
if (str[i] >= 'A' && str[i] <= 'Z')
{
str[i] = string[i] + 32;
}
i++;
}
}
Please Enter any text : LEARN C PROGRAMMING
Lower Case = learn c programming