Tex 括号的反思

Posted 张子木

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tex 括号的反思相关的知识,希望对你有一定的参考价值。

  在Tex中,左双引号是“,右双引号是”,输入一篇包含双引号的文章,你的任务是把它转换成Tex的格式。

  样例输入:

  “To be or not to be,”quoth the Bard,"that is the question".

  样例输入:

  +To be or not to be ,*quoth the Bard,+that is the question*.

  //  其实原版中文是让变成  ‘‘To be or not to be ,”quoth the Bard,‘‘that is the question".

  // 猛然看去好像变化没有什么,其实就是双引号的变化,而两种双引号在一些显示里是很不明显的。所以,我就用+ 和 * 两个比较明显些的符号代替一下。

#include<stdio.h>
int main(){
    int c,q = 1;
    while((c=getchar())!=EOF){
        if(c=="){
            printf("%s",q?"+":"*");
            q=!q;
        }
        else 
        printf("%c",c);
    }
  fflush(stdin);
return 0; }

 

首先呢,问题是挺简单的,我所以要摘录下来,是感觉这些细节问题确确实实是我们平常要学习的,以小见大,逐渐提升自己敲出的代码的质量。

最简单的,如果想要不停的输入

while((c=getchar())!=EOF)

这行代码无疑是一个很好的参考的例子。干净利落。(使用这个时候,最好在末尾加上fflush(stdin);,然后结束时Ctrl+Z,然后回车即可)

随着我们写出越来越多的代码后,就会发现用个布尔值控制其代码的流向的办法是多么的优雅,自然

    printf("%s",q?"+":"*");
            q=!q;

这里的控制也真的挺棒的。

 

关于布尔值的使用,确实不是什么难点,不过我确实在平常的使用过程中不是很熟练,还是没有这么个想法去使用,不过,还是不用怀疑,这个东西真的很好用

 

以上是关于Tex 括号的反思的主要内容,如果未能解决你的问题,请参考以下文章

《算法竞赛入门经典》5.12TeX括号

LaTeX源代码中的括号使用?

如何理解这段代码片段中的两对括号?

在LaTeX中 如此插入一个大括号

片段中的TextView在Android Studio中返回Null

OpenGL着色器 - 重叠多个纹理