c语言编写函数,自己实现字符操作常用的库函数的功能
int ISALPHA(int ch); // 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0。
int ISALNUM(int ch); // 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0。
int ISDIGIT(int ch); // 若ch是数字('0'-'9')返回非0值,否则返回0。
int ISLOWER(int ch); // 若ch是小写字母('a'-'z')返回非0值,否则返回0。
int ISUPPER(int ch); // 若ch是大写字母('A'-'Z')返回非0值,否则返回0。
int TOLOWER(int ch); // 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')。
int TOUPPER(int ch); // 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')
/*task2.c*/
#include "_public.h"
int main(){
char ch=0;
printf("功能:若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%d\n",ISALPHA(ch));
printf("\n");
printf("功能:若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%d\n",ISALNUM(ch));
printf("\n");
printf("功能:若ch是数字('0'-'9')返回非0值,否则返回0。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%d\n",ISDIGIT(ch));
printf("\n");
printf("功能:若ch是小写字母('a'-'z')返回非0值,否则返回0。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%d\n",ISLOWER(ch));
printf("\n");
printf("功能:若ch是大写字母('A'-'Z')返回非0值,否则返回0。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%d\n",ISUPPER(ch));
printf("\n");
printf("功能:若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')。\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%c\n",TOLOWER(ch));
printf("\n");
printf("功能:若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')\n请输入要判断的字符:");
/* scanf("%c",&ch);
getchar();*/
scanf("%c\n",&ch);
printf("判断结果--返回值是:%c\n",TOUPPER(ch));
return 0;
}
/*public.h*/
#include<stdio.h>
#include<string.h>
int ISALPHA(int ch); // 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0。
int ISALNUM(int ch); // 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0。
int ISDIGIT(int ch); // 若ch是数字('0'-'9')返回非0值,否则返回0。
int ISLOWER(int ch); // 若ch是小写字母('a'-'z')返回非0值,否则返回0。
int ISUPPER(int ch); // 若ch是大写字母('A'-'Z')返回非0值,否则返回0。
int TOLOWER(int ch); // 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')。
int TOUPPER(int ch); // 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')
/*public.c*/
int ISALPHA(int ch){ // 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0。
if((ch<='Z'&&ch>='A')||
(ch<='z'&&ch>='a')) return 1024;
else return 0;
}
int ISALNUM(int ch){ // 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0。
if((ch<='Z'&&ch>='A')||
(ch<='z'&&ch>='a')||
(ch<='9'&&ch>='0')) return 102;
else return 0;
}
int ISDIGIT(int ch){ // 若ch是数字('0'-'9')返回非0值,否则返回0。
if (ch<='9' && ch>='0') return 102;
else return 0;
}
int ISLOWER(int ch){ // 若ch是小写字母('a'-'z')返回非0值,否则返回0。
if(ch<='z'&&ch>='a') return 1024;
else return 0;
}
int ISUPPER(int ch){ // 若ch是大写字母('A'-'Z')返回非0值,否则返回0。
if(ch<='Z'&&ch>='A') return 1024;
else return 0;
}
int TOLOWER(int ch){ // 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')。
if(ch<='Z'&&ch>='A'){
ch+=('a'-'A');
return ch;
}else
return -1;
}
int TOUPPER(int ch){ // 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')
if(ch<='z'&&ch>='a')
{
ch-=('a'-'A');
return ch;
}else
return 0;
}