| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 335 人关注过本帖
标题:新手起步,诚心问关于这个代码的问题
只看楼主 加入收藏
huili46
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:10
专家分:7
注 册:2012-6-10
结帖率:100%
收藏
已结贴  问题点数:40 回复次数:3 
新手起步,诚心问关于这个代码的问题
程序代码:
#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);
    return 0;
}

int getline(char s[],int lim)
{
    int c,i;
    for(i=0;(c=getchar())!=EOF&&i<lim-1&&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;
}

这是书上K&R中文版书上的第21页的一个例题,我打出来在vs2010里面试着编译运行。



问题:
编译运行之后又出现黑框“一闪而过”。而我以前都是编的一些简单的程序,没有涉及到函数,一般都放main函数末尾就行了。所以这里的“system("pause");”不知道该放在哪里才能避免“一闪而过”现象。试过了也放在main函数的末尾,结果无效。求高手指教这种有函数的程序的“system("pause");”该放哪里?

[ 本帖最后由 huili46 于 2012-7-2 16:36 编辑 ]
搜索更多相关主题的帖子: 1000 
2012-07-02 16:02
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:10 
c<lim-1???原文是i<lim-1吧

总有那身价贱的人给作业贴回复完整的代码
2012-07-02 16:18
huili46
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:10
专家分:7
注 册:2012-6-10
收藏
得分:0 
以下是引用embed_xuel在2012-7-2 16:18:58的发言:

c<lim-1???原文是i<lim-1吧

呵呵  天气太热头昏了。。
还有一个问题呢
2012-07-02 16:36
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:30 
system("pause");放在main函数return 0;这句的前面

总有那身价贱的人给作业贴回复完整的代码
2012-07-02 17:43
快速回复:新手起步,诚心问关于这个代码的问题
数据加载中...
 
   



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

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