C语言 选择题作业批改

输入

第一行包含2个整数n,k,分别表示本次考试中试选择题的个数和每个选择题的分值。第二行包含一个长度为n的字符串,表示标准答案。第三行包含一个整数s,表示试卷的份数。其下的s行,每行代表一个应试者的答卷中选择题的作答。"X"表示应试者没有回答此题。

输出

按照顺序,每行输出一份试卷的选题题得分。

样例输入

10 2

ABCDABCDAB

4

ABCDABCDAB

BBCDDBCDAB

AACDDBCDAA

ABCDAXCDAB

样例输出

20

16

14

18

下面是我写的代码,为什么会多加2呢?求解。

#include

int main()

{

int n,k,s,i,j,t,r;

char a[100],b[100];

scanf("%d%d",&n,&k);//输入整数n表示选择题的个数,k表示每个选择题的分数

for(i=0;i

scanf("%c",&a[i]);

getchar();

scanf("%d",&s);//接下来有s个要批改的作业数

for(j=0;j

{

for(r=0;r

scanf("%c",&b[r]);

getchar();

t=0;//记录正确题目的分数

for(i=0;i

{

if(a[i]==b[i] && b[i]!='X')

t=t+k;

}

printf("%d\n",t);

}

return 0;

}

------解决方案--------------------

#include

#define MAX(100)

int main(int argc, char* argv[])

{

int ac, qc;

int is, ts;

char a[MAX + 1];

char q[MAX + 1];

int i, j;

scanf("%d%d\n", &ac, &is);

fgets(a, MAX, stdin);

scanf("%d\n", &qc);

printf("\n");

for(i = 0; i

{

fgets(q, MAX, stdin);

ts = 0;

for(j = 0; j

if((a[j] == q[j]) && (q[j] != 'X'))

ts += is;

printf("%d\n", ts);

}

return 0;

}

------解决方案--------------------

#include

#include

int main(void)

{

int n,k,s,i,j,t;

char a[100],b[100];

scanf("%d%d",&n,&k);//输入整数n表示选择题的个数,k表示每个选择题的分数

getchar();//这里要加上

gets(a);//接受n个字符,逐个输入是要人为加上结束标志的

//getchar();

scanf("%d",&s);//接下来有s个要批改的作业数

getchar();

for(j=0;j

{

gets(b);//接受一个字符数组,比gets要好些,认为要求输入的宽度

//getchar();//fgets会吸收回车符并丢弃掉

t=0;//记录正确题目的分数

for(i=0;i

{

if(a[i]==b[i] && b[i]!='X')

t+=k;

}

printf("%d\n",t);

}

return 0;

}

或者也可以用楼上那位的方法

不过那样的话,fgets后面要加上getchar()

因为fgets是会丢弃掉换行符的

自动批改c语言作业,C语言 选择题功课批改相关推荐

  1. 华师c语言作业,C语言程序设计(华师在线作业)1.doc

    C语言程序设计(华师在线作业)1 本学期作业以附件形式完成1. 完成一个大小写字母自动转换的程序,输入大写字母,程序可以输出小写字母,输入小写字母,可以输出大写字母2. 用三种循环方式实现1-100的 ...

  2. 网吧管理系统C语言作业,C语言课程设计-网吧管理系统.doc

    C语言课程设计-网吧管理系统 <通信工程专业C语言课程设计> 报 告 专 业: 通信工程 班 级: 0802 姓 名: 赵 松 指导教师: 丁 雄 二00九 年 十二 月 二十五 日 目 ...

  3. 反弹c语言作业,C语言实现反弹球小游戏

    本文为大家分享了C语言反弹球游戏的具体代码,供大家参考,具体内容如下 这是利用函数写的C语言小游戏,用来检验自己的学习成果 反弹球的实现主要有几个子函数组成 问题也在于如何实现小球的下落,以及碰撞得分 ...

  4. 输出教师信息c语言作业,C语言教师管理系统代码(最新整理)

    <C语言教师管理系统代码(最新整理)>由会员分享,可在线阅读,更多相关<C语言教师管理系统代码(最新整理)(7页珍藏版)>请在人人文库网上搜索. 1.include #incl ...

  5. 订单查询系统c语言作业,C语言设计订单管理系统答题.doc

    PAGE \* MERGEFORMAT30 C语言课程设计 随米打印订单管理系统 学 院: 计算机与信息科学学院 学生姓名: 谢润发 指导教师: 王新祥 职称 教授 专 业: 网络工程 班 级: 15 ...

  6. 图书馆系统c语言作业,C语言图书馆管理系统课程设计报告

    <C语言图书馆管理系统课程设计报告>由会员分享,可在线阅读,更多相关<C语言图书馆管理系统课程设计报告(16页珍藏版)>请在人人文库网上搜索. 1.高级语言程序设计课程设计报告 ...

  7. 停车场管理系统C语言作业,c语言课程设计报告停车场管理系统

    c语言课程设计报告停车场管理系统 C 语言课程设计报告 --停车场管理 1 班 级: 192102 学 号: 20101003907 姓 名: 聂 彪 指导教师: 张冬梅 时 间: 2011 年 6 ...

  8. 湖南师范大学c语言作业,c语言上机实验(湖南师范大学).ppt

    c语言上机实验(湖南师范大学) 实验内容 实验1: 熟悉上机环境和顺序结构编程练习--键盘输入与屏幕输出练习 问题1:要使下面程序的输出语句在屏幕上显示1,2,34,则从键盘输入的数据格式应为以下备选 ...

  9. pta c语言作业,C语言PTA平台习题与答案

    第二章作业 1 ①.本题要求编写程序,输出一个短句"Welcome to You!" #include int main() { printf("Welcome to Y ...

最新文章

  1. Java 数值大小比较
  2. 硬盘格式化与快速格式化的区别
  3. 牛客多校第六场 E Androgynos 自补图
  4. notepad json格式化插件_Prettier + ESLint VSCode 插件配置指南
  5. 011-git-将tag推送到远端
  6. java mysql 数据类型对照
  7. python email模块详解_python email模块
  8. 20145231熊梓宏 《网络对抗》 实验四 恶意代码分析
  9. Spring中采用公共变量并发问题解决
  10. 免费学习编程-值得收藏
  11. 仿小米商城html网页源码
  12. cad2010多个文件并排显示_CAD软件同时显示两张或多张图纸的方法
  13. 傲澜智伴机器人_通辽智伴机器人,智伴机器人招商,傲澜智伴机器人
  14. 统计|如何建立单总体方差的置信区间
  15. 利用Excel去除重复项
  16. 物联网卡和流量卡网速对比,看看谁更强?
  17. 转 javascip学习笔记
  18. OPENGL三维场景搭建、漫游、交互
  19. 富士康c语言试卷答案,富士康笔试真题分享
  20. 通过token窃取实现降权或者提权

热门文章

  1. SCOM的基本概念的理解警报的处理
  2. 全网显示 IP 归属地,可以考虑这个开源库
  3. 判断是否是3的幂次方
  4. 毕业设计 - 题目:基于大数据的信用卡欺诈检测
  5. 第十六节 装箱拆箱 类和结构
  6. 遂川天气预报软件测试,遂川天气预报15天
  7. 一个虚拟主机怎么建立多个站点?
  8. 在c语言中for的作用,c语言中for语句的用法
  9. 【信息安全服务】等级保护2.0 服务流程一览
  10. Unity3D 网络游戏框架(七、TCP粘包和半包问题)