\documentclass[实验报告模板]{subfiles}

% \clearpage
% \fancyfoot[C]{第 \thepage 页\quad 共 \thetotalpages 页}
\renewcommand{\mydate}{
    2023/09/22
}

\begin{document}
    \mytitle
    \begin{enumerate}
    \myitem{实验目的}{
        \item 回顾之前学习过的语言语法（任何语言都可以），旨在解决数据结构实际问题。
    }
    \myitem{实验内容}{
        \item 输入 10 名学生的成绩，计算总分和平均分，输出平均分。
        \item 输入 10 个学生的成绩，输出高于平均分的学生成绩。
    }
    \myitem{实验原理}{
        \item 程序设计原理。
    }
    \myitem{实验步骤}{
        \item 问题抽象
        \item 编写程序
        \item 调试程序
        \item 完善总结
    }
    \myitem{调试过程、结果和分析}{
        \item JavaScript总体以异步执行为特点，因此不能简单地使用for循环来重复读取输入数据，需要在事件中调用函数来达到重复执行的目的；
        \item JavaScript不像Python有内置的sum函数，因此需要使用Array.reduce方法实现求和。
    }
    \myitem{总结}{
        \item 使用JavaScript实现，效果不错；
        \item 简单考虑，暂时不考虑输入错误的情况；
        \item 总体时间复杂度为O(n)，空间复杂度为O(n)；
        \item 对于第1题，只需要计算总分和平均分时，可以不使用数组，只使用一个变量记录总分，最后计算平均分，可以将空间复杂度降为O(1)，而第2题可能无法降低空间复杂度了；
        \item 学生数10与主要功能解耦，便于更改学生数。
    }
    \myitem{附件}{
        \item 输入 10 名学生的成绩，计算总分和平均分，输出平均分。\\
        （JavaScript， Node.js环境） 
        \inputminted[linenos=true,breaklines=true]{javascript}{../JavaScript/第一章作业1.1.js}
        % PDFLaTeX暂时无法导入文件名含有中文的代码文件
        % 使用XeLaTeX时：
        % (./latex-output/_minted-第一章作业/default.pygstyle)
        % runsystem(pygmentize -l "javascript" -f latex -P commandprefix=PYG -F tokenmerge -P stripnl="False" -o ./latex-output/_minted-第一章作业/EB9C1F6C899584BBD96A7EA2CCA6A26247E0DCB0F1FF070BB839FDEA77D6714A.pygtex ../JavaScript/第一章作业1.1.js)...executed.
        % 使用PDFLaTeX时：
        % (./latex-output/_minted-第一章作业/default.pygstyle)
        % runsystem(pygmentize -l "javascript" -f latex -P commandprefix=PYG -F tokenmerge -P stripnl="False" -o ./latex-output/_minted-第一章作业/CDD4D8FBCEF7B3B45864487BE6CE9E9E.pygtex ../JavaScript/\CTEX@char@nnn {231}{172}{172}\CTEX@char@nnn {228}{184}{128}\CTEX@char@nnn {231}{171}{160}\CTEX@char@nnn {228}{189}{156}\CTEX@char@nnn {228}{184}{154}1.1.js)...executed.
        \itemsep 3em
        \item 输入 10 个学生的成绩，输出高于平均分的学生成绩。\\
        （JavaScript， Node.js环境） 
        \thetotalpages
        \inputminted[linenos=true,breaklines=true]{javascript}{../JavaScript/第一章作业1.2.js}
    }
    \end{enumerate}
\end{document}