c++。把一个数字给toupper会返回什么。把一个数字给isalpha会返回什么

如题所述

第1个回答  2017-08-16
#include<stdio.h>
#include<ctype.h>
void main()
{
char x='A',y='a',z='5';
printf("x=%c,y=%c,z=%c\n",toupper(x),toupper(y),
toupper(z));
printf("x=%d,y=%d,z=%d\n",isdigit(x),isdigit(y),
isdigit(z));//如果用isdigit应该用%d
}
调试结果
x=A,y=a,z=5
x=0,y=0,z=4
可以得出结论 数字给 toupper输出单个字符还是那个数字,它只能把小写转换为大写,大写还是大写 ,而isdigit则是 读取一个字符的ascii码,是数字返回非零值,不是数字返回 零。二者都在ctype.h这个函数库中。
类似的还有isalpha()函数 判断字符ch是否为英文字母,若为英文字母,返回非0(小写字母为2,大写字母为1)。若不是字母,返回0;tolower()函数与toupper函数正好相反 ,大写转小写,二者也在上述函数库中,
第2个回答  2014-05-13
toupper是把小写字母转化为大写字母用的,给数字不会输出;isalpha是判断是否字母的,给数字会返回0
相似回答