| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
大量收QQ微信精准粉/交友粉,非诚勿扰千里之行 始于足下
共有 242 人关注过本帖
标题:关于Asc码转化为相应的字符
只看楼主 加入收藏
超级板桥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-9-17
结帖率:0
  已结贴   问题点数:20  回复次数:6   
关于Asc码转化为相应的字符
就是输入一个小写,输出它相对的大写字母
2018-09-17 13:27
超级板桥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-9-17
  得分:0 
求大佬
2018-09-17 13:30
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:266
帖 子:5833
专家分:33347
注 册:2011-1-18
  得分:7 
toupper
https://en.cppreference.com/w/c/string/byte/toupper
2018-09-17 14:04
超级板桥
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-9-17
  得分:0 
回复 3楼 rjsp
谢谢
2018-09-17 14:12
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:266
帖 子:5833
专家分:33347
注 册:2011-1-18
  得分:0 
回复 4楼 超级板桥
ascii 中 'A' 到 'Z' 是连续的,'a' 到 'z'也是连续的。
所以有 大写字母 = 小写字母 - 'a' + 'A'

于是有代码
inline char lower2upper( char ch )
{
    return ('a'<=ch && ch<='z') ? (ch-'a'+'A') : ch;
}
2018-09-17 14:55
Mr_doge
Rank: 2
等 级:论坛游民
威 望:1
帖 子:46
专家分:32
注 册:2018-6-28
  得分:7 
#include <stdio.h>
int main(void)
{
    printf("输入大写字母,回车退出。\n");
    char code='A';
    int t_or_f=1;
    while((code>='A')&&(code<='Z')&&(code!='\n'))
    {
        t_or_f=scanf("%c",&code);//读取字符,如果成功读取到字符则给予判断变量真值
        while(getchar()!='\n')//读取scanf()函数剩余在缓冲的\n
            continue;
        if(code=='\n'||t_or_f==0)//如果字符是回车或者未读取到字符则退出
           break;
        else
           printf("%C\n",code+32);//将读取到的字符变更并输出
    }
    if(t_or_f==0)
       {printf("ERRO!\n");}
    printf("程序退出。");
}
大概就这样吧,因为字符在不同系统可能不同(不一定遵循ASCII),所以这个仅供参考
2018-09-17 16:11
豆豆的滴
Rank: 2
等 级:论坛游民
威 望:2
帖 子:52
专家分:66
注 册:2018-5-7
  得分:7 
#include<stdio.h>
int main()
{
    char x,y;
    scanf("%c",&x);
    x=x-32;
    y=x+32;
    printf("%c%c\n",x,y);
    return 0;
}
减32是变大写
加32是变小写
2018-09-17 20:30







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.058247 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved