#include"head.h" void fsave(pstudent head, int* num) { FILE* fp; fp = fopen("幼儿园.txt", "w"); fprintf(fp, "%d\n", *num); fputs("编号\t\t姓名\t\t性别\t\t年龄\t\t班级\t\t缴费日期\t\t缴费年限\n", fp); while (head != NULL) { fprintf(fp, "%ld\t\t", head->id); fprintf(fp, "%s\t\t", head->name); fprintf(fp, "%s\t\t", head->gender); fprintf(fp, "%d岁\t\t", head->age); fprintf(fp, "%s\t\t", head->clas); fprintf(fp, "%d-%d-%d\t\t", head->date[0], head->date[1], head->date[2]); fprintf(fp, "%d-%d-%d\t\t\n", head->time[0], head->time[1], head->time[2]); head = head->next; } fclose(fp); } int fnread(pstudent* head, int* num)//读取信息 { char s[15] = { 0 }; int i = 0; pstudent middle; FILE* fp; fp = fopen("幼儿园.txt", "r"); fscanf(fp, "%d", num); i = 7; while (i--) fscanf(fp, "%s", s); i = *num; while (i--) { middle = (pstudent)malloc(sizeof(student)); if (middle == NULL) { printf("内存分配失败\n"); return 0; } else { middle->next = NULL; fscanf(fp, "%ld", &middle->id); fscanf(fp, "%s", middle->name); fscanf(fp, "%s", middle->gender); fscanf(fp, "%d岁", &middle->age); fscanf(fp, "%s", middle->clas); fscanf(fp, "%d-%d-%d", &middle->date[0], &middle->date[1], &middle->date[2]); fscanf(fp, "%d-%d-%d", &middle->time[0], &middle->time[1], &middle->time[2]); middle->next = *head; *head = middle; } } fclose(fp); return 1; }
时间: 2024-04-06 18:30:33 浏览: 67
这是一段 C 语言代码,实现了幼儿园学生信息的保存和读取功能。函数 fsave(pstudent head, int* num) 将链表中的学生信息保存到文件 "幼儿园.txt" 中。函数 fnread(pstudent* head, int* num) 从文件 "幼儿园.txt" 中读取学生信息并存储到链表中,同时返回读取的学生数量。
具体实现:
函数 fsave(pstudent head, int* num) :
1. 打开文件 "幼儿园.txt" 并以写入的方式打开。
2. 先将学生数量 *num 写入文件中。
3. 将学生信息依次写入文件中,每个学生信息占一行。每行的信息包括:学生编号、姓名、性别、年龄、班级、缴费日期、缴费年限。
4. 关闭文件。
函数 fnread(pstudent* head, int* num) :
1. 打开文件 "幼儿园.txt" 并以读取的方式打开。
2. 先读取学生数量 *num。
3. 跳过表头的一行信息。
4. 依次读取每个学生的信息,并将其存储到一个新的结构体 middle 中。
5. 将新的结构体 middle 加入到链表的头部。
6. 重复步骤 4 和 5 直到读取完所有的学生信息。
7. 关闭文件。
8. 返回读取的学生数量。
相关问题
分析这段代码 try: ifable = driver.find_element(By.XPATH, '/html/body/div[3]/div/div[2]/div/div[2]/div/div/div[2]/button').is_enabled() if ifable == True: driver.find_element(By.XPATH, '/html/body/div[3]/div/div[2]/div/div[2]/div/div/div[2]/button').click() fsave = open('F:\pythonfiles\li\程序自动筛选出的电子监管码.txt', mode='a') fsave.write(条码 + '\n') fsave.close() except NoSuchElementException: print("正常")
这段代码使用了 `try-except` 语句块,用于捕获可能发生的异常。在 `try` 语句块中,首先通过 `driver.find_element()` 方法查找一个 xpath 为 `/html/body/div[3]/div/div[2]/div/div[2]/div/div/div[2]/button` 的按钮元素,并使用 `is_enabled()` 方法检查该元素是否可点击。如果该元素可点击,则点击该按钮,并将 `条码` 写入名为 `F:\pythonfiles\li\程序自动筛选出的电子监管码.txt` 的文件中。如果该元素不可点击,则不进行任何操作,直接跳到 `except` 语句块,输出字符串 "正常"。其中,`NoSuchElementException` 是 `selenium` 库中的一个异常类,表示在当前页面中找不到指定的元素。
'Document' object has no attribute 'fsave'
根据提供的引用内容,错误信息"'Document' object has no attribute 'fsave'"表明在使用Python的某个'Document'对象时,出现了'fsave'属性不存在的错误。根据提供的信息,无法准确判断问题的具体原因。可能是在代码中使用了一个未定义的属性名称或调用了一个不存在的方法。解决这个问题的方法通常是检查代码,确保正确地使用了'Document'对象,并确认是否存在正确的属性和方法。如果需要更多帮助,请提供更多关于代码的详细信息。
阅读全文