\lstinputlisting 后无法输入文本

\lstinputlisting 后无法输入文本

我是 LaTeX 的新手,使用后在编写文本时遇到了困难\lstinputlisting

以下是我尝试执行的操作:我在小节中编写一些文本,然后使用命令\lstinputlisting插入 R 语言输出。R 输出显示得很漂亮,没有任何问题。但是,我在命令之后编写的任何文本\lstinputlisting都会显示在 R 语言输出之前。这是我的代码片段:

\documentclass[a4paper,8pt]{article} 
\usepackage[utf8]{inputenc} 
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{blindtext}
\usepackage{enumitem}
\usepackage{amsfonts}
\usepackage{color}
\usepackage{listings}
\usepackage{geometry}
\usepackage{fancyhdr}

\addtolength{\oddsidemargin}{-.7in}
\addtolength{\evensidemargin}{-.7in}
\addtolength{\textwidth}{1.75in}
\addtolength{\topmargin}{-.75in}
\addtolength{\textheight}{1.75in}

\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\chead{\thepage}
\pagestyle{fancy} 

\title{Title }
\author{ABC}

\begin{document}
\maketitle

 \section*{Exercise 1}
  This is Exercise 1

 \begin{enumerate}
 \item[(1.1)] Do this first
 \item[(1.2)] Then do this
 \end{enumerate}


 \section*{Solution 1}
  Steps for importing data in R\\
  {\color{blue}
   \textgreater \hspace{0.2cm}  qaz=read.table('qaz.txt') \\
   \textgreater \hspace{0.2cm} qaz \\
  }

 \lstinputlisting[float=h,frame=tb,caption=Socio Data,numbers=left]    {sociooutput1.txt}

This text should be displayed after the R output

\end{document}

这是我所看到的输出。我希望在 R 输出后看到文本“此文本应在 R 输出后显示”

创建的 PDF

任何帮助深表感谢!

答案1

放置内容的常见问题figuretable它们会“四处”浮动,即 LaTeX 会寻找适合它的“最佳”位置。这偶尔会导致不良结果。

这里lstlisting也可以使用 来浮动float=h,这可能有效,但不是在任何情况下都有效。只需删除float=h,列表环境就会出现在所需的位置(即在相关文本之前)

(但是我更改了输入文件,因为我不知道R等等,并且手头没有相关.txt文件,请参阅帖子末尾的示例.c文件)

\documentclass[a4paper,8pt]{article} 
\usepackage[utf8]{inputenc} 
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{blindtext}
\usepackage{enumitem}
\usepackage{amsfonts}
\usepackage{color}
\usepackage{listings}
\usepackage{geometry}
\usepackage{fancyhdr}

\addtolength{\oddsidemargin}{-.7in}
\addtolength{\evensidemargin}{-.7in}
\addtolength{\textwidth}{1.75in}
\addtolength{\topmargin}{-.75in}
\addtolength{\textheight}{1.75in}

\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\chead{\thepage}
\pagestyle{fancy} 

\title{Title }
\author{ABC}

\begin{document}
\maketitle

 \section*{Exercise 1}
  This is Exercise 1

 \begin{enumerate}
 \item[(1.1)] Do this first
 \item[(1.2)] Then do this
 \end{enumerate}


 \section*{Solution 1}
  Steps for importing data in R\\
  {\color{blue}
   \textgreater \hspace{0.2cm}  qaz=read.table('qaz.txt') \\
   \textgreater \hspace{0.2cm} qaz \\
  }

 \lstinputlisting[frame=tb,caption=Socio Data,numbers=left]{helloworldexample.c}% sociooutput1.txt

This text should be displayed after the R output

\end{document}

在此处输入图片描述

helloworldexample.c这是上述解决方案中使用的文件。

#include<stdio.h>

int main(int argc,char **argv)
{
  printf("Hello World!\n");
  return(0);
}

相关内容