解题思路:
如果两个字符串的长度不相等,输出 "1"。
如果两个字符串的长度相等,并且在区分大小写的情况下完全相等,输出 "2"。
如果两个字符串的长度相等,但在不区分大小写的情况下相等,输出 "3"。
如果两个字符串的长度相等,但在不区分大小写的情况下也不相等,输出 "4"。
tolower 函数用于将字符转换为小写形式。它的使用方式非常简单,只需将要转换的字符作为参数传递给 tolower 函数,它会返回相应的小写字符。
以下是 tolower 函数的基本用法示例:
#include <stdio.h> #include <ctype.h> int main() { char ch = 'A'; // 假设要将字符 'A' 转换为小写形式 char lowercaseCh = tolower(ch); printf("原字符: %c\n", ch); printf("小写字符: %c\n", lowercaseCh); return 0; }
在上面的示例中,我们使用 tolower 函数将字符 'A' 转换为小写形式,然后将结果打印出来。tolower 函数只接受一个字符作为参数,并返回转换后的小写字符。
请注意,tolower 函数在 ctype.h 头文件中声明,所以在使用之前需要包含该头文件。此外,tolower 函数只对字母字符(A-Z 和 a-z)有效,对于其他字符,它会返回原字符。
参考代码:
#include <stdio.h> #include <string.h> #include <math.h> #include <ctype.h> int main() { char ch1[11]; char ch2[11]; // 从标准输入中获取两个字符串 fgets(ch1, sizeof(ch1), stdin); fgets(ch2, sizeof(ch2), stdin); // 获取两个字符串的长度 int len1 = strlen(ch1); int len2 = strlen(ch2); // 如果两个字符串长度不相等 if (len1 != len2) { printf("1"); // 输出 "1" } // 如果两个字符串长度相等 else if (len1 == len2) { int flag = 1; // 遍历两个字符串的字符,逐个比较 for (int i = 0; i < len1 - 1; i++) { if (ch1[i] != ch2[i]) { flag = 0; break; // 如果发现不相等的字符,立即退出循环 } } // 如果两个字符串在相应位置上完全相等 if (flag == 1) { printf("2"); // 输出 "2" } // 如果两个字符串在相应位置上不完全相等,但不区分大小写相等 else { int p = 1; // 遍历两个字符串的字符,逐个比较(不区分大小写) for (int i = 0; i < len1; i++) { if (tolower(ch1[i]) != tolower(ch2[i])) { p = 0; break; // 如果发现不相等的字符,立即退出循环 } } // 如果两个字符串在不区分大小写的情况下相等 if (p == 1) { printf("3"); // 输出 "3" } // 如果两个字符串在不区分大小写的情况下也不相等 else { printf("4"); // 输出 "4" } } } return 0; }
0.0分
0 人评分
C语言训练-求PI* (C语言代码)(正确结果竟然是谜一样的3.141591)浏览:1338 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:981 |
C语言训练-斐波纳契数列 (C语言代码)浏览:1270 |
求圆的面积 (C语言代码)浏览:1755 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:388 |
母牛的故事 (C语言代码)浏览:1045 |
1126题解浏览:649 |
1035 题解浏览:875 |
交换Easy (C语言代码)浏览:805 |