尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

C语言-文件操作-10

C语言-文件操作-10
📅 发布时间:2026/8/1 21:27:13

题目:

编写一个程序,可以用使用命令行参数或提示用户输入文件名。

a.该程序以这样的顺序打印:打印第一个文件的第一行,第二个文件的第一行,第一个文件的第二行,第二个文件,以此类推,打印到行数较多文件的最后一行。

b.修改该程序,把行号相同的行打印成一行

源代码:

#include <stdio.h> #include <stdlib.h> #include <string.h> #define LINE_SIZE 256 int main(int argc,char * argv[]){ char *line_one = (char *)malloc(LINE_SIZE * sizeof(char)); char *line_two = (char *)malloc(LINE_SIZE * sizeof(char)); int first_end = 1; FILE * fp1,*fp2; if((fp1 = fopen(argv[1],"r")) == NULL){ fprintf(stderr,"Open %s failed\n",argv[1]); exit(EXIT_FAILURE); } if((fp2 = fopen(argv[2],"r")) == NULL){ fprintf(stderr,"Open %s failed\n",argv[2]); exit(EXIT_FAILURE); } printf("Print the line one bye one.\n"); int i = 1; while(fgets(line_one,LINE_SIZE,fp1) != NULL){ if(fgets(line_two,LINE_SIZE,fp2) != NULL){ printf("File 1 LINE NO.%d: %s\n",i,line_one); printf("File 2 LINE NO.%d: %s\n",i,line_two); i++; } else{ printf("File 1 LINE NO.%d : %s\n",i,line_one); i++; } } while(fgets(line_two,LINE_SIZE,fp2) != NULL) printf("File 2 LINE NO.%d : %s\n",i++,line_two); i=1; rewind(fp1); rewind(fp2); printf("Print the combine line.\n"); rewind(fp1); rewind(fp2); i = 1; while(fgets(line_one,LINE_SIZE,fp1) != NULL){ if(fgets(line_two,LINE_SIZE,fp2) != NULL){ printf("LINE NO.%d :\n",i); while(*line_one != '\n') putchar(*line_one++); putchar('+'); printf(" %s\n",line_two); i++; } else{ printf("LINE NO.%d : %s\n",i,line_one); i++; } } while(fgets(line_two,LINE_SIZE,fp2) != NULL) printf("LINE NO.%d : %s\n",i++,line_two); fclose(fp1); fclose(fp2); printf("打印结束\n"); return 0; }

演示效果:


如果朋友你感觉文章的内容对你有帮助,可以点赞,关注文章和专栏以及关注我哈,嘿嘿嘿我会定期更新文章的,谢谢朋友你的支持哈

相关新闻

  • 练词汇必看!最新老师推荐的单词学习APP
  • 从浅到深:Jamm中MemoryMeter的shallowSize与measureDeep方法全解析
  • 魔兽争霸3终极优化指南:免费工具让你的经典游戏焕发新生

最新新闻

  • AI越来越聪明,造它的人却越来越害怕
  • 解锁企业数据采集能力:gh_mirrors/co/company-crawler核心功能详解
  • Lance湖仓格式:如何用2行代码实现100倍性能提升的AI数据管理方案
  • ClawSec部署最佳实践:生产环境中的安全强化与性能优化
  • 施工现场重型机械工程车检测数据集5296张VOC+YOLO格式
  • 2026年重庆节能极窄门窗定制公司推荐指南:别墅、大平层、自建房高端极简门窗服务商优选 - 海棠依旧大

日新闻

  • ClickHouse版本管理深度实战:4步构建零风险升级与回滚体系
  • Java 23 种设计模式:从踩坑到精通 | 番外:责任链模式 —— 物流审批流程实战
  • 华硕笔记本性能解放指南:G-Helper轻量级控制工具全面解析

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • ClickHouse版本管理深度实战:4步构建零风险升级与回滚体系
  • Java 23 种设计模式:从踩坑到精通 | 番外:责任链模式 —— 物流审批流程实战
  • 华硕笔记本性能解放指南:G-Helper轻量级控制工具全面解析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号