当前位置: 首页 > news >正文

实验7

实验任务4

源代码

#include <stdio.h>
#include <ctype.h>int main(){
FILE *fp;
char ch;
int lines=0;
int chars=0;fp=fopen("data4.txt","r");
if(fp==NULL){printf("文件打开失败!\n");return 1;
}while((ch=fgetc(fp))!=EOF){if(ch=='\n'){lines++;}else if(!isspace(ch)){chars++;}
}if(chars>0&&lines==0){lines=1;
}else if(ch!='\n'){lines++;
}fclose(fp);printf("data4.txt统计结果:\n");
printf("行数:\t\t%d\n",lines);
printf("字符数(不计空白符):\t%d\n",chars);return 0;
}

运行结果

bky7.4

实验任务5

源代码

#include <stdio.h>
#include <string.h>#define N 10typedef struct {
long id;
char name[20];
float objective;
float subjective;
float sum;
char result[10];
}STU;void read(STU st[],int n);
void write(STU st[],int n);
void output(STU st[],int n);
int process(STU st[],int n,STU st_pass[]);int main(){
STU stu[N],stu_pass[N];
int cnt;
double pass_rate;printf("从文件读入%d个考生信息...\n",N);
read(stu,N);printf("\n对考生成绩进行统计...\n");
cnt=process(stu,N,stu_pass);printf("\n通过考试的名单:\n");
output(stu,N);
write(stu_pass,cnt);pass_rate=1.0*cnt/N;
printf("\n本次等级考试通过率: %.2f%%\n",pass_rate*100);return 0;
}void output(STU st[],int n){
int i;
printf("%-12s%-10s%-15s%-15s%-10s%-8s\n","准考证号","姓名","客观题得分","操作题得分","总分","结果");
for(i=0;i<n;i++){printf("%-12ld%-10s%-15.2f%-15.2f%-10.2f%-8s\n",st[i].id,st[i].name,st[i].objective,st[i].subjective,st[i].sum,st[i].result);
}
}void read(STU st[],int n){
int i;
FILE *fin;
fin=fopen("examinee.txt","r");
if(!fin){printf("fail to open file\n");return;
}
for(i=0;i<n;i++){fscanf(fin,"%ld %s %f %f",&st[i].id,st[i].name,&st[i].objective,&st[i].subjective);
}
fclose(fin);
}void write(STU s[],int n){
int i;
FILE *fout;
fout=fopen("list_pass.txt","w");
if(!fout){printf("fail to open file\n");return;
}
fprintf(fout,"%-12s%-10s%-15s%-15s%-10s%-8s\n","准考证号","姓名","客观题得分","操作题得分","总分","结果");
for(i=0;i<n;i++){fprintf(fout,"%-12ld%-10s%-15.2f%-15.2f%-10.2f%-8s\n",s[i].id,s[i].name,s[i].objective,s[i].subjective,s[i].sum,s[i].result);
}
fclose(fout);
}int process(STU st[],int n,STU st_pass[]){
int i,j=0;
for(i=0;i<n;i++){st[i].sum=st[i].objective+st[i].subjective; if(st[i].sum>=60){strcpy(st[i].result,"通过");st_pass[j]=st[i];j++;}else{strcpy(st[i].result,"不通过");}
}
return j;
}

运行结果

bky7.5

bky7.5

实验任务6

源代码

#define STUDENT_NUM 80  
#define LINE_LEN 100    int main(){char students[STUDENT_NUM][LINE_LEN];int flag[STUDENT_NUM]={0};int lucky[5];char filename[50];FILE *fp_read,*fp_write;int i,count=0,rand_idx;fp_read=fopen("D:\\fhe07\\Documents\\list.txt","r");if(fp_read==NULL){printf("list.txt文件打开失败!\n");return 1;}for(i=0;i<STUDENT_NUM&&fgets(students[i],LINE_LEN,fp_read)!=NULL;i++);fclose(fp_read);srand((unsigned int)time(NULL));while(count<5){rand_idx=rand()%STUDENT_NUM;if(flag[rand_idx]==0){lucky[count++]=rand_idx;flag[rand_idx]=1;}}printf("----------中奖名单----------\n");for(i=0;i<5;i++){printf("%s",students[lucky[i]]);}printf("----------保存到文件----------\n");printf("输入文件名:");scanf("%s",filename);fp_write=fopen(filename,"w");if(fp_write==NULL){printf("文件创建失败!\n");return 1;}for(i=0;i<5;i++){fputs(students[lucky[i]],fp_write);}fclose(fp_write);printf("保存成功!\n");return 0;
}

运行结果

bky7.6

bky7.6

http://www.jsqmd.com/news/135246/

相关文章:

  • 【计算机毕业设计案例】基于SpringBoot+Vue的中华传统文化平台设计与实现基于springboot+vue的传统文化交流交易平台(程序+文档+讲解+定制)
  • 别做“调包侠”!手把手教你用“沁言学术+DeepSeek”搭建满分论文SOP
  • 【教程4>第10章>第9节】基于FPGA的图像双边滤波开发——理论分析与matlab仿真
  • 基于python的飞机场免税店网上商城航司互售系统的设计与实现_t7i6n--论文
  • 【课程设计/毕业设计】基于springboot的滑雪售票系统设计与实现滑雪场日常售票、客流管控、订单管理【附源码、数据库、万字文档】
  • 【毕业设计】基于springboot+vue的传统文化交流交易平台(源码+文档+远程调试,全bao定制等)
  • ICML/CVPR/AAAI/ICLR 2025大模型顶会论文合集,小白也能轻松学懂的大模型资源
  • 状态和水印
  • 【计算机毕业设计案例】基于springboot+vue的企业项目合同信息系统基于springboot的合同信息管理系统(程序+文档+讲解+定制)
  • Springboot小区物业管理系统ia0at(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 【开题答辩全过程】以 基于springboot的社区团购小程序设计与实现为例,包含答辩的问题和答案
  • 别再苦熬数月写论文了!8个免费AI神器20分钟搞定,文理医工全覆盖
  • 正弦曲线的形成过程 | JsxGraph 代码
  • AI大模型入门到进阶:9步掌握AI应用开发核心技术,零基础也能学会!
  • 【商志考研英语】【2001】【part4】
  • 基于python的高校就业管理系统的设计和实现--论文pycharm django vue flask
  • 【毕业设计】基于springboot的合同信息管理系统(源码+文档+远程调试,全bao定制等)
  • c++字符串
  • 一个现代化的资产安全管理平台,致力于实现资产探测自动化与风险可视化
  • AI Agent记忆工程完全指南:从上下文到智能协作
  • 基于PowerWorld的风电场仿真与计算
  • B站视频下载终极指南:BilibiliDown完整使用教程
  • AI大模型应用开发入门:算法不再是唯一门槛,两种方向任你选
  • MCP+Agent+RAG:打造能说会做的下一代智能系统架构
  • 基于双层优化的电动汽车优化调度MATLAB代码探秘
  • Java计算机毕设之基于springboot的合同信息管理系统基于Springboot框架的企业合同管理系统设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • 【程序员必藏】AI大模型与Agent智能体开发实战:3天掌握高薪技术,重塑核心竞争力
  • 2025 最新!10个AI论文平台测评:继续教育写论文痛点全解析
  • 大模型开发全流程:8个关键步骤带你从入门到实践
  • vid coding - spec kit 工具链