一道ABCti,中间排大小应该没啥问题,但是不知道为什么出错了

img

我解释一下我的思路,我先把三个值按a[0],a[1],a[2]从小到大排列,然后输入三个大写字母,然后按照ascii表减去65,比如A减去65等于0,B减去65等于1,然后输出,

img

@烟雨龙升

getchar();
scanf("%c%c%c", &q,&w,&e);
前面加个getchar()
还有你的三个数排序是错的

数组是从a[0]开始的,可能与此有关

刚去给你debug了一下,你在第一次输入的时候输入了一个回车,在输入缓冲区留有一个\n 故q在第一次赋值的时候被赋值成了\n,只需要在输入字母的时候加一个getchar();把输入缓冲区的\n读取掉即可,排序emm写得有点怪,但应该是没问题的