基于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- ...
随机推荐
- springdata+redis配置详解
springdata设计初衷是位简化数据类型和数据的持久化存储,它并不局限是关系型数据库还是nosql数据库,都提供了简化的数据库连接,让数据获取变得更加的简单.所有这些的实现有统一的api提供. 本 ...
- hadoop序列化机制与java序列化机制对比
1.采用的方法: java序列化机制采用的ObjectOutputStream 对象上调用writeObject() 方法: Hadoop 序列化机制调用对象的write() 方法,带一个DataOu ...
- block, inline和inline-block的区别
display:block元素的特点是:总是在新行上开始:高度,行高以及顶和底边距都可控制:宽度缺省是它的容器的100%,除非设定一个宽度<div>, <p>, <h1& ...
- JS使用合并数组
var arr= [4,5,6]; var arr1 = [7,8,9]; var arr2=[1,2,3]; arr.concat(arr1,arr2); //或者使用Arry.prototype. ...
- 转: seajs手册与文档之 -- 快速参考 ( ~~useful )
目录 快速参考 seajs.use seajs.config define require require.async exports module.exports 快速参考 该页面列举了 SeaJS ...
- 挺有意思的HBase日志+Splunk
如题,转载自: http://hi.baidu.com/harry_lime/item/10cf2c174853c7ea39cb3042 如何模拟拔盘操作 Linux has a nifty way ...
- python 爬一下
1.安装Requestswindow:pip install requestslinux:sudo pip install requests国内安装缓慢,建议到:http://www.lfd.uci. ...
- cocos2d-x游戏开发系列教程-超级玛丽06-CMGameScene
背景 在CMMenuScene中,当用户点击开始游戏时,导演让场景进入到CMGameScene 头文件 class CMGameScene : public cocos2d::CCLayer,publ ...
- cmake 学习笔记(六)
希望这是现阶段阻碍阅读shiboken和PySide源码的涉及cmake的最后一个障碍 ^ _^ 学习 cmake 的单元测试部分 ctest. 简单使用 最简单的使用ctest的方法,就是在 CMa ...
- 更新ADT到Android L的方法
android ADT无法更新到20? 哈哈,有办法,windows 进入host 写入例如以下所有,是的所有.然后在到sdk manager中方可更新 #Google Services STAR ...