文件操作练习。注意B题的读取不能用struct。
D和谐词汇的题,输入是若干字符串,不以空行结束. 所以 gets(line); while (line[0]){... gets(line);}就会导致时间超限,代码在等空行,但in数据没有。应改为while(gets(line))。
/*文件练习B题. 读取一个包含7类数据的二进制文件,找到指定部分内容,并正确解释输出。
思路分析:主体框架是读取二进制文件, while (fread(buffer, buffLen, 1, infile) > 0){...}
因为二进制文件的记录长度是固定的,所以可以计算每条记录的长度,使用fseek直接定位到指定段;
所以用fseek的话,实际只需要读一次就可以。
但是这道题的特殊之处在于,一条记录内是顺序包含7种类型数据,是分多次写入,因此带来的麻烦是
虽然每段内容结构相同,但不能用struct进行整块读取。
因为struct的成员之间有内存空隙;除非源文件本身是用struct格式写入才行。
因此,可以直接定位,但必须分别读取,写出的代码冗长,且容易在变量名和输出格式上出错。
经测试,struct {含7种变量和数组}的长度为200, 但实际7种变量和数组的总长要小一些.
因此,可以直接定位,但必须分别读取,写出的代码冗长,且容易在变量名和输出格式上出错。
一种办法是:按总长度整块读取到字节数组中,然后再逐个定义对应类型的指针,按间接访问就可格式化解释输出。
例: char buffer[LEN];
int i=0; printf("%c\n", buffer[i]); i++;
short * hdPtr=&buffer[i]; printf("%hd\n", *hdPtr); i+=sizeof(short);
*/
Standing | User | Nick Name | Solved | TIME PENALTY | A | B | C | D |
1 | 2021211267 | 维新派--尼古丁真 | 4 | 90:23:12 | 21:10:21(-7) | 21:28:52(-1) | 21:49:02 | 23:14:57 |
2 | 2022211339 | Wanghgk | 4 | 237:03:22 | 44:31:48(-4) | 49:15:36(-1) | 64:37:04(-2) | 76:18:54 |
3 | 2022211337 | 出租广告位 | 4 | 381:29:54 | 95:41:02(-5) | 96:08:34(-5) | 87:44:45 | 97:15:33(-4) |
4 | 2019211561 | lin | 4 | 513:12:26 | 15:06:57 | 93:32:56(-2) | 67:41:22 | 335:51:11(-1) |
5 | 2022211342 | wuyue0622 | 4 | 656:17:24 | 135:56:18(-5) | 139:10:02(-1) | 168:00:34(-3) | 210:10:30 |
6 | 2022211331 | mjssssss | 4 | 690:14:34 | 145:06:25(-11) | 159:44:27(-3) | 170:31:28(-3) | 208:52:14(-1) |
7 | 2022211328 | 叼只羊 | 4 | 789:03:48 | 146:09:25(-1) | 169:56:19(-1) | 252:59:24(-9) | 216:18:40 |
8 | 2022211316 | 2022211316 | 4 | 809:50:49 | 164:10:47(-4) | 212:38:43(-1) | 213:53:34(-1) | 216:47:45(-1) |
9 | 2022211298 | 理塘最速回笼传说 | 4 | 828:06:02 | 171:55:04(-4) | 195:43:26(-1) | 214:35:14(-1) | 243:52:18 |
10 | 2022211294 | 僵饼人 | 4 | 841:23:43 | 91:47:18 | 218:54:07(-1) | 217:26:43(-3) | 310:55:35(-3) |
11 | 2022211275 | jvav | 4 | 850:45:35 | 192:45:34(-19) | 192:59:24 | 215:45:47(-1) | 241:54:50(-2) |
12 | 2022211271 | 摆摆摆 | 4 | 933:40:02 | 213:10:54(-17) | 217:52:57(-4) | 234:50:54(-30) | 243:25:17(-22) |
13 | 2022211335 | lw2333 | 4 | 937:58:29 | 167:19:13(-3) | 214:06:37(-2) | 215:03:21(-1) | 339:29:18 |
14 | 2022211312 | 腻醉蚝狮 | 4 | 959:29:33 | 191:17:24(-5) | 215:03:28 | 262:43:50(-7) | 285:04:51(-4) |
15 | 2022211282 | 2022211282 | 4 | 971:43:55 | 48:16:42(-13) | 238:13:03(-8) | 290:48:23(-5) | 384:45:47(-3) |
16 | 2021211268 | ♠ | 4 | 1040:54:42 | 375:24:22(-6) | 63:31:28(-1) | 290:21:38 | 306:57:14(-7) |
17 | 2022211306 | 刘伟 | 4 | 1083:32:42 | 86:31:13(-2) | 183:42:50(-2) | 336:56:21 | 472:22:18(-8) |
18 | 2022211279 | 叶星尘 | 4 | 1091:42:32 | 165:30:09(-5) | 171:22:54 | 315:29:12(-4) | 436:00:17(-1) |
19 | 2022211348 | 范特西 | 4 | 1104:36:08 | 213:15:53(-6) | 243:18:35(-1) | 305:27:55(-4) | 337:13:45(-5) |
20 | 2022211283 | Aquarius | 4 | 1174:32:45 | 217:33:53(-12) | 241:08:59(-3) | 307:01:34(-2) | 399:48:19(-10) |
21 | 2022211346 | Joker | 4 | 1191:14:05 | 279:00:37(-8) | 289:55:27(-2) | 303:04:19(-3) | 313:13:42(-5) |
22 | 2022211300 | 略略略 | 4 | 1221:53:32 | 47:40:36(-7) | 215:12:14 | 478:21:34 | 478:19:08 |
23 | 2022211236 | 2022211236 | 4 | 1276:23:42 | 240:56:21(-5) | 242:17:59 | 381:01:34(-7) | 407:47:48(-1) |
24 | 2022211344 | Soyo | 4 | 1282:57:07 | 381:10:14(-4) | 165:55:11 | 349:56:57(-2) | 380:54:45(-9) |
25 | 2022211311 | laccnhong | 4 | 1344:47:58 | 311:22:48(-8) | 241:22:33 | 315:00:30(-3) | 470:22:07(-9) |
26 | 2022211272 | 2022211272 | 4 | 1377:57:59 | 265:19:15 | 355:20:49(-5) | 374:45:13(-2) | 378:52:42(-4) |
27 | 2022211325 | LJessi | 4 | 1409:30:42 | 219:57:44(-3) | 242:49:33(-3) | 388:07:59(-2) | 555:15:26(-2) |
28 | 2022211286 | 金牌厨师枭某 | 4 | 1636:54:29 | 231:22:20 | 351:19:50(-2) | 502:24:22(-2) | 548:27:57(-6) |
29 | 2022211276 | kepten | 4 | 1678:28:31 | 378:39:31(-2) | 386:07:21 | 455:11:50(-3) | 456:29:49(-1) |
30 | 2022211289 | wlpar | 4 | 1767:19:15 | 336:20:45(-4) | 336:45:51(-1) | 545:46:42(-1) | 546:25:57 |
31 | 2022211270 | 柳叶刀 | 4 | 1804:05:06 | 380:22:37(-9) | 567:31:04 | 399:34:53(-2) | 452:36:32(-1) |
32 | 2022211324 | 无 | 4 | 1829:52:59 | 243:36:30(-1) | 528:24:07 | 528:39:48(-1) | 528:32:34 |
33 | 2022211295 | 人 | 4 | 1902:16:15 | 384:45:33 | 409:46:52(-1) | 549:12:05(-3) | 556:51:45(-1) |
34 | 2022211285 | TheGun | 4 | 1915:24:21 | 474:16:51(-2) | 475:36:51(-2) | 480:09:45(-2) | 483:00:54(-1) |
35 | 2022211297 | 小菜鸡 | 4 | 2044:16:21 | 502:59:25 | 505:48:14(-1) | 517:15:28(-1) | 517:33:14 |
36 | 2022211246 | 小学徒 | 4 | 2115:39:45 | 385:38:02(-5) | 506:23:12(-3) | 552:47:47 | 667:50:44(-1) |
37 | 2022211269 | shiroi | 4 | 2214:07:52 | 552:15:55(-1) | 552:39:21(-3) | 553:20:46(-1) | 553:51:50(-1) |
38 | 2022211281 | Reyurd | 4 | 2369:11:26 | 458:11:34(-2) | 551:45:39(-3) | 652:01:04(-6) | 699:33:09(-12) |
39 | 2022211356 | Fiona | 4 | 2455:52:58 | 380:52:17 | 499:40:52(-2) | 834:51:56(-6) | 734:47:53(-9) |
40 | 2022213794 | Artery | 4 | 2493:13:19 | 405:50:58 | 695:46:51 | 695:47:29 | 695:48:01 |
41 | 2022211309 | 陈武 | 4 | 2567:25:37 | 363:47:50(-4) | 476:49:52 | 811:34:45 | 912:13:10(-5) |
42 | 2022211293 | ddl-ing | 4 | 2739:16:38 | 554:08:30(-1) | 555:07:08(-2) | 569:33:55 | 1059:27:05 |
43 | 2022211334 | 反方向的钟 | 4 | 2784:36:43 | 411:56:08 | 819:44:26(-7) | 725:47:10(-7) | 821:28:59(-3) |
44 | 2021211266 | 守旧派--中华王源 | 4 | 2797:23:57 | 293:12:22(-7) | 331:33:13(-5) | 1082:25:42(-7) | 1083:52:40 |
45 | 2022211238 | ukpkmkk | 4 | 2846:42:33 | 711:36:29 | 711:39:36 | 711:42:43 | 711:43:45 |
46 | 2022211358 | www | 4 | 2975:06:50 | 387:21:47(-2) | 647:48:22(-10) | 953:44:48(-3) | 977:51:53(-10) |
47 | 2022211353 | adsfhgkdsg | 4 | 2977:42:26 | 302:29:11 | 721:08:58(-4) | 927:44:25 | 1024:59:52 |
48 | 2022211268 | 那年我双手抱头,被打得不能还手 | 4 | 3001:24:04 | 501:40:50(-6) | 832:26:14 | 832:28:06(-1) | 832:28:54 |
49 | 2022211273 | cs | 4 | 3050:21:29 | 115:54:28(-3) | 1033:50:39(-5) | 866:43:30(-3) | 1028:32:52(-5) |
50 | 2022211258 | lzjslzhhh | 4 | 3081:23:38 | 447:56:31(-3) | 864:07:44(-2) | 878:44:33 | 886:54:50(-6) |
51 | 2022211240 | 铁卷秋田猫 | 4 | 3089:17:35 | 528:13:32(-4) | 835:28:19(-1) | 861:22:00(-1) | 860:53:44(-4) |
52 | 2022211256 | 付钱买烦恼 | 4 | 3125:40:27 | 580:30:38 | 745:12:57 | 864:38:03 | 935:18:49 |
53 | 2022211319 | 武16大大 | 4 | 3130:39:22 | 476:16:10(-2) | 549:32:32(-1) | 1050:48:14(-1) | 1051:42:26(-3) |
54 | 2022211242 | hawkingwallct | 4 | 3130:54:10 | 696:54:53(-1) | 699:36:42(-5) | 816:24:43(-1) | 915:37:52 |
55 | 2022211257 | lizhenggg | 4 | 3152:22:48 | 474:20:43(-13) | 544:27:20(-2) | 1055:47:20(-5) | 1069:47:25(-4) |
56 | 2022211357 | 噶 | 4 | 3167:19:24 | 567:48:18(-29) | 647:29:00(-3) | 958:07:31(-9) | 979:54:35(-1) |
57 | 2022211303 | 李沅泽 | 4 | 3207:42:50 | 169:37:36(-2) | 1004:08:24 | 1004:51:08 | 1027:45:42(-2) |
58 | 2022211347 | 南极星 | 4 | 3262:13:09 | 815:21:44 | 815:24:43 | 815:37:32 | 815:49:10 |
59 | 2022211330 | L23 | 4 | 3304:07:12 | 818:23:42 | 818:39:30 | 833:27:05 | 833:36:55 |
60 | 2022211326 | sshs | 4 | 3346:40:42 | 836:39:36 | 836:39:58 | 836:40:24 | 836:40:44 |
61 | 2022211301 | 雒 | 4 | 3484:18:13 | 240:10:28 | 1081:08:48 | 1081:29:07 | 1081:29:50 |
62 | 2022211321 | 路人明ing | 4 | 3499:04:45 | 243:23:21(-10) | 1081:16:41(-5) | 1083:52:25(-8) | 1082:52:18 |
63 | 2022211329 | 别挡我的路 | 4 | 3518:49:58 | 811:22:36(-3) | 811:29:29 | 812:57:22 | 1082:00:31 |
64 | 2022211255 | daniiiiiel | 4 | 3641:01:42 | 910:13:13 | 910:15:20 | 910:16:12 | 910:16:57 |
65 | 2022211352 | Holour | 4 | 3658:20:10 | 408:55:00(-5) | 1082:09:35 | 1082:26:53(-2) | 1082:28:42 |
66 | 2022211341 | biomoo | 4 | 3696:38:20 | 457:38:09 | 1078:10:50 | 1079:46:36 | 1080:22:45(-2) |
67 | 2022211296 | velpro | 4 | 3945:01:55 | 954:19:12 | 954:20:05 | 954:21:18 | 1082:01:20 |
68 | 2022211249 | 2022211249 | 4 | 3993:06:44 | 998:01:30 | 998:04:27 | 998:29:59 | 998:30:48 |
69 | 2022211333 | 瑟瑟发抖吧 | 4 | 3998:35:19 | 913:11:44(-10) | 914:28:11 | 1081:48:21(-5) | 1083:27:03(-2) |
70 | 2022211349 | 泰拉瑞亚糕手 | 4 | 4087:00:17 | 837:38:12(-12) | 1079:46:26(-1) | 1080:58:00 | 1082:57:39(-4) |
71 | 2022211350 | ... | 4 | 4094:46:53 | 984:34:51 | 985:34:56(-3) | 1052:22:01 | 1070:55:05(-1) |
72 | 2022211322 | 豌豆黄冠 | 4 | 4103:20:38 | 891:08:49(-10) | 1057:44:34 | 1070:39:10 | 1080:28:05 |
73 | 2022211266 | lyt6666 | 4 | 4115:12:59 | 985:46:56(-2) | 986:32:29(-1) | 1070:51:10 | 1071:02:24 |
74 | 2022211305 | 正模 | 4 | 4123:25:19 | 1029:46:11(-1) | 1029:47:29 | 1031:13:23(-1) | 1031:58:16 |
75 | 2022211307 | 奥本 | 4 | 4146:10:51 | 1027:59:23(-14) | 1028:54:37(-5) | 1029:50:47(-2) | 1052:26:04 |
76 | 2022211254 | karei | 4 | 4179:18:12 | 1044:42:55 | 1044:43:50 | 1044:44:34 | 1044:46:53(-1) |
77 | 2022211354 | asdf | 4 | 4275:05:12 | 1071:26:15(-9) | 1054:55:04(-2) | 1071:54:31(-6) | 1071:09:22 |
78 | 2022211290 | pvz2408 | 4 | 4311:55:25 | 1075:28:28(-1) | 1076:04:15 | 1080:13:50 | 1079:48:52 |
79 | 2022211241 | qy | 4 | 4317:23:32 | 1079:09:48 | 1079:19:13 | 1079:16:48(-1) | 1079:17:43 |
80 | 2022211323 | 爆米花 | 4 | 4325:07:30 | 1081:09:25(-1) | 1081:11:32 | 1081:12:45 | 1081:13:48 |
81 | 2022211265 | 库丽米拉·叶尔兰 | 4 | 4326:12:40 | 1081:24:49 | 1081:26:51 | 1081:29:53(-1) | 1081:31:07 |
82 | 2022211351 | 我不会写java | 4 | 4327:51:13 | 1081:53:41 | 1081:56:27 | 1081:59:52 | 1082:01:13 |
83 | 2022211327 | です | 4 | 4328:15:28 | 1083:43:38(-5) | 1072:20:40 | 1083:35:10(-6) | 1083:56:00(-3) |
84 | 2022211332 | 渋谷最強伝說と下海のJK!女同唐可可です | 4 | 4331:01:50 | 1082:28:39 | 1082:45:34 | 1082:47:45 | 1082:59:52 |
85 | 2022211267 | 6 | 4 | 4331:29:53 | 1082:37:49 | 1082:57:00 | 1082:57:22 | 1082:57:42 |
86 | 2022211244 | 桶 | 4 | 4332:57:15 | 1083:08:38 | 1083:14:02 | 1083:16:14 | 1083:18:21 |
87 | 2022211262 | 屈财湘 | 4 | 4335:37:42 | 1083:46:19 | 1083:46:58 | 1083:47:42 | 1083:56:43(-1) |
88 | 2022211274 | 一壹一 | 4 | 4338:18:39 | 1082:19:53(-11) | 1083:38:20(-4) | 1083:04:12(-2) | 1083:36:14 |
89 | 2022211315 | 996xiaozhe | 3 | 188:45:25 | 24:35:08(-2) | 24:57:11(-1) | 135:53:06(-7) | |
90 | 2022211304 | Last、炫神 | 3 | 1880:41:31 | 408:29:54(-1) | 421:25:25 | 1050:06:12(-1) | |
91 | 2022211288 | 余川 | 3 | 2203:03:25 | (-6) | 717:19:58(-1) | 740:18:33(-2) | 744:04:54(-1) |
92 | 2022211313 | canyi | 3 | 3210:58:45 | 1051:15:54(-12) | 1077:47:44 | 1077:55:07 | |
93 | 2022211263 | 1 | 3 | 3250:05:41 | 1083:20:03 | 1083:22:24 | 1083:23:14 | (-3) |
94 | 2022211292 | 2022211292 | 2 | 430:36:49 | 213:15:39(-10) | 214:01:10 | (-5) | |
95 | 2022211239 | 2022211239 | 2 | 1395:03:42 | 528:08:49(-11) | 862:54:53(-1) | ||
96 | 2022211355 | 。 | 2 | 1431:17:34 | 711:30:17(-10) | 715:47:17(-2) | (-4) | |
97 | 2021211394 | 2021211394 | 2 | 1444:07:55 | (-4) | 722:10:40 | 721:57:15 | |
98 | 2022211245 | 李佳豪 | 2 | 1773:42:48 | 697:05:12(-1) | 1076:17:36 | ||
99 | 2022211253 | 十九 | 2 | 2096:18:17 | 1047:26:19 | 1047:51:58(-3) | ||
100 | 2022211261 | 新西兰无水奶油 | 1 | 385:40:51 | 385:00:51(-2) | |||
101 | 2022211287 | lin | 1 | 1053:27:56 | (-9) | 1053:07:56(-1) | (-1) | |
102 | 2019211506 | lan | 0 | 00:00:00 | (-14) | (-2) | (-1) | |
103 | 2022213795 | fres | 0 | 00:00:00 | (-1) |