题解 | #字符串合并处理#

字符串合并处理

https://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f

#include <ctype.h>
#include <stdio.h>
#include <string.h>
char set_1[16]="084C2A6E195D3B7F";//变换编码集
char set_2[16]="0123456789ABCDEF";
int main() {
    char str[201];
    char str_2[101];
    int i=0,j=0,len;
    char temp;
    scanf("%s",str);
    scanf("%s",str_2);
    strcat(str,str_2);//拼接
    len=strlen(str);
    for(i=0;i<len-1&&str[i]!='\0';i+=2)//偶数位冒泡排序
    {
        for(j=0;j<len-1-i&&str[j]!='\0';j+=2)
        {
            if(str[j]>str[j+2]&&str[j+2]!='\0')
            {
                temp=str[j];
                str[j]=str[j+2];
                str[j+2]=temp;
            }
        }
    }
    for(i=1;i<len-1&&str[i]!='\0';i+=2)//奇数位冒泡排序
    {
        for(j=1;j<len-1-i&&str[j]!='\0';j+=2)
        {
            if(str[j]>str[j+2]&&str[j+2]!='\0')
            {
                temp=str[j];
                str[j]=str[j+2];
                str[j+2]=temp;
            }
        }
    }
    for(i=0;i<len;i++)//转大写
    {
        if(str[i]>='a'&&str[i]<='f')
            str[i]-=32;
    }
    for(i=0;i<len;i++)//处理变换
    {
        if((str[i]>='0'&&str[i]<='9')||(str[i]>='A'&&str[i]<='F'))
        {
            for(j=0;j<16;j++)
            {
                if(set_1[j]==str[i])
                    break;
            }
            str[i]=set_2[j];
        }
        printf("%c",str[i]);
    }
    return 0;
}

全部评论

相关推荐

牛客吹哨人:哨哥晚点统一更新到黑名单:能救一个是一个!26届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1525833
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务