首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言助教用于批量改作业的脚本

作为一名C语言助教,最恶心的事情莫过于改作业了,尤其是我们学校这种对输入输出都没有严格要求的题目,不能通过类似OJ的判题系统批量批改的,原则上是只能手动批改的。...但是一直做着相同的简单的劳动真的很让人发疯,而作为一名程序员,对待这样的任务很自然就想到了编程。考虑了我现在略懂的语言,对于这种直接和文件达交道的事,我很自然的选择了使用shell脚本。...虽然我对shell脚本其实是一窍不通的,然而正巧身边有一本关于这个的书,就花了一个晚上的时间倒腾了一下,有问题了就翻一下资料,差不多把这个小程序弄了个框架。...其实想想,实现的东西也很简单,但是还是花了我不少的功夫。毕竟,这是我写的第一个实用的shell脚本呢。...实现的功能很简单,就是在文件夹下处理一堆的源文件,把编译之后的输出结果与标准答案(146)比较,如果包含标准答案,就判A,当然如果没有加注释,就只能判为B,如果编译通过了,就判C/D,否则判E。

66420
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java中的注解处理器是什么,提供一个自定义注解处理器的实际案例

    Java中的注解处理器(Annotation Processor)是一种在编译时期处理注解的工具,它可以通过扫描和解析源代码中的注解信息,生成额外的代码、配置文件或者进行其他特定的处理操作。...注解处理器能够帮助开发者实现自定义的代码生成、静态分析、验证等功能,从而提高开发效率和代码质量。...4、使用注解处理器:在编译时添加参数“-processor 注解处理器的全限定名”,以启用注解处理器。 下面我们通过一个实际案例来说明注解处理器的使用。...首先,我们定义一个自定义注解@Log,用于标记需要生成日志的类: import java.lang.annotation.ElementType; import java.lang.annotation.Retention...通过合理地使用注解处理器,我们可以简化开发流程,提高代码质量,并实现一些自定义的需求。

    15110

    【JavaSE专栏74】字节输入流InputStream,用于从输入源读取字节数据的流

    一、什么是字节输入流 Java 字节输入流是用于从输入源读取字节数据的流,它以字节为单位进行读取操作,并提供了多种方法来读取不同类型的数据。...ByteArrayInputStream:用于从内存中的字节数组中读取字节数据。 字节输入流提供了一系列的read()方法,用于从输入源中读取字节数据。...字节输入流是 Java 中用于读取字节数据的流,常用于处理二进制数据和进行网络通信等场景。它提供了丰富的方法来读取不同类型的数据,并需要进行异常处理和资源释放。...数据压缩 / 解压缩:字节输入流可用于读取从压缩文件中解压缩的字节数据。可以使用字节输入流从 ZIP 或 GZIP 文件中读取压缩文件的内容。...二、Java字节输入流和字符输入流有什么区别? Java字节输入流和字符输入流的主要区别在于处理的数据类型。字节输入流以字节为单位读取数据,适用于处理二进制数据和网络通信等场景。

    61140

    【Android源码解析】 自定义可清除的输入框

    ,可以在输入框的旁边放一个小的清除图片,然后给Edittext和清除的小图片放到布局中,给布局来一个背景图片,看起来也比较美观的,然后根据edittext.getText().length来设置小图片是否可见...但是随着自己见得多了就发现这样虽然也能实现,真的很水,所以就想着自定义一个能清除的Edittext。...下面说一下自己的思路: 1.首先自定义组件继承edittext 2.重写构造方法,初始化一个清楚按钮的小图标,并设置它的位置 3.监听edittext的焦点改变,根据焦点变化显示隐藏小图标 4.重写一个小图标的按钮点击事件...贴上部分代码: /** * 这里我们不能设置edittext的点击事件,所以我们可以这样做一下: * 当我们按下的位置 是在(输入框的宽度-图标的宽度-图标距离右侧的宽度)和(输入框的宽度...-图标到右侧的宽度)之间 * 也就是说我们按下的位置处于图标的附近,设置输入框 * by Hankkin at:2015年8月11日 16:45:42 * @param

    82910

    常用输入法快速输入自定义格式的时间和日期(搜狗QQ微软拼音)

    常用输入法快速输入自定义格式的时间和日期(搜狗/QQ/微软拼音) 2018-08-26 08:48 几个主流的输入法输入 rq 或者 sj...▲ UTC 自定义 输出效果像这样: 2018-08-26 15:58:05 微软拼音输入法 微软拼音输入法自定义短语的方法请前往:用微软拼音快速输入自定义格式的时间和日期。...具体的自定义字符串是: %yyyy%-%MM%-%dd% %HH%:%mm%:%ss% 更多自定义请参阅:自定义日期和时间格式字符串 - Microsoft Docs 搜狗拼音输入法 搜狗输入法的自定义短语入口在这里...QQ 拼音输入法的自定义短语入口在这里: ?...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布

    3.5K20

    注册中心 Eureka 源码解析 —— 任务批处理

    其内部提供两种任务分发器的实现: 批量任务执行的分发器,用于 Eureka-Server 集群注册信息的同步任务。...单任务执行的分发器,用于 Eureka-Server 向亚马逊 AWS 的 ASG ( Autoscaling Group ) 同步状态。...单任务和批量任务执行器的工作线程实现不同,通过自定义工厂实现类创建。 6.1 创建批量任务执行器 调用 TaskExecutors#batchExecutors(...) 方法,创建批量任务执行器。...省略代码,超过微信文章上限 第 4 行 :优先从重新执行任务的队尾拿较新的任务,从而实现保留更新的任务在待执行任务映射( pendingTasks ) 里。...)映射已满;或者 2)到达批量任务处理最大等待延迟。

    86700

    【Android Gradle 插件】自定义 Gradle 任务 ⑬ ( DefaultTask 中的任务输入和输出属性 | TaskInputs 任务输入接口 | FileCollection )

    文章目录 一、DefaultTask 中的任务输入和输出属性 ( DefaultTask#taskInputs | DefaultTask#taskOutputs ) 二、TaskInputs 任务输入接口...android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.JackOptions.html AnnotationProcessorOptions ( 注解处理器配置...) 文档 : https://docs.gradle.org/current/javadoc/org/gradle/api/DefaultTask.html 一、DefaultTask 中的任务输入和输出属性...函数 , 获取设置的输入文件集合 , 类型为 FileCollection , 函数原型如下 : FileCollection getFiles(); 三、FileCollection 文件集合 --...; 四、代码示例 ---- 代码示例 : /** * 自定义任务类 */ class MyTask extends DefaultTask { MyTask() { //

    1.3K20

    【JavaSE专栏72】字符输入流Reader,用于读取字符数据的抽象类

    ---- 一、什么是字符输入流 字符输入流是 Java IO 库中用于读取字符数据的抽象类,它是 Reader 类的子类,用于读取字符流。...常见的字符输入流类包以下 6 种,请同学们认真学习。 FileReader:用于读取字符文件内容。 BufferedReader:用于缓冲字符,提供了更高效的字符读取能力。...四、字符输入流面试题 一、什么是字符输入流和字节输入流的区别? 答:字符输入流是用于读取字符数据的流,它以字符为单位进行读取操作并处理 Unicode 字符。...而字节输入流(InputStream)是用于读取字节数据的流,以字节为单位进行读取。字符输入流更适用于处理文本文件,能够处理 Unicode 字符和字符集的转换。...五、除了文件,还有哪些输入源可以使用字符输入流读取? 答:除了文件,字符输入流也可以用于读取网络连接、字符串、字符数组等输入源。通过使用适当的字符输入流的子类,可以实现对不同输入源的读取操作。

    49220

    自定义功能区示例:创建用于工作表导航的下拉列表

    标签:VBA,自定义功能区 我们可以自定义功能区,在上面设置我们想要的功能,从而方便我们对工作表或工作簿的操作。...本文的示例如下图1所示,在功能区中添加一个自定义的选项卡,然后再该选项卡中添加带有下拉列表的一个自定义组,用于从下拉列表中选择工作表,从而快速导航到该工作表,这对于工作簿中有大量工作表且要快速找到相应的工作表的用户来说...图1 假设该工作簿名称为CustomUIDropdown.xlsm,使用Custom UI Editor for Microsoft Office打开该工作簿,在其中输入代码: 输入下面的代码: Dim Rib As IRibbonUI Private mwkbNavigation As...End Sub Sub RibbonOnLoad(ribbon As IRibbonUI) Set Rib = ribbon End Sub 保存并关闭该工作簿,然后重新打开该工作簿,即可以看到更新后的自定义功能区界面

    37620

    自定义了几个 WordPress 中用于数据判断的回调函数

    我们在进行 WordPress 开发的时候,在获取数据的时候,需要对数据清理,这时候可能需要数组去掉 null 的值,空值等,保留下非 null 值和非空的值等操作,为了方便这些操作,我定了几个用于数据判断的回调函数...is_null($item); }); 程序中有非常多的这样的数组中需要过滤掉 null 值的处理,每次都适用闭包函数的方式感觉有点不优雅,所以我定义了一个函数 is_exists。...function_exists('is_exists')){ function is_exists($var){ return isset($var); } } 然后就可以直接用于回调函数了:...'0' 也认为是空的,而很多时候我们并不希望,比如表单输入的时候,用户输入 0 了,其实已经输入了,并不是空,所以我同样也创建了一个函数 is_blank。...is_blank($var); } } 这样,我们有时候在表单数据清理的时候,比如要清理掉空的字段,但是保留输入0的,也可以直接使用: $data = array_filter($data, 'is_populated

    40030

    反射+自定义注解---实现Excel数据列属性和JavaBean属性的自动映射

    需求:通过自定义注解和反射技术,将Excel文件中的数据自动映射到pojo类中,最终返回一个List集合?   ...= matchDeclaredFields(colFields, ExcelColName.class); 139 // 如果包含自定义注解的参数 140 141 /...1 /** 2 * 用于匹配Excel文件中的sheet表名(注解值必须是Excel文件中sheet表名) 3 * @author zxz 4 * 5 */ 6 @Documented...pojo类和Excel文件中的数据完成自动映射的,请参考下面pojo类代码。...我调用工具类中的方法进行数据的自动映射,数据10000条,最终导入到数据库中全程使用了7分钟,各位是不是觉得时间还是有点长,但是这个过程我是即把这10000多条的数据封装进来了而且还成功插入到数据库中去了

    2.5K90

    ZYNQ架构分析

    外设是处理器之外的功能部件,一般从事三种功能之一:(一)协处理器—— 辅助主处理器的单元,往往是被优化用于特定任务;(二)与外部接口交互的核心,如连接到LED 和开关、编解码器等等;(三)额外的存储器单元...除了通用的部分,还有两个特殊用途的部件:满足密集存储需要的块RAM 和用于高速算术的DSP48E1 片 通用输入输出IOB 通信接口--包括PCIExpress、串行RapidIO、SCSI 和SATA...[2] — 用于存储映射链接,它支持最高的性能:通过一簇高达256 个数据字(或“ 数据拍(data beats)”)的数据传输来给定一个地址。...• AXI4-Lite [2] — 一种简化了的链接,只支持每次连接传输一个数据(非批量)。AXI4-Lite也是存储映射的:这种协议下每次传输一个地址和单个数据。...• AXI4-Stream [1] — 用于高速流数据,支持批量传输无限大小的数据。

    1.5K30

    @lombok注解背后的原理是什么,让我们走近自定义Java注解处理器

    本文介绍了如何自定义Java注解处理器及涉及到的相关知识,看完本文可以很轻松看懂并理解各大开源框架的注解处理器的应用。...基本实现 实现一个自定义注解处理器需要有两个步骤,第一是实现Processor接口处理注解,第二是注册注解处理器。...实现Processor接口 通过实现Processor接口可以自定义注解处理器,这里我们采用更简单的方法通过继承AbstractProcessor类实现自定义注解处理器。...注册注解处理器 最后我们还需要将我们自定义的注解处理器进行注册。...在每次循环中,一个处理器可能被要求去处理那些在上一次循环中产生的源文件和类文件中的注解。第一次循环的输入是运行此工具的初始输入。这些初始输入,可以看成是虚拟的第0次的循环的输出。

    79020

    批量汇总多Excel表格 | 格式化表单转数据明细之3:可配置的映射关系

    首先,我们回顾一下《批量汇总多Excel表格 | 格式化表单(如简历)数据汇总2:多表批量转换汇总》里的代码: 其中用红框框出来的内容是咱们修改的自定义函数,固定了列名和引用的位置,用红色荧光笔画出来的内容是在操作展开数据或删除其他列时自动生成的固定列名...荧光笔画出来那部分改起来很容易,只要变成配置表里的内容列就好了。 大海:对的。所以首先改动这部分,改完后如下: 小勤:嗯。但上面那个自定义函数怎么改成引用配置表的就不懂了。...大海:这个我先把改好的给你,然后再跟你解析: 这个在自定义函数里面还是将要提取数据的表作为参数(s)传进去,构建table的列名由原来的固定内容改为从配置(映射表)里取,所以改为:映射表[...“年龄”的具体内容进行了说明,为了取得所有的内容,通过对映射表[内容]使用List.Transform函数(关于该函数的使用,将在后续文章中专门说明,敬请关注),并将“年龄”改为下划线(表示针对映射表[...大海:关于这个函数的例子很多,可以参考《用Power Query轻松批量抓取A股数据,及列表转换函数(List.Transform)的使用》。 小勤:好的。

    97820
    领券