news 2026/4/15 16:03:56

Homework

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Homework

1.

#include <stdio.h> #include <stdlib.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { FILE *fp; OrangeFarm new_farm; printf("--- 廉江红橙产地数据追加 ---\n"); printf("请输入新增产地信息(格式:ID 名称 产量) :\n"); if (scanf("%d %s %d", &new_farm.id, new_farm.name, &new_farm.yield) != 3) { printf("输入格式错误。\n"); return 1; } fp=fopen("farms.txt","a"); if (fp == NULL) { printf("错误:无法打开文件进行追加!\n"); return 1; } fprintf(fp, "%d %s %d\n", new_farm.id, new_farm.name, new_farm.yield); fclose(fp); printf("\n新记录已成功追加至 farms.txt 末尾。\n"); return 0; }

2.

#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { OrangeFarm farms[100]; int count = 0; int deleteId; char confirm; FILE *fp; fp = fopen("farms.txt", "r"); if (fp == NULL) { printf("错误:无法打开 farms.txt,请确保文件已存在。\n"); return 1; } while (fscanf(fp, "%d %s %d", &farms[count].id,farms[count].name, &farms[count].yield) == 3) { count++; } fclose(fp); if (count == 0) { printf("数据库为空,无数据可删除。\n"); return 0; } printf("\n--- 当前廉江红橙产地列表 ---\n"); for (int i = 0; i < count; i++) { printf("[%d] %-12s", farms[i].id, farms[i].name); if ((i + 1) % 3 == 0) { printf("\n"); } } printf("\n---------------------------\n"); printf("请输入要删除的产地 ID: "); scanf("%d", &deleteId); int targetIndex = -1; for (int i = 0; i < count; i++) { if (farms[i].id == deleteId) { targetIndex = i; break; } } if (targetIndex == -1) { printf("错误:未找到 ID 为 %d 的记录。\n", deleteId); return 0; } printf("\n拟删除记录详情:\n"); printf("ID: %d | 名称: %s | 产量: %d 吨\n", farms[targetIndex].id, farms[targetIndex].name, farms[targetIndex].yield); printf("警告:此操作不可撤回!确定删除吗?(y/n): "); getchar(); scanf("%c", &confirm); if (confirm != 'y' && confirm != 'Y') { printf("操作已安全取消。\n"); return 0; } for (int i = targetIndex; i < count - 1; i++) { farms[i] = farms[i + 1]; } count--; fp = fopen("farms.txt", "w"); if (fp == NULL) { printf("系统错误:无法更新文件数据。\n"); return 1; } for (int i = 0; i < count; i++) { fprintf(fp, "%d %s %d\n", farms[i].id, farms[i].name, farms[i].yield); } fclose(fp); printf("成功:ID 为 %d 的记录已从系统中彻底移除。\n", deleteId); return 0; }

若有数据 输入ID后要求确认 确认后自动退出

3.

#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { OrangeFarm farms[100]; int count = 0; int targetId, choice; FILE *fp; fp = fopen("farms.txt", "r"); if (fp == NULL) { printf("错误:无法打开 farms.txt,请确保文件已存在。\n"); return 1; } while (fscanf(fp, "%d %s %d", &farms[count].id, farms[count].name, &farms[count].yield) == 3) { count++; if (count >= 100) { printf("警告:已达到最大记录数(100条)\n"); break; } } fclose(fp); if (count == 0) { printf("数据库为空,请先添加数据。\n"); return 0; } printf("--- 当前系统内的产地 ID 列表 ---\n"); for (int i = 0; i < count; i++) { printf("[%d] %-12s", farms[i].id, farms[i].name); if ((i + 1) % 3 == 0) { printf("\n"); } } printf("\n-------------------------------\n"); printf("请输入您想要修改的产地 ID: "); scanf("%d", &targetId); int index = -1; for (int i = 0; i < count; i++) { if (farms[i].id == targetId) { index = i; break; } } if (index == -1) { printf("未找到 ID 为 %d 的记录。\n", targetId); return 0; } printf("\n已锁定产地: %s (产量: %d 吨)\n", farms[index].name, farms[index].yield); printf("1. 修改产地名称\n"); printf("2. 修改预计产量\n"); printf("3. 取消修改\n"); printf("请选择操作 (1-3): "); scanf("%d", &choice); switch (choice) { case 1: printf("请输入新的名称: "); scanf("%s", farms[index].name); break; case 2: printf("请输入新的产量 (吨): "); scanf("%d", &farms[index].yield); break; case 3: printf("操作已取消。\n"); return 0; default: printf("非法输入,操作终止。\n"); return 0; } fp = fopen("farms.txt", "w"); if (fp == NULL) { printf("回写文件失败!\n"); return 1; } for (int i = 0; i < count; i++) { fprintf(fp, "%d %s %d\n", farms[i].id, farms[i].name, farms[i].yield); } fclose(fp); printf("ID 为 %d 的记录已成功更新。\n", targetId); return 0; }

