C语言,题目是要将输入的字母按一定规律转化并输出,第i个字母变成第26-i+1个字母

比如b是字母表中第二个字母,它转化为第26-2+1个字母#include<stdio.h>intmain(){charc,a,b;while((c=getchar())!... 比如b是字母表中第二个字母,它转化为第26-2+1个字母
#include<stdio.h>
int main()
{
char c,a,b;
while((c=getchar())!='\n');
{if(c>='a'&&c<='z')
{b=26-(c-96)+1+96;
printf("%c",b);}
else if(c>='A'&&c<='Z')
{a=26-(c-64)+1+64;
printf("%c",a);}
else
printf("%c",c);}
return 0;

}
请大神帮我看看为什么这个程序没有任何东西输出(菜鸟请见谅)
展开
 我来答
黑之仙客
推荐于2018-04-24 · TA获得超过156个赞
知道小有建树答主
回答量:234
采纳率:89%
帮助的人:138万
展开全部
#include <stdio.h>
int main()
{
    char a;
    while((a = getchar()) != '\n')
    {
        if(a <= 'z' && a >= 'a')
            putchar(27+'a'-a);
        else if(a <= 'Z' && a >= 'A')
            putchar(27+'A'-a);
    }
    return 0;
}

这段是顺着你的代码写的,还有些细节问题

你的代码问题在于while后面多了个分号。。。永远循环下去了。。。

985967518
2015-10-28 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109865
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部
while((c=getchar())!='\n');去掉分号
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式