免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1584 | 回复: 11
打印 上一主题 下一主题

求教紧急的菜鸟问题——循环语句问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-12-31 15:48 |只看该作者 |倒序浏览
我在SCO Unix服务器上写程序,如下:
main( )
{
     int letter ;
     int i ;
     char number[ 4 ];
   
     printf( "Type three number:\n" );
     while ( ( letter = getchar() ) != '\n' )
     {
            if ( letter >; 9 and letter < 0 )
            {
                   printf( "The data is not number ,type again:\n" );
                   跳到while循环的开始,等待第二次输入;
            }
            number[ i ++ ] = letter;
            number[ i ] = '\0';
      }
       printf( "The number you type is:%s\n" , number );
}
我应该如何跳出if循环,如何才能到达while循环的开始,等待用户的再次输入???用continu是不行的,break也不可以

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2003-12-31 15:51 |只看该作者

求教紧急的菜鸟问题——循环语句问题

用continue。
不是不可以,是你的程序有问题。
你在if语句前面加一句getchar();

论坛徽章:
0
3 [报告]
发表于 2004-01-01 10:29 |只看该作者

求教紧急的菜鸟问题——循环语句问题

c中能用and? &&吧?
另外你程序的意思应该是输入数字
判断是否应该:
if( letter >; '9' || letter < '0' )

下面的条件永远为假!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
因此也就不会运行什么continue,break的那些语句了。
if ( letter >; 9 and letter < 0 )

论坛徽章:
0
4 [报告]
发表于 2004-01-01 13:28 |只看该作者

求教紧急的菜鸟问题——循环语句问题

目前还没有用unix

论坛徽章:
0
5 [报告]
发表于 2004-01-02 09:36 |只看该作者

求教紧急的菜鸟问题——循环语句问题

谢谢两位的指点

论坛徽章:
0
6 [报告]
发表于 2004-01-02 09:48 |只看该作者

求教紧急的菜鸟问题——循环语句问题

lenovo大侠是对的,但我现在输入任意的三个数,却提示:the data is not
number,try again:      这是为什么呢?不管是不是输入是数字还是字母,都有这样的提示。

论坛徽章:
0
7 [报告]
发表于 2004-01-02 10:08 |只看该作者

求教紧急的菜鸟问题——循环语句问题

char lettle;
int num;
lettle=getchar();
num=atoi(lettle);

是不是应该这样啊?

论坛徽章:
0
8 [报告]
发表于 2004-01-02 10:58 |只看该作者

求教紧急的菜鸟问题——循环语句问题

对不起,我是为了方便,把程序中的letter >;0x39||letter <0x30写成了
letter>;9||letter<0 。以至大家没有理解我的意思。我的意思是,我如何才能跳出两层循环,从if循环里面跳出,从新执行while循环,也就是说,如果输入的不是数据,那么,将提示“The data is no number,try again:"等待用户的从新输入,服务器再从新从键盘获取输入

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
9 [报告]
发表于 2004-01-02 11:10 |只看该作者

求教紧急的菜鸟问题——循环语句问题

你要求的输入到底是什么呀?
一个数还是几个数?还是没看懂。

论坛徽章:
0
10 [报告]
发表于 2004-01-02 11:25 |只看该作者

求教紧急的菜鸟问题——循环语句问题

我希望输入三个数,而不是一个,就是三个数输入后,敲入回车,然后服务器就能够获得这些数字。并进行处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP