声明
int tolower(int c);
参数
c为要被转换小写的字母
返回值
如果c有相应的小写字母,则该函数返回c的小写字母,否则c保持不变。返回值是一个可被隐式转换为char类型的int值。
示例
/*
HJ2 计算某字符出现次数
描述
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)
数据范围:
输入描述:
第一行输入一个由字母和数字以及空格组成的字符串,第二行输入一个字符。
输出描述:
输出输入字符串中含有该字符的个数。(不区分大小写字母)
示例1
输入:
ABCabc
A
输出:
2
*/
#include<stdio.h>
#define N 1001
int main() {
char str[N];
char c;
int num = 0, i = 0;
while ((str[i] = getchar()) != '\n') { i++; }
c = getchar();
i = 0;
while (str[i] != '\n') {
/*if (str[i] == c) {
num++;
}
if ((str[i] >= 'a' && str[i] <= 'z' && c == str[i] - 32) || (str[i] >= 'A' && str[i] <= 'Z' && str[i] == c - 32)) {
num++;
}*/
if (str[i] == c || tolower(str[i]) == tolower(c))
num++;
i++;
}
printf("%d\n", num);
}