| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 978 人关注过本帖
标题:用while写的程序有几个地方不明白
取消只看楼主 加入收藏
famo413
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-9-28
结帖率:0
收藏
 问题点数:0 回复次数:1 
用while写的程序有几个地方不明白
从键盘上输入若干个学生的成绩,统计并输出最高成绩,当输入负数时结束输入
#include "stdio.h"
void main()
{
    int x,max=-1;
    clrscr();
    printf("Input X:");
    while((scanf("%d",&x))==1&&x>=0)
    {
    if(x>max)
    max=x;
    }
    printf("max=%d",max);
}
1.为什么max=-1?
2. while((scanf("%d",&x))==1&&x>=0)这句什么意思?
3.程序是怎样判定最大值的?

搜索更多相关主题的帖子: 键盘 include 最大值 
2011-11-09 09:15
famo413
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-9-28
收藏
得分:0 
回复 楼主 famo413
这个程序我反复在试啊...
特别是在while((scanf("%d",&x))==1&&x>=0)这里
我认为这个意思应该是:输入的X等于1或大于等于0,然后执行循环语句
但我觉得直接大于等于0不是更好吗,于是我把while((scanf("%d",&x))==1&&x>=0)改成while(scanf("%d",&x)>=0)
但是改了之后会一直输入X,输负数也不会退出程序啊,究竟是怎么回事?
而且输入小数或者其他字符整个程序就卡住了,按什么键也退出不了,另外我是用TC2.0的

[ 本帖最后由 famo413 于 2011-11-9 10:24 编辑 ]
2011-11-09 10:11
快速回复:用while写的程序有几个地方不明白
数据加载中...
 
   



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

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