鱼C论坛

 找回密码
 立即注册
查看: 2263|回复: 6

[已解决]请大佬们帮帮菜鸡(c语言)

[复制链接]
发表于 2020-10-14 23:17:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 dd头子皮皮怪 于 2020-10-14 23:52 编辑

题目如下:

已知任意三个字母,你的任务是判断他们是否相邻。所谓三个字母相邻指的是第一个字母与第二个字母相邻,第二个字母与第三个字母相邻,如“abc”,“bcd”,“XYZ”等。提示:可以利用字符相减操作判断两字母是否相邻。若两个字符之间之差如果是-1,则相邻。例如‘a’-‘b’= -1,则‘a’与‘b’相邻。
注意:如果三个字符中有非字母的输入,判断结果应为不相邻,例如对输入“123”,“12a”等即为不相邻。

输入与输出要求:
输入包括三个字符,以回车结束,占一行,这三个字符之间没有空格。当输入的三个字符相邻时,则应在屏幕上打印“Yes”;否则输出“No”。
程序运行效果:
Sample 1:
abc↙
Yes↙
Sample 2:
AbC↙
No↙

最佳答案
2020-10-15 00:41:10
我只会C语言
#include<stdio.h>

int main()
{
      char ch1,ch2,ch3;
      printf("请输入三个字符:");
      scanf("%c%c%c",&ch1,&ch2,&ch3);
      if ((ch1 - ch2) == -1 && (ch2 - ch3) == -1)
      {
            printf("YES\n");
      }
      else
      {
            printf("NO\n");
      }
}

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-14 23:30:27 | 显示全部楼层
本帖最后由 kogawananari 于 2020-10-14 23:33 编辑
const isNeighbor = s => s.charCodeAt(2)-s.charCodeAt(1)==1 && s.charCodeAt(1)-s.charCodeAt(0)==1
随便写了个 如果不限定语言  没把非字母屏蔽掉 输出没给你弄yes no 但是你应该看得懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-14 23:43:16 | 显示全部楼层
用python写一个。
string = input()
if ord(string[0]) - ord(string[1]) == -1 and ord(string[1]) - ord(string[2]) == -1:
    print('Yes')
else:
    print('No')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-14 23:47:23 | 显示全部楼层
temp = input()
if (len(temp) !=3)or(temp.isalpha):
    print("NO")
else:
    str_list = list(temp)
    a1 =  ord(str_list[0]) - ord(str_list[1])
    a2 =  ord(str_list[1]) - ord(str_list[2])
    if a1==-1 and a2==-1:
        print("YES")
    else:
        print("NO")

python的,加了输入判断,限定输入为字母和长度
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-14 23:47:39 | 显示全部楼层
kogawananari 发表于 2020-10-14 23:30
随便写了个 如果不限定语言  没把非字母屏蔽掉 输出没给你弄yes no 但是你应该看得懂{:10_289: ...

大佬nb,但我这c语言的新手真的看不懂这是我们c语言的作业
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-15 00:02:37 | 显示全部楼层
dd头子皮皮怪 发表于 2020-10-14 23:47
大佬nb,但我这c语言的新手真的看不懂这是我们c语言的作业

@昨非 c语言大佬快来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-15 00:41:10 | 显示全部楼层    本楼为最佳答案   
我只会C语言
#include<stdio.h>

int main()
{
      char ch1,ch2,ch3;
      printf("请输入三个字符:");
      scanf("%c%c%c",&ch1,&ch2,&ch3);
      if ((ch1 - ch2) == -1 && (ch2 - ch3) == -1)
      {
            printf("YES\n");
      }
      else
      {
            printf("NO\n");
      }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-10 23:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表