C语言:输入一个字母,返回这个字母在字母表里的位置。这个程序是怎么编的?
答案:3 悬赏:60 手机版
解决时间 2021-12-31 19:54
- 提问者网友:鐵馬踏冰河
- 2021-12-31 15:20
#include
#include
main ()
{
char ch;
int n=1;
while ((ch=getchar ())!=EOF)
{
ch=tolower (ch);
if (ch!='\n')
{
if (ch<='z'&&ch>='a')
{
for (n=0;ch==('a'+n);n++);
printf ("%d",n);
}
else
printf ("-1");
}
}
}
我编的程序是这样的,但是只有输入a的时候才能正确显示字母的位置。
输入别的字母的时候,返回的值全都是0.
这是怎么回事?
最佳答案
- 五星知识达人网友:平生事
- 2021-12-31 16:55
for (n=0;ch==('a'+n);n++);
改成
for (n=0;ch>=('a'+n);n++);
当然,你直接输出ch-'a'+1也是可以的
全部回答
- 1楼网友:蕴藏春秋
- 2021-12-31 17:52
for(n=0;n<26;n++){
if(ch== ('a'+n))
printf(%d",n);
}
你还要再理解一下for的循环条件
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