#include <stdio.h>
#include <string.h>
int main()
{
char string[5000];
int i = 0, N = 0;
char _char;
int offset = 0;
gets(string);
//printf("please input the char: \n");
scanf("%c", &_char);
//len = strlen(string);
//printf("%c\n", string[len]);
//printf("%c\n", string[len-1]);
if (_char >= 'A' && _char <= 'Z')
offset = 32;
else if (_char >= 'a' && _char <= 'z')
offset = -32;
for (i = 0; (string[i] != '\0'); i++)
{
if ((string[i] == _char) || (string[i] == _char+offset))
{
N++;
}
}
printf("%d\n",N);
return 0;
}
总结:
①、理解问题到底是让干什么,很容易误解题目的要求
②、关键是找出大小写以及数字的规律
③ascii码表记不熟练
④对于本地可以使用指针,但是对于在线,则使用字符数组,否则会报错越界访问。