//读入一串文本行,并把最长的文本行输出出来
#include <stdio.h>
#define MAXLINE 100;
int getLine( char line[],int maxline);
void copy(char to[], const char from[]);
int main(){
int len;//一行的字符长度
char line[100]; /* current input line ,当前的输入行*/
char longest[100];
int max =0;
//先编写一个读取行文本的函数,以便于读取文本
while((len = getLine(line,100)) > 0 ){
if(len >max){
max = len;
copy(longest,len);
}
}
if(max >0){
printf("%s",longest);
}
return 0;
}
//该函数的形参为字符数组与行字符长度限制
int getLine(char s[],int lim){
//利用传入的字符数组存取一行的字符
int c,i;
for(i=0;i<lim-1 && (c=getchar()) != EOF && c != '\n';i++){
//将读取输入的字符放入s[]字符数组中
s[i] = c;
}
if(c=='\n'){
s[i] = c;
++i;
}
s[i] = '\0';//getline 函数把字符'\0'(即空字符,其值为 0)插入到它创建的数组的末尾,以标记
// 字符串的结束。
return i;//返回当前行字符长度
}
void copy(char to[], const char from[]){
int i;
i = 0;
while((to[i] = from[i]) != '\0'){
++i;
}
}
The+C+Programming+Language字符数组例子
猜你喜欢
转载自blog.csdn.net/fuhuangjjj/article/details/88960498
今日推荐
周排行