基于visual Studio2013解决C语言竞赛题之0907删除记录
题目
aaarticlea/png;base64,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" alt="" />
解决代码及点评
/*
7. 删除worker2.rec中某个序号的职工记录,
再存入原文件中(用fread和fwrite函数)
*/
#include <stdio.h>
#include <stdlib.h> typedef struct Staff_9_7
{
int num;
char name[30];
char sex[5];
int age;
float salary; } Employee;
/*
读取员工信息
*/
void readStaInfo_7(Employee *tempEmp)
{
Employee temp;
FILE *fp = NULL;
fopen_s(&fp, "worker2.rec","rb");
if (fp)
{
int i = 0;
fread(&temp,sizeof(temp),1,fp);
while(!feof(fp))
{
tempEmp[i] = temp;
printf("num = %d,name = %s,sex = %s,age = %d,salary = %f\n",
tempEmp[i].num,tempEmp[i].name,tempEmp[i].sex,tempEmp[i].age,tempEmp[i].salary);
fread(&temp,sizeof(temp),1,fp);
tempEmp[i] = temp;
i++;
}
fclose(fp);
}
else
{
printf("open file failed!");
}
} /*
保存员工信息
*/
void saveEmpInfo97(Employee * emp,int n)
{
FILE *fp = NULL;
fopen_s(&fp, "worker2.rec","wb");
if (fp)
{
for (int i = 0; i < n; i++)
{
fwrite(&emp[i],sizeof(emp[i]),1,fp);
}
fclose(fp);
}
else
{
printf("open file failed!");
}
}
void main()
{
const int N = 11;
int num;
int index = 0;
Employee emp[N];
Employee newEmp[N - 1];
readStaInfo_7(emp);
printf("请输入要删除员工的编号:\n");
scanf_s("%d",&num);
for (int i = 0; i < N; i++)
{ if (num == emp[i].num)
{
continue;
}
else
{
newEmp[index++] = emp[i];
}
}
saveEmpInfo97(newEmp,N - 1);
readStaInfo_7(newEmp);
system("pause");
}
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果
代码下载
http://download.csdn.net/detail/yincheng01/6694119
解压密码:c.itcast.cn
基于visual Studio2013解决C语言竞赛题之0907删除记录的更多相关文章
- 基于visual Studio2013解决C语言竞赛题之1070删除相同节点
题目 解决代码及点评 /************************************************************************/ /* ...
- 基于visual Studio2013解决C语言竞赛题之1045打印成绩
题目 解决代码及点评 /* 功能:用记录来描述一个学生的成绩情况,内容包括:姓名.学号.数学成绩和PASCAL成绩. 要求对一个小组的10个学生的成绩进行统计处理: 1)计算学生的总 ...
- 基于visual Studio2013解决C语言竞赛题之0401阶乘
题目 解决代码及点评 这个是一道经典的教科书题目,基本上每本基础的c/c++语言教科书都会有这个题目 用来演示循环语句 #include <stdio.h> #include ...
- 基于visual Studio2013解决C语言竞赛题之0205位数求和
题目
- 基于visual Studio2013解决C语言竞赛题之0201温度转换
题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void main() { float f; float c; float ...
- 基于visual Studio2013解决C语言竞赛题之0409 100以内素数
题目 解决代码及点评 在已经知道素数是怎么判断的基础上,增加循环,可以判断出100以内的素数 /******************************************* ...
- 基于visual Studio2013解决C语言竞赛题之0408素数
题目 解决代码及点评 判断一个数是不是素数的方法,一般是看n是不是能被n以内的某个整数(1除外)整除 为了提高效率,这个整数范围一般缩小到n的平方根 如果在这个范围内的整数都不能整除,那么 ...
- 基于visual Studio2013解决C语言竞赛题之0407最大值最小值
题目 解决代码及点评 这道题考察循环和比较 /*********************************************************************** ...
- 基于visual Studio2013解决C语言竞赛题之0406数列求和
题目 解决代码及点评 这个题目,还是考察for循环的使用 以及数列规律,该数列的特点是第n个分子 = 第n-1个分子 + 第n-2个分子,分母也是此规律 而另外一个规律是第n个分子和第n- ...
随机推荐
- 【转】Ubuntu 上编译Android出现cannot find -lstdc++解决办法
[转]Ubuntu 上编译Android出现cannot find -lstdc++解决办法 在Ubuntu 12.04 x86_64机器上编译Android出现下面错误,是因为找不到32bit的li ...
- MySql 初次安装登陆
名称:随便写 服务器:127.0.0.1或者localhost 端口:在安装mysql应该看到是3306 用户:root 密码:(默认的是空,如果你设置过自己应该知道) 其他就可以不用设置
- 安装duetdisplay遇到的问题
1.报错failed to correctly acquire vcredist_x64.exe ifle:CRC error 已经确认了 和墙有关系,通过FQ可以正常安装了. 2.在PAD屏幕上面播 ...
- (转)requirejs:杏仁的优化(almond)
使用场景 什么情况下需要使用 almond 呢?假设你手头有个基于requirejs的小项目,所有业务代码加起来就几十K(压缩后可能更小).出于性能优化的考虑,你可能在想:如果能够去掉requirej ...
- Qt之OpenSSL(有pro文件的路径格式)
简述 OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法.常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用. 简述 下载安装 使用 更多参考 下载安装 ...
- StringIO模块字符串的缓存
StringIO经常被用来作为字符串的缓存,应为StringIO有个好处,他的有些接口和文件操作是一致的,也就是说用同样的代码,可以同时当成文件操作或者StringIO操作.比如: import st ...
- 如何快速方便的输出向量vector容器中不重复的内容
在vector容器中,存入的内容难免会出现重复,那么如何快速输出或提前非重复的那些数据呢,即重复的数据只输出一次,直观的方法是每次输出都要通过循环比较是否已经输出过,这种方法还是比较费时的,可以利用u ...
- [置顶] NGINX原理分析之SLAB分配机制
一.基础概述 如果使用伙伴系统分配和释放算法,不仅会造成大量的内存碎片,同时处理效率也比较低.SLAB是一种内存管理机制,其核心思想是预分配.SLAB是将空间按照SIZE对内存进行分类管理的,当申请一 ...
- 【Web】CGI与Servlet技术对比
CGI:Common Gateway Interface,通用网关接口. 1.CGI处理步骤 首先,客户端(即Web浏览器)根据某资源的URL向Web服务器提出请求:Web服务器的守护进程(HTTP ...
- tomcat解析之简单web服务器(图)
链接地址:http://gogole.iteye.com/blog/587163 之前有javaeyer推荐了一本书<how tomcat works>,今天晚上看了看,确实不错,第一眼就 ...