文件操作练习。注意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);
*/
RunID | User | Nick Name | Problem ID | Result | Memory | Time | Language | Code Length | Submit Time |
101708 | 2022212379 | visir | Wrong Answer | 1196KB | 11ms | C | 4999 bytes | 2023-05-03 23:32:28 | |
101707 | 2022212379 | visir | Wrong Answer | 1196KB | 14ms | C | 4999 bytes | 2023-05-03 23:31:56 | |
101706 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 4999 bytes | 2023-05-03 23:31:38 | |
101705 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 4999 bytes | 2023-05-03 23:30:02 | |
101704 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 4999 bytes | 2023-05-03 23:29:29 | |
101703 | 2022212379 | visir | Wrong Answer | 1196KB | 9ms | C | 4999 bytes | 2023-05-03 23:29:10 | |
101702 | 2022212247 | 马梓洋 | *Accepted65025 | 1192KB | 11ms | C | 2038 bytes | 2023-05-03 23:27:38 | |
101701 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 5020 bytes | 2023-05-03 23:27:32 | |
101699 | 2022212379 | visir | Wrong Answer | 1196KB | 11ms | C | 5020 bytes | 2023-05-03 23:26:50 | |
101698 | 2022212379 | visir | Runtime Error | 1196KB | 9ms | C | 5047 bytes | 2023-05-03 23:26:25 | |
101697 | 2022212379 | visir | Wrong Answer | 1196KB | 8ms | C | 5020 bytes | 2023-05-03 23:25:59 | |
101696 | 2022212379 | visir | Runtime Error | 1196KB | 9ms | C | 5047 bytes | 2023-05-03 23:25:00 | |
101695 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 4987 bytes | 2023-05-03 23:15:45 | |
101693 | 2022212379 | visir | Wrong Answer | 1196KB | 10ms | C | 4987 bytes | 2023-05-03 23:10:20 | |
101653 | 2022212442 | 范兼玮 | Accepted | 1196KB | 8ms | C | 2766 bytes | 2023-05-03 22:19:18 | |
101648 | 2022212442 | 范兼玮 | Wrong Answer | 1196KB | 9ms | C | 2766 bytes | 2023-05-03 22:17:51 | |
101629 | 2022212442 | 范兼玮 | Wrong Answer | 1192KB | 11ms | C | 1603 bytes | 2023-05-03 21:55:44 | |
101626 | 2022212442 | 范兼玮 | Wrong Answer | 1192KB | 9ms | C | 1600 bytes | 2023-05-03 21:51:58 | |
101623 | 2022212442 | 范兼玮 | Output Limit Exceed | 1192KB | 9ms | C | 1688 bytes | 2023-05-03 21:51:09 | |
101620 | 2022212379 | visir | Wrong Answer | 1196KB | 11ms | C | 5023 bytes | 2023-05-03 21:49:30 | |
101619 | 2022212379 | visir | Runtime Error | 1196KB | 9ms | C | 5050 bytes | 2023-05-03 21:49:18 | |
101615 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 5023 bytes | 2023-05-03 21:48:00 | |
101608 | 2022212379 | visir | Wrong Answer | 1196KB | 10ms | C | 5023 bytes | 2023-05-03 21:42:51 | |
101607 | 2022212379 | visir | Runtime Error | 1196KB | 9ms | C | 5050 bytes | 2023-05-03 21:42:38 | |
101600 | 2022212010 | 蔡正舟 | Accepted | 1192KB | 14ms | C | 1349 bytes | 2023-05-03 21:36:41 | |
101576 | 2022212442 | 范兼玮 | Wrong Answer | 1192KB | 9ms | C | 913 bytes | 2023-05-03 21:15:57 | |
101572 | 2022212442 | 范兼玮 | Output Limit Exceed | 1192KB | 9ms | C | 1003 bytes | 2023-05-03 21:12:03 | |
101570 | 2022212442 | 范兼玮 | Output Limit Exceed | 1192KB | 10ms | C | 1002 bytes | 2023-05-03 21:10:15 | |
101569 | 2022212442 | 范兼玮 | Output Limit Exceed | 1192KB | 8ms | C | 998 bytes | 2023-05-03 21:08:59 | |
101564 | 2022212442 | 范兼玮 | Wrong Answer | 1192KB | 6ms | C | 1001 bytes | 2023-05-03 21:08:11 | |
101562 | 2022212442 | 范兼玮 | Wrong Answer | 1192KB | 6ms | C | 999 bytes | 2023-05-03 21:06:02 | |
101542 | 2022212379 | visir | Wrong Answer | 1196KB | 12ms | C | 4826 bytes | 2023-05-03 20:39:07 | |
101540 | 2022212379 | visir | Runtime Error | 1196KB | 9ms | C | 4853 bytes | 2023-05-03 20:38:51 | |
101525 | 2022212379 | visir | Wrong Answer | 1196KB | 10ms | C | 5338 bytes | 2023-05-03 20:16:56 | |
101523 | 2022212379 | visir | Runtime Error | 1196KB | 8ms | C | 5365 bytes | 2023-05-03 20:16:31 | |
101506 | 2019211405 | 2019211405 | *Accepted64994 | 1068KB | 11ms | C | 2060 bytes | 2023-05-03 19:53:56 | |
101505 | 2019211405 | 2019211405 | *Accepted65025 | 1192KB | 11ms | C | 2029 bytes | 2023-05-03 19:53:11 | |
101504 | 2019211405 | 2019211405 | *Accepted64826 | 1192KB | 11ms | C | 2794 bytes | 2023-05-03 19:52:02 | |
101503 | 2019211405 | 2019211405 | Compile Error | 0KB | 0ms | C | 3084 bytes | 2023-05-03 19:50:47 | |
101500 | 2019211405 | 2019211405 | *Accepted64826 | 1192KB | 13ms | C | 2781 bytes | 2023-05-03 19:48:25 | |
101453 | 2022212247 | 马梓洋 | Wrong Answer | 1192KB | 10ms | C | 1692 bytes | 2023-05-03 19:02:37 | |
101450 | 2022212247 | 马梓洋 | Time Limit Exceed | 1192KB | 1769ms | C | 2141 bytes | 2023-05-03 18:59:49 | |
101447 | 2022212247 | 马梓洋 | Wrong Answer | 1192KB | 12ms | C | 1692 bytes | 2023-05-03 18:57:37 | |
101442 | 2022212247 | 马梓洋 | Wrong Answer | 1192KB | 12ms | C | 1696 bytes | 2023-05-03 18:55:39 | |
101432 | 2022212247 | 马梓洋 | Wrong Answer | 1192KB | 11ms | C | 1694 bytes | 2023-05-03 18:49:54 | |
101428 | 2022212247 | 马梓洋 | Wrong Answer | 1192KB | 11ms | C | 1692 bytes | 2023-05-03 18:43:52 | |
101417 | 2022212458 | 谭超 | Compile Error | 0KB | 0ms | C | 1099 bytes | 2023-05-03 18:33:25 | |
101410 | 2019211405 | 2019211405 | Compile Error | 0KB | 0ms | C | 3076 bytes | 2023-05-03 18:27:32 | |
101408 | 2019211405 | 2019211405 | Compile Error | 0KB | 0ms | C | 2277 bytes | 2023-05-03 18:26:00 | |
101404 | 2019211405 | 2019211405 | *Accepted64996 | 1192KB | 19ms | C | 4101 bytes | 2023-05-03 18:20:12 |