CONTEST ID : 1134 - 2023春-计导课设-转专业-文件练习

文件操作练习。注意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);
*/


SERVER TIME : 2025-09-19 11:12:15
Finished

STATUS : End    OPEN : Private
Start Time : 2023-03-24 12:00:00
End Time : 2023-05-04 23:59:00


Download

Standing User Nick Name Solved TIME PENALTY ABCD
12022211928叶家聪4126:32:3028:31:51(-1)29:21:02(-1)32:50:55(-4)33:28:42(-1)
22022212497xx4238:09:5331:15:1145:54:52(-1)99:55:4960:44:01
32021211233李志博4258:46:0048:36:00(-2)54:13:54(-23)71:16:30(-12)71:59:36(-1)
42022211698李佳伊4265:03:4149:26:17(-1)50:54:07(-1)80:51:54(-1)82:51:23
52022211480马耳东风4442:02:35104:13:01(-9)106:28:07(-18)107:52:30(-2)109:28:57(-13)
62022212615luckyBUPT4513:23:50106:20:51(-4)123:11:59(-2)129:15:24(-4)151:15:36
72022210792『 』4520:32:4258:04:43(-3)152:33:47(-3)153:09:57(-2)154:04:15
82022210145Jeff4604:17:48127:45:50128:46:41143:57:40(-3)202:47:37
92022210130世间万物4634:11:39146:59:36(-3)147:33:34(-3)167:02:01(-3)166:56:28(-8)
102022211668字禹润4709:55:09105:17:46(-4)105:53:32(-5)222:38:34273:05:17
112022211656包诗峰4739:51:53171:43:38(-1)197:48:25171:26:52(-3)197:32:58
12202221203620222120364766:13:28130:13:17(-28)227:10:29(-1)225:21:26(-1)171:08:16(-7)
132022212139zzz4820:41:40175:05:04(-3)194:53:02(-2)220:40:00228:23:34
142022210484空条承太郎4842:45:20149:30:38(-9)214:09:22(-4)219:42:27(-3)250:02:53(-12)
152022210576idle4937:32:08203:03:44(-5)292:08:12(-5)219:24:43(-3)217:15:29(-4)
162022212511蔡逸文4967:30:31460:11:59(-11)103:36:27(-2)195:02:44(-3)201:59:21(-4)
172022210470周宇洋4998:32:32249:35:24249:37:59249:38:57249:40:12
182022212702宋健41077:17:34106:36:39(-7)107:50:59(-3)419:27:34(-4)435:42:22(-9)
192022210583cc41082:42:41239:26:30(-1)240:09:10275:19:58(-2)325:07:03(-5)
202022210466阿三太帅呀41262:13:49315:23:47315:25:24315:40:04315:44:34
212022213782indication41299:50:23250:06:00(-11)294:05:22(-2)458:05:25(-1)292:53:36
222022212499202221249941433:54:21247:36:25(-5)465:05:15(-1)324:51:02394:21:39
232022212503Jjjjj41463:01:37349:33:13(-2)350:33:53367:05:40(-1)391:48:51(-9)
242022212111码码哈哈41637:12:04386:52:21(-9)414:22:10(-8)366:41:10(-4)460:16:23(-6)
252022212666李宇星41878:08:28460:35:23(-4)462:05:34(-1)468:16:21(-9)482:11:10(-1)
262019211315hsc41928:56:56458:28:32489:33:48(-1)489:50:16490:44:20
2720222126252022212262541964:07:20391:35:23(-2)392:47:41583:50:40(-18)587:13:36(-6)
282022212010蔡正舟42016:48:3227:19:07990:16:35(-3)969:36:4128:36:09
292022212857zealot42041:25:33555:33:54(-3)489:41:34(-3)490:57:05502:33:00(-2)
302022212367wxt42053:28:45487:15:36(-5)489:04:26513:09:14562:19:29
312022212744aggylow42175:16:41334:58:57(-9)339:59:23(-1)508:05:05(-2)987:33:16(-2)
322022212247马梓洋43323:36:37488:26:08(-8)893:48:53(-5)971:27:38(-13)957:33:58(-11)
332022210177牛梓帆43575:46:02815:36:51(-8)816:29:39947:14:10993:45:22
342022211644apple43662:34:41898:20:33(-10)910:04:42(-7)923:09:17(-1)925:00:09
352022212458谭超43756:38:00961:41:03(-6)819:39:26985:10:35(-3)985:46:56(-4)
362022212414greed10643848:39:03962:06:30962:07:35962:11:08962:13:50
372019211417咸鱼43859:12:41940:16:38(-4)940:22:23(-1)988:23:41988:29:59
382019211405201921140543869:55:44966:20:12967:48:25967:53:11967:53:56
392022212379visir43881:36:56943:05:47(-1)973:36:12(-36)973:03:08(-15)974:31:49
402022212442范兼玮43955:31:31970:19:18(-10)990:09:28(-2)988:11:06(-25)993:51:39(-2)
412022211637爱做梦的露西亚43965:47:05987:15:07(-1)990:58:32(-1)992:15:17(-1)993:58:09(-1)
422021211124zzz43966:28:36991:13:02991:38:02991:44:47991:52:45
432021211127xinxin43972:37:08992:43:09992:56:21993:06:20(-1)993:11:18(-1)
442017211617赵鹏飞43977:00:53994:08:47994:16:38994:17:25994:18:03
452022212922sherry32580:57:16587:00:55995:19:30(-6)995:36:51(-3)(-1)
462022212434Healthy21991:59:44995:54:27(-2)995:05:17(-1)
472021211214黃洪力11002:29:13995:49:13(-20)