| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 206 人关注过本帖
标题:求教 C程序设计语言 上一例题
只看楼主 加入收藏
omengye
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-3-26
结帖率:100%
收藏
 问题点数:0 回复次数:0 
求教 C程序设计语言 上一例题
两段程序,同是输入多行字符后,输出字符数最多的那一行,区别只在于第二种方法用到了 extern 全局变量,为什么第一种能够正确输出结果,而第二种却不输出任何结果,苦恼ing。
程序代码:
#include <stdio.h>
#include <stdlib.h>
#define MAXLINE 1000
int getline(char line [],int maxline);
void copy(char to [],char from []);

int main()
{
    int len;
    int max;
    char line[MAXLINE];
    char longest[MAXLINE];
    max=0;
    while ( (len=getline(line, MAXLINE))>0 )
    if (len>max)
    {
                max=len;
                copy(longest, line);
}
    if (max>0)
    printf ("%s",longest);
    system("PAUSE");
    return 0;
}

    
    int getline(char s[], int lim)
{
    int c,i;
    for (i=0; i<lim-1 && (c=getchar()) != EOF && c!='\n' ; ++i)
    s[i]=c;
    if (c=='\n')
    {
                s[i]=c;
                ++i;
    }
    s[i]='\0';
    return i;
}
    
    void copy (char to[], char from[])
{
    int i;
    i=0;
    while ( (to[i]=from[i])!='\0' )
    ++i;
}



第二种

程序代码:
#include <stdio.h>

#include <conio.h>

#define MAXLINE 1000

int max;

char longest[MAXLINE];

char line[MAXLINE];



int getline(void);

void copy(void);

main()

{

    int len;

    extern int max;

    extern char longest[];



    max=0;

    while ((len=getline())>0)

    if (len>max)

    {

           max=len;

           copy();

    }

    if (max>0)

    printf ("%s",longest);



    system("PAUSE");

    return 0;

}

int getline(void)

{

    int c,i;

    extern char line[];

    for (i=0;i<MAXLINE-1 && (c=getchar()) != EOF && c!='\n'; ++i)

    if (c == '\n')

    {

           line[i] = c;

           ++i;

    }

    line[i]='\0';

    return i;

}

void copy(void)

{

   int i;

   extern char line[],longest[];

   i=0;

   while ((longest[i]=line[i]) != '\0')

   ++i;

}
搜索更多相关主题的帖子: C程序设计 color 
2011-03-26 21:58
快速回复:求教 C程序设计语言 上一例题
数据加载中...
 
   



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

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