`
ninghuan
  • 浏览: 9385 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

<THE C PROGRAMMING LANGUAGE> 练习 第一章 (1-6 -- 1-10)

    博客分类:
  • C
阅读更多
1-6 验证 getchar() != EOF 的值是 0 还是 1.


#include <stdio.h>

int
main()
{
    printf("getchar() != EOF is: %d", (getchar() != EOF));

    return 0;
}


引用

中文怎么了
getchar() != EOF is: 1
Process returned 0 (0x0)   execution time : 11.685 s


* 中文怎么了 为输入内容



1-7 编写一个打印 EOF 值得程序


#include <stdio.h>

int
main()
{
    printf("EOF is: %d", EOF);

    return 0;
}


引用

EOF is: -1
Process returned 0 (0x0)   execution time : 0.015 s




1-8 编写一个统计空格, 制表符与换行符个数的程序.


int
main()
{
    int c, n = 0;

    while ((c = getchar()) != EOF) {
        if (c == '\n' || c == ' ' || c == '\t') {
            n++;
        }
    }

    printf("n = %d", n);

    return 0;
}


引用

HELLO HELLO HELLO HELLO HELLO
ASSSSS
AASADASD
asdasdadasd
^Z

n = 8
Process returned 0 (0x0)   execution time : 28.280 s




1-9  编写一个将输入复制到输出的程序, 并将其中连续的多个空格用一个空格代替.



#include <stdio.h>

int
main()
{
    int c, p;

    while ((c = getchar()) != EOF) {
        if (c != ' ' || (p != ' ')) {
            putchar(c);
        }

        p = c;
    }

    return 0;
}


引用

   H    E     L  L  O
H E L L O
^Z

Process returned 0 (0x0)   execution time : 25.480 s

* 加了个下划线, 直接 quote 第一个空格不显示



1-10 编写一个将输入复制到输出的程序, 并将其中的制表符替换为 \t, 把回退符替换为 \b, 把反斜杠替换为 \\. 这样可以将制表符和回退符以可见的方式显示出来.(未解决)



/*
*  TODO
*  我做不出来, getchar() 居然要等一个回车, 难道我记错了?
*/

#include <stdio.h>

int
main()
{
    int c;

    /* c = getchar() 不加括号编译会有警告 */
    while ((c = getchar())) {

        /* 意义不大, 为了让程序在收到 EOF 可以退出 */
        if (c == EOF) {
            return 0;
        }

        if (c == '\t') {
            printf("\\t");
        } else if (c == '\b') {
            printf("\\b");
        } else if (c == '\\') {
            printf("\\\\");
        } else {
            putchar(c);
        }
    }

    return 0;
}
分享到:
评论

相关推荐

    the_c_programming_language习题答案 第二版

    ### 关于《The C Programming Language》第二版习题答案的知识点总结 #### 一、概述 本书《The C Programming Language》由Brian W. Kernighan 和 Dennis M. Ritchie 合著,是学习C语言的经典教材之一。此文档提供...

    The C Programming Language (第二版中文版).pdf

    本书《The C Programming Language (第二版中文版)》是由C语言的创始人之一Brian W. Kernighan和Dennis M. Ritchie共同编著的经典著作,同时,徐宝文、李帮清、刘杰、刘圆等人为此书进行了翻译。作为计算机科学领域...

    C程序设计语言[The C Programming Language][正文+答案](均含中英文版,内容可复制)

    C程序设计语言(第2版·新版) 中文PDF,完整书签,去水印,内容可复制; ...The C Programming Language 英文PDF可复制,完整书签; The C Programming Language - Answer Book chm,内容可复制。

    《the c programming language answer》

    Ritchie合著的经典教材《The C Programming Language》(通常被称为K&R第二版)中的练习题提供了解答。这本书的出现旨在帮助学习者解决在研读原书过程中遇到的难题,加深对C语言的理解。 C语言是一种强大的、低...

    THE C++ PROGRAMMING LANGUAGE课后习题答案

    《C++ Programming Language》是Bjarne Stroustrup编写的经典C++教程,它深入浅出地介绍了C++语言的各个方面。本资源包含了该书课后习题的完整答案,对于学习C++编程的读者来说,是极好的参考资料。下面我们将详细...

    the c programming language

    1. 在第1章中,介绍了C语言的基本概念和语法,如变量、算术表达式、for循环、字符输入输出、数组、函数、参数传递等。具体知识点包括: - 变量和算术表达式:如何声明变量,进行基本的数学运算; - for循环:循环...

    The C Programming Language,2nd

    #### 第一部分:前言及第一章 - 教程入门 - **前言** (Preface) - 在这一部分,作者们简要介绍了本书的目的、适用对象以及编写背景。这对于初学者来说是非常有用的,因为它设定了学习的目标并指明了方向。 - **第1...

    The C Programming Language 中文版

    《C Programming Language 中文版》是一本非常经典的C语言学习书籍,由Brian W. Kernighan和Dennis M. Ritchie合著,被广大程序员亲切地称为“K&R”。这本书自1978年首次出版以来,就成为了C语言学习者的必备参考书...

    The C++ Programming Language(Third Edition)(EN)-[Bjarne Stroustrup].pdf

    - 第一版印刷日期:1997年6月 综上所述,《C++编程语言》第三版是一本非常有价值的书籍,无论是对于想要深入了解C++语言的初学者还是希望提高编程技能的专业开发人员来说,都是非常有用的资源。通过阅读这本书,...

    Rust - The Rust Programming Language

    在这一章中,通过实现一个猜数字的小游戏,进一步深入介绍了Rust的基础语法和流程控制结构,例如循环、条件语句等。 - **第3章:常见编程概念** 本章涵盖了编程中常见的概念和技术,如变量的作用域、数据类型的...

    The-C++-Programming-Language(ch 3)

    vector&lt;double&gt; v2 = {4, 5, 6}; double dot_product = inner_product(v1.begin(), v1.end(), v2.begin(), 0.0); cout &lt;&lt; "Dot Product: " &lt;&lt; dot_product &lt;&lt; endl; return 0; } ``` #### 3.17 标准库概览 ...

    The_C_Programming_Language.doc

    在第一章“教程介绍”中,作者从入门开始,讲解了如何启动编程环境,变量和算术表达式,以及如何使用`for`语句。接着,介绍了符号常量、字符输入与输出,包括文件复制、字符计数、行计数和单词计数等实用示例。此外...

    The C++ Programming Language(ch 10)

    ### C++编程语言:第10章 - 类 #### 概述 本章节主要介绍了C++中的类(class)概念,以及如何通过类来创建新的数据类型,这些新类型的使用方式与内置类型如`int`和`float`一样便捷。此外,还探讨了类成员、访问...

    The.C++.Programming.Language.3rd

    《C++ Programming Language》是计算机科学领域的一部经典著作,由C++语言的设计者Bjarne Stroustrup撰写。该书的第三版在1997年出版,涵盖了C++语言的核心概念和技术细节,是学习和深入理解C++不可或缺的参考书之一...

Global site tag (gtag.js) - Google Analytics