05.四.3 从键盘输入两个字符串,合并后,按ASCII码值 从小到大排序在屏幕输出

/*
05.四.3 编写程序,实现从键盘输入两个字符串,把他们合并后,按ASCII码值
从小到大排序在屏幕输出,相同的字符仅输出一次
*/

#include <stdio.h>

int main()
{
    int flag[260]={0};
    char s;
    
    scanf("%c",&s);
    while(s!='\n')
    {
        flag[(int)s]=1;
        scanf("%c",&s);
    }
    scanf("%c",&s);
    
    while(s!='\n')
    {
        flag[(int)s]=1;
         scanf("%c",&s);
    }

    for(int i=0;i<260;i++)
    {
        if(flag[i]==1)
            printf("%c",i);
    }
    return 0;
}

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 可以使用以下代码实现: ```python a, b, c = input().split() # 从键盘输入个字符 a, b, c = ord(a), ord(b), ord(c) # 将字符转换为ascii码 lst = [a, b, c] # 将ascii码存入列表中 lst.sort() # 对列表进行排序 print(lst[], lst[1], lst[2]) # 输出排序后的ascii码字符之间间隔一个空格 ``` 例如,输入字符为 "c a b",则输出为: ``` 97 98 99 ``` ### 回答2: 这道题需要用到字符串ASCII码的知识,还有一些基础的编程技巧。首先,我们需要用到input()函数来从键盘输入个字符,将其存储在三个变量中。然后,我们可以用ord()函数将字符转换成ASCII码,并将其存储在一个表中。接着,我们可以使用sorted()函数对列表排序,并使用join()函数将排序后的ASCII码转换成字符,最终输出排序后的三个字符。 下面是一种可能的实现方式: ```python # 从键盘输入个字符 char1 = input("请输入一个字符:") char2 = input("请输入第二个字符:") char3 = input("请输入第三个字符:") # 将字符转换成ASCII码并存储在一个表中 ascii_list = [ord(char1), ord(char2), ord(char3)] # 对列表进行排序 sorted_asciis = sorted(ascii_list) # 将排序后的ASCII码转换成字符,并将三个字符使用空格分隔输出 sorted_chars = [chr(ascii) for ascii in sorted_asciis] print(' '.join(sorted_chars)) ``` 例如,如果我们输入字符"a"、"B"和"3",程序的输出应该为:"3 B a"。这是因为字符"3"的ASCII码最小为51,"B"的ASCII码为66,"a"的ASCII码为97,而51在ASCII码表中最小,因此排在第一位,接着是66和97。三个字符之间用一个空格分隔。 ### 回答3: 这是一道编程题,需要用编程语言来解决。以下是Python语言的解答示例: ```python # 从键盘输入个字符,并将每个字符ascii码存储在一个表中 lst = [] for i in range(3): c = input("请输入一个字符:") lst.append(ord(c)) # 对列表进行排序从小到大) lst.sort() # 将排序好的ascii码转换成对应的字符输出字符之间间隔一个空格) result = "" for i in lst: result += chr(i) + " " print(result) ``` 以上代码的思路为:先从键盘输入个字符,然后遍历每个字符并将其ascii码存储在一个表中。接着使用Python内置的sort函数对列表进行排序从小到大)。最后再将排序好的每个ascii码转换成对应的字符,并用空格将它们连接起来输出屏幕上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值