| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1519 人关注过本帖
标题:最近论坛里的朋友给写了一个程序,我对这个程序有些问题要问下,请大家帮忙 ...
取消只看楼主 加入收藏
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
结帖率:80%
收藏
 问题点数:0 回复次数:3 
最近论坛里的朋友给写了一个程序,我对这个程序有些问题要问下,请大家帮忙!谢谢
最近论坛里的朋友给写了一个程序,我对这个程序有些问题要问下,请大家帮忙!谢谢大家!
问题程序如下:
#include <stdio.h>
#define MAX_LINE        80

int main(void)
{
        int i,state,count=0;
        char buf[MAX_LINE];               //*这里定义了一个数组*//
        
        while(fgets(buf,MAX_LINE,stdin) != NULL)    //*这里的fgets是干什么啊?一开始以为是个函数,可是后面都没提到过!*//
        {
                for(i=0;buf[i] != '\0';++i)
                {
                        if(buf[i] != ' ' && buf[i] != '\n' && buf[i] != '\t')        //*查看一行有没有空字符*//
                state = 1;                                                        //*有的话,state为1*//
                }
               
                if(buf[i-1] == '\n' && state)                                   //*这里判断,有空字符的是不是为换行,并且,state为真否*//
        {
                ++count;                                     //*是换行,并且为真的话,就加一行!*//
                state = 0;
        }
        }                                                
        
        if(feof(stdin))                                     //*问题出来了,这里feof是干什么的!stdin?*//
        {
                fprintf(stdout,"no-space lines :\t%d",count);     //*这里fprintf?我还没学过……*//
                return 0;
        }
        
        if(ferror(stdin))                                  //*这里的ferror是干什么的?*//
        {
                fprintf(stderr,"read file error!\n");
                return 1;
        }                                                
}
文件保存为lc.c,通过重定向符号<输入要统计的文件,编译生成lc后,可以统计lc.c文件:
lc < lc.c
no-space lines :        30
搜索更多相关主题的帖子: 朋友 MAX 
2008-06-28 14:17
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
收藏
得分:0 
大家帮个忙啊!谢谢了!

编程小菜
2008-06-28 15:40
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
收藏
得分:0 
[quote][bo][un]lintaoxe[/un] 在 2008-6-29 08:21 的发言:[/bo]

“你的代码就是一堆输入+条件判断。。”quote]
这句话给解释下,不太明白……

fgets(buf,MAX_LINE,stdin)
这里怎么理解啊?
if(feof(stdin))
这里的feof这里是什么意思?
这里的ferror呢?
问题比较多,请大家帮帮忙!谢谢了!

编程小菜
2008-06-29 12:20
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
收藏
得分:0 
呵呵,谢谢大家的回贴!
结论:虽然有些东西还是不明白,也许是自己学习还不太深入……不过谢谢大家,我也基本了解了这个程序大多的环节!谢谢各位!

编程小菜
2008-07-03 20:16
快速回复:最近论坛里的朋友给写了一个程序,我对这个程序有些问题要问下,请大家 ...
数据加载中...
 
   



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

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