一个小写转大写的编程问题

默认分类 未结 1 1501
_knowi
_knowi 2023-03-18 05:41
1条回答
  • 2023-03-18 06:17

    有点不好意思,刚回答了一个相同了问题,呵呵#include using namespace std; /*按照你的要求,这个是你所需要的函数实现*//*但这个函数按照经验严格来说,不简洁*//*将你要转换的字符当作参数传入函数*//*如果是小写字符发生转换成为大写字符,返回大写字符*//*如果非字符和数字则提示非法字符*/char ch_type(const char ch){ char rch; if (ch >= 'a' && ch <= 'z' ) { rch = ch - 0x20; // 大小写之间ASCII码差32 } else if((ch < 'A' || ch > 'Z') && (ch > '9' || ch < '0')) { printf("%c 非法字符\n", ch); return 0; } return rch; } main() { printf("%c\n", ch_type('Z')); ch_type('='); ch_type('F');getchar();}

    假设你用于保存字符的变量为ch那么判断里边这么写。if(ch>='a'&& ch <= 'z'){ ch = ch - ('a'-'A');}else if((ch>='A'&&ch<='Z')||(ch>='0'&&ch<='9')){ nothing;}else{printf("error");}

    #include #includeint main(){ char a; scanf("%c", &a); if(islower(a)) a = toupper(a); else if(ispunct(a)) { printf("input error!\n"); return -1; } printf("%c\n", a); return 0;}

    0 讨论(0)
提交回复