#include <stdio.h> #include <stdlib.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { FILE *fp; OrangeFarm temp; int threshold; int foundCount = 0; fp = fopen("farms.txt", "r"); if (fp == NULL) { printf("错误:无法打开数据文件 farms.txt,请确保文件存在。\n"); return 1; } printf("----------- 廉江红橙产量筛选系统 -----------\n"); printf("请输入产量阈值(吨):"); if (scanf("%d", &threshold) != 1) { printf("输入无效。\n"); fclose(fp); return 1; } printf("\n正在查询产量大于 %d 吨的产地...\n", threshold); printf("-------------------------------------------\n"); printf("%-10s %-20s %-10s\n", "ID", "产地名称", "预计产量(吨)"); printf("-------------------------------------------\n"); while (fscanf(fp, "%d %s %d", &temp.id, temp.name, &temp.yield) == 3) { if (temp.yield > threshold) { printf("%-10d %-20s %-10d\n", temp.id, temp.name, temp.yield); foundCount++; } } if (foundCount == 0) { printf("未找到产量超过 %d 吨的记录。\n", threshold); } else { printf("-------------------------------------------\n"); printf("查询完毕,共找到 %d 条记录。\n", foundCount); } fclose(fp); return 0; }

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 15:26:49

音频可视化深度解析:Sonic Visualiser专业指南与实战应用

音频可视化深度解析&#xff1a;Sonic Visualiser专业指南与实战应用 【免费下载链接】sonic-visualiser Visualisation, analysis, and annotation of music audio recordings 项目地址: https://gitcode.com/gh_mirrors/so/sonic-visualiser Sonic Visualiser作为一款…

作者头像 李华
网站建设 2026/4/15 10:41:31

赛马娘DMM版游戏优化工具完全指南

赛马娘DMM版游戏优化工具完全指南 【免费下载链接】Trainers-Legend-G 赛马娘本地化插件「Trainers Legend G」 项目地址: https://gitcode.com/gh_mirrors/tr/Trainers-Legend-G 这款专为赛马娘Pretty Derby DMM版设计的本地化工具能够显著提升中文玩家的游戏体验。通过…

作者头像 李华
网站建设 2026/4/15 10:41:32

赛马娘DMM版汉化神器:5大核心功能让你的游戏体验起飞

赛马娘DMM版汉化神器&#xff1a;5大核心功能让你的游戏体验起飞 【免费下载链接】Trainers-Legend-G 赛马娘本地化插件「Trainers Legend G」 项目地址: https://gitcode.com/gh_mirrors/tr/Trainers-Legend-G 还在为赛马娘DMM版的日文界面而头疼吗&#xff1f;&#x…

作者头像 李华
网站建设 2026/4/15 10:39:50

Campus-iMaoTai茅台自动预约系统:从零部署到高效使用完整指南

Campus-iMaoTai茅台自动预约系统&#xff1a;从零部署到高效使用完整指南 【免费下载链接】campus-imaotai i茅台app自动预约&#xff0c;每日自动预约&#xff0c;支持docker一键部署 项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai 想要轻松实现i茅…

作者头像 李华
网站建设 2026/4/15 10:41:32

5分钟掌握Magpie:让模糊窗口秒变高清的终极方案

5分钟掌握Magpie&#xff1a;让模糊窗口秒变高清的终极方案 【免费下载链接】Magpie An all-purpose window upscaler for Windows 10/11. 项目地址: https://gitcode.com/gh_mirrors/mag/Magpie 还在为老游戏在4K显示器上模糊不清而烦恼&#xff1f;Magpie窗口放大工具…

作者头像 李华
网站建设 2026/4/14 19:45:13

Monaco Editor从入门到精通:打造专业级网页代码编辑器

Monaco Editor从入门到精通&#xff1a;打造专业级网页代码编辑器 【免费下载链接】monaco-editor-docs monaco-editor 中文文档 项目地址: https://gitcode.com/gh_mirrors/mo/monaco-editor-docs 想要在网页中嵌入媲美VS Code的代码编辑器吗&#xff1f;Monaco Editor…

作者头像 李华