标题:帮我看看那里错了
只看楼主
心若在
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2004-9-21
 问题点数:0 回复次数:10 
帮我看看那里错了

# include "stdio.h" main() { char a,b,x1,x2; printf("please input two word\n"); scanf("%c,%c",&a,&b); a=('a'<=x1<='z')?x1-32:x1; b=('a'<=x2<='z')?x2-32:x2; if('A'<=a<='Z'&&'A'<=b<='Z') printf("two is zhimu \n"); else if('A'<=a<='Z'&&'0'<=b<='9') printf("one is zhimu,one is shuzhi \n"); else if('0'<=a<='9'&&'A'<=b<='Z') printf("one is shuzhi,one is zhimu \n"); else if('0'<=a<='9'&&'0'<=b<='9') printf("two is shuzhi \n"); else printf("error \n"); getch(); }

我输入什么都只打印two is zhimu

搜索更多相关主题的帖子: one include please 
2004-09-22 14:35
bcomer
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2004-9-13
得分:0 
以下是引用心若在在2004-09-22 14:35:08的发言:

# include "stdio.h" main() { char a,b,x1,x2; printf("please input two word\n"); scanf("%c,%c",&a,&b); a=('a'<=x1<='z')?x1-32:x1; b=('a'<=x2<='z')?x2-32:x2; if('A'<=a<='Z'&&'A'<=b<='Z') printf("two is zhimu \n"); else if('A'<=a<='Z'&&'0'<=b<='9') printf("one is zhimu,one is shuzhi \n"); else if('0'<=a<='9'&&'A'<=b<='Z') printf("one is shuzhi,one is zhimu \n"); else if('0'<=a<='9'&&'0'<=b<='9') printf("two is shuzhi \n"); else printf("error \n"); getch(); }

我输入什么都只打印two is zhimu

把X1换成a,X2换成b就可以了
2004-09-22 16:00
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
得分:0 

a=('a'<=x1<='z')?x1-32:x1;

'a'<=x1<='z'这个是什么意思你知道吗?怎么计算的?基础没学好就想飞?


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2004-09-22 16:03
bcomer
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2004-9-13
得分:0 

改后是这样的

#include <stdio.h> main() { char a,b; scanf("%c %c",&a,&b); a=('a'<=a&&a<='z')?(a-32):a; b=('a'<=b&&b<='z')?(b-32):b; if(('A'<=a&&a<='Z')&&('A'<=b&&b<='Z')) printf("two zimu"); else if(('A'<=a&&a<='Z')&&('0'<=b&&b<='9')) printf("a is zimu,b is shuzi"); else if(('A'<=b&&b<='Z')&&('0'<=a&&a<='9')) printf("b is zimu,a is shuzi"); else if(('0'<=a&&a<='9')&&('0'<=b&&b<='9')) printf("two shuzi"); else printf("qita"); getch(); }

2004-09-22 16:10
bcomer
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2004-9-13
得分:0 
以下是引用knocker在2004-09-22 16:03:44的发言:

a=('a'<=x1<='z')?x1-32:x1;

'a'<=x1<='z'这个是什么意思你知道吗?怎么计算的?基础没学好就想飞?

knocker说的也太重了吧

我看了一天书就写了类似给他改正的程序

用不到多少基础啊

2004-09-22 16:11
bcomer
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2004-9-13
得分:0 
以下是引用bcomer在2004-09-22 16:11:42的发言:

knocker说的也太重了吧

我看了一天书就写了类似给他改正的程序

用不到多少基础啊

我的意思是这个程序在学C的第一天就可以写出来

很正常的 加油

2004-09-22 16:12
心若在
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2004-9-21
得分:0 

是的啊 我只看了一天的书 菜是当然的啊

a=('a'<=x1<='z')?x1-32:x1;

这么写是对了啊 我调试过了

意思就是x1在是小写的字母就把它改成大写


我知道我菜 但我会尽我最大的努力去帮助别人!
2004-09-22 16:30
cooling
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-9-11
得分:0 

兄弟,可以试下这个


# include "stdio.h"
main()
{
char a,b,x1,x2;
printf("please input two word\n");
scanf("%c,%c",&x1,&x2);
a=('a'<=x1&&x1<='z')?x1-32:x1;
b=('a'<=x2&&x2<='z')?x2-32:x2;
if ('A'<=a&&a<='Z'&&'A'<=b&&b<='Z')
printf("two is zhimu \n");
else if ('A'<=a&&a<='Z'&&'0'<=b&&b<='9')
printf("one is zhimu,one is shuzhi \n");
else if ('0'<=a&&a<='9'&&'A'<=b&&b<='Z')
printf("one is shuzhi,one is zhimu \n");
else if ('0'<=a&&a<='9'&&'0'<=b&&b<='9')
printf("two is shuzhi \n");
else printf("error \n");
getch();
}

2006-09-11 19:05
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
以下是引用心若在在2004-9-22 16:30:00的发言:

是的啊 我只看了一天的书 菜是当然的啊

a=('a'<=x1<='z')?x1-32:x1;

这么写是对了啊 我调试过了

意思就是x1在是小写的字母就把它改成大写

不是这样的,如果你输入的是小写字母'a'<=x1成立使得整个式子变成a=(1<='z')?x1-32:x1;
当然输出结果是正确的.


倚天照海花无数,流水高山心自知。
2006-09-11 22:42
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
得分:0 
2004-9-22 14:35:00


[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-09-11 22:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-5580-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.947715 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved