zoukankan      html  css  js  c++  java
  • tcpl 字符串组 1-9示例理解

    让程序读入一组文本行,并打印最长的一行

    getline函数理解

    #include <stdio.h>
    int c, i;
    const int n = 99;
    char l[n];
    
    main() {
    	//处理一行
    	for (i = 0; (c = getchar()) != EOF && c != '
    '; ++i) {
    
    		l[i] = c;
    		printf("i=%d	1=%c
    ", i, l[i]);
    	}
    	printf("%d
    ", i);
    	if (c == '
    ') {
    
    		l[i] = c;
    		printf("i=%d	2=%c
    ", i, l[i]);
    		i++;
    	}
    	l[i] = '';
    	printf("i=%d	3=%c", i, l[i]);
    	return i;
    }
    

    随便输入

    总函数

    #include <stdio.h>
    #define MAXL 1000
    char line[MAXL];
    char lgst[MAXL];
    
    int getline(char line[]);
    void copy(char lgst[], char line[]);
    
    main() {
    
    	int now, t;
    	int max = 0;
    
    	/*	while ((t = getline(line) ) > max) {
    
    			max = t;
    			copy(lgst, line);
    		}  这是第一次犯的错误,第一次取得最大值就直接返回了*/
    	while ((t = getline(line)) > 0) {//括号!没括号只返回第一行
    		if (t > max) {
    
    			max = t;
    			copy(lgst, line); //都是字符数组,临时保存输入行的字符
    		}
    	}
    	if (max > 0)
    		printf("biiiiiiiiiiiigstis:%s", lgst);
    }
    
    int getline(char l[]) { //处理一行
    	int c, i;
    	for (i = 0; (c = getchar()) != EOF && c != '
    '; i++)
    		l[i] = c;
    	if (c == '
    ') {
    
    		l[i] = c;
    		i++;
    	}
    	l[i] = '';
    	return i;
    }
    
    void copy(char cp[], char orig[]) {
    	int i = 0;
    	while (orig[i] != '') {
    		cp[i] = orig[i];
    		i++;
    	}
    }
    
  • 相关阅读:
    springdataJpa对无主键表或视图查询的支持
    Blynk系列随笔
    arduino系列文章
    Debezium系列随笔
    Kafka系列随笔
    SSAS 收藏
    Saiku 系列
    Mondrian系列
    数据仓库理论学习
    加密解密
  • 原文地址:https://www.cnblogs.com/impw/p/14052879.html
Copyright © 2011-2022 走看看