news 2026/4/15 5:00:46

实验四from shishenjie

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
实验四from shishenjie

#include <stdio.h> #include <stdlib.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { OrangeFarm new_farm; FILE *fp; 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; }

#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct { int id; char name[50]; int yield; } OrangeFarm; int main() { OrangeFarm farms[100]; int count = 0; int deleted; 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"); int i; for(i = 0; i < count; i++){ printf("[%d] %-12s", farms[i].id, farms[i].name); if((i + 1) % 3 == 0){ printf("\n"); // 每行输出3个后换行 } } printf("\n---------------------------\n"); printf("请输入要删除的产地ID:"); scanf("%d", &deleted); int targetIndex = -1; for(i = 0; i < count; i++){ if(farms[i].id == deleted){ targetIndex = i; break; } } if(targetIndex == -1){ printf("错误:未找到ID为%d的记录。\n", deleted); return 0; } printf("拟删除记录详情:\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(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(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", deleted); return 0; }

#include <stdio.h> #include <stdlib.h> #include <string.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++; } fclose(fp); if(count == 0){ printf("数据库为空,请先添加数据。\n"); return 0; } printf("---当前系统内的产地ID列表---\n"); int i; for(i = 0; i < count; i++){ printf("[%d] %-12s", farms[i].id, farms[i].name); // %-12s 保证名称左对齐 if((i + 1) % 3 == 0){ printf("\n"); // 每行输出3个后换行 } } printf("\n---------------------------\n"); printf("请输入您想要修改的产地ID:"); scanf("%d", &targetId); int index = -1; for(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已锁定产地ID:%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("%d", 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(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() { OrangeFarm temp; int foundCount = 0; int threshold;//阈值 FILE *fp; 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 %-20d %-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/10 7:31:21

HiDream-E1.1:7项指标霸榜的AI图像编辑神器

导语&#xff1a;AI图像编辑领域再迎新突破——HiDream-E1.1模型凭借在EmuEdit和ReasonEdit两大权威 benchmark 中创下的7项指标第一成绩&#xff0c;重新定义了智能图像编辑的技术标准。 【免费下载链接】HiDream-E1-1 项目地址: https://ai.gitcode.com/hf_mirrors/HiDrea…

作者头像 李华
网站建设 2026/4/4 3:37:26

OBS实时字幕插件终极配置:让你的直播无障碍沟通

OBS实时字幕插件终极配置&#xff1a;让你的直播无障碍沟通 【免费下载链接】OBS-captions-plugin Closed Captioning OBS plugin using Google Speech Recognition 项目地址: https://gitcode.com/gh_mirrors/ob/OBS-captions-plugin 还在为直播时观众听不清声音而烦恼…

作者头像 李华
网站建设 2026/4/14 5:50:31

BetterNCM Installer使用指南:网易云音乐插件管理终极教程

BetterNCM Installer使用指南&#xff1a;网易云音乐插件管理终极教程 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer BetterNCM Installer是一款专为网易云音乐PC客户端设计的插件管理…

作者头像 李华
网站建设 2026/4/11 7:37:05

小白指南:lcd1602液晶显示屏程序常见问题与解决方法

从点不亮到显示“Hello World”&#xff1a;LCD1602实战避坑全记录你有没有遇到过这种情况——电路接得整整齐齐&#xff0c;代码烧录成功&#xff0c;单片机也跑起来了&#xff0c;可LCD1602就是黑着脸不给你一点反应&#xff1f;或者更诡异的是&#xff0c;第一行全是方块□□…

作者头像 李华
网站建设 2026/4/12 18:17:49

D3KeyHelper暗黑3宏工具终极配置与实战教程

D3KeyHelper是一款专为暗黑破坏神3设计的图形化宏辅助工具&#xff0c;通过智能按键序列和状态检测技术&#xff0c;帮助玩家实现复杂Build的自动化操作&#xff0c;大幅提升游戏效率与操作精准度。 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定…

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

5分钟搞定Figma中文界面:设计师必备的本地化神器

5分钟搞定Figma中文界面&#xff1a;设计师必备的本地化神器 【免费下载链接】figmaCN 中文 Figma 插件&#xff0c;设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN 还在为Figma的全英文界面而头疼吗&#xff1f;作为国内设计师&#xff0c;面…

作者头像 李华