国家三级计算机考试机试题库
计算机基础知识考试题库(三级)

计算机基础知识考试题库(三级)一、选择题1. 下列选项中,不属于计算机硬件的是:A. 中央处理器B. 显示器C. 键盘D. 操作系统2. 在计算机中,用于存储数据和程序的临时性存储器是:A. 硬盘B. 内存C. CPUD. 显示器3. 下列设备中,属于输入设备的是:A. 打印机B. 鼠标C. 显示器D. 音箱4. 在计算机中,用于控制和管理程序运行的主要部件是:A. 中央处理器B. 显卡C. 主板D. 声卡5. 在计算机中,用于进行数据存储和读写的主要设备是:A. 显卡B. 硬盘C. 内存D. CPU二、填空题1. 操作系统是计算机的___________ 。
2. 二进制数系统中只有两个数码,分别是___________ 。
3. 用于在计算机中存储和传输数据的最小单位是___________ 。
4. 在计算机中,图形、声音等多媒体数据是以___________ 的方式来表示的。
5. 计算机中用于表示控制指令的最基本单位是___________ 。
三、简答题1. 什么是计算机硬件?请至少给出三个例子。
答:计算机硬件是计算机系统的物理部分,包括中央处理器、内存、硬盘等。
其中,中央处理器负责处理计算机的各种指令,内存用于临时存储数据和程序,硬盘用于长期存储数据和程序。
2. 请简要描述计算机的工作原理。
答:计算机的工作原理是将输入的信息经过处理后,输出相应的结果。
首先,输入设备将用户的命令或数据输入到计算机中,然后中央处理器对输入的数据进行运算和处理,最后通过输出设备将结果展示给用户。
3. 什么是操作系统?它的作用是什么?答:操作系统是计算机系统中的核心软件,负责管理和控制计算机硬件资源,提供用户与计算机硬件之间的接口。
它的主要作用包括实现计算机资源的管理和分配、提供与用户交互的界面、支持程序的运行和控制、保护和安全管理系统资源等。
四、应用题1. 某计算机系统的内存容量为4GB,每个存储单元的大小为8个字节。
计算机三级上机题库

计算机三级上机题库1. 题目一题目描述编写一个程序,实现一个简单的计算器功能。
用户输入两个数字和一个操作符,程序根据操作符进行相应的计算,并输出结果。
输入格式用户依次输入两个数字和一个操作符,数字之间用空格分隔。
输出格式输出计算结果。
输入样例7 3 +输出样例10解题思路1.首先,使用input()函数获取用户输入的三个值,并用空格将其分割为列表。
2.然后,将列表中的第一个和第二个元素分别赋值给两个变量(用于存储数字)。
3.接下来,根据列表中的第三个元素(操作符)进行相应的计算,并将结果保存到一个变量中。
4.最后,使用print()函数将结果输出到控制台。
示例代码data = input().split()num1 = int(data[0])num2 = int(data[1])operator = data[2]if operator =='+':result = num1 + num2elif operator =='-':result = num1 - num2elif operator =='*':result = num1 * num2elif operator =='/':result = num1 / num2print(result)2. 题目二题目描述编写一个程序,实现一个简单的猜数字游戏。
程序随机生成一个数字,用户根据提示猜测数字,直到猜对为止。
输入格式用户通过命令行输入猜测的数字。
输出格式根据猜测结果,输出相应的提示信息。
输入样例5输出样例猜大了,请继续猜测。
解题思路1.首先,使用random模块生成一个随机数作为目标数字。
2.然后,使用while循环来进行猜测。
3.在循环中,使用input()函数获取用户输入的猜测数字,并将其转换为整数类型。
4.对猜测数字进行判断,如果与目标数字相等,则输出猜测成功的提示信息;否则,根据大小关系输出猜测结果的提示信息。
计算机三级考试题及答案

计算机三级考试题及答案题目一:多项式的运算计算多项式的和、差或积。
解答:多项式是由一个或多个常数组成的,常数和变量的乘积所得的代数式。
多项式的运算包括加法、减法和乘法。
1. 多项式的加法:- 将相同指数的项相加,并保留指数不同的项。
- 例如:(3x^3 + 2x^2 + 5x) + (2x^3 - 4x^2 + 3x) = 5x^3 - 2x^2 + 8x2. 多项式的减法:- 将相同指数的项相减,并保留指数不同的项。
- 例如:(3x^3 + 2x^2 + 5x) - (2x^3 - 4x^2 + 3x) = x^3 + 6x^2 + 2x3. 多项式的乘法:- 将每一项的系数相乘,指数相加,并合并相同指数的项。
- 例如:(3x^3 + 2x^2 + 5x) * (2x^2 - 4x + 3)= 6x^5 - 12x^4 + 9x^3 + 4x^4 - 8x^3 + 6x^2 + 10x^3 - 20x^2 + 15x = 6x^5 - 8x^4 + 11x^3 - 14x^2 + 15x题目二:数据库查询语句给定一个学生表,包含学生姓名、年龄和成绩,请编写查询语句实现以下要求:1. 查询所有学生的姓名和年龄。
解答:SELECT 姓名, 年龄 FROM 学生表;2. 查询年龄大于等于18岁且成绩在80分以上的学生的姓名和成绩。
解答:SELECT 姓名, 成绩 FROM 学生表 WHERE 年龄 >= 18AND 成绩 > 80;3. 按成绩降序排列,并取前10名学生的姓名和成绩。
解答:SELECT 姓名, 成绩 FROM 学生表 ORDER BY 成绩 DESC LIMIT 10;题目三:算法题设计一个算法,从一个整数数组中找到两个数之和为目标值的索引。
解答:可以使用哈希表来解决该问题。
1. 初始化一个空哈希表和一个空结果列表(用于存储符合条件的索引)。
2. 遍历整数数组中的每个元素。
全国计算机等级考试三级数据库技术试题及答案

全国计算机等级考试三级数据库技术试题及答案一、选择题(每题2分,共40分)1. 下列关于数据库技术的叙述中,正确的是()A. 数据库系统是由数据库、数据库管理系统和数据库管理员组成的B. 数据库管理系统是一种操作系统的组成部分C. 数据库管理系统是数据库的集合D. 数据库系统是为解决文件系统的存储问题而发展起来的答案:A2. 下列关于关系模型的叙述中,错误的是()A. 关系模型是用二维表格结构表示实体以及实体之间联系的模型B. 关系模型中的表结构可以动态改变C. 关系模型中的关系操作语言是一种过程性语言D. 关系模型不支持数据的完整性约束答案:D3. 下列关于SQL语言的叙述中,正确的是()A. SQL语言是一种面向对象的程序设计语言B. SQL语言只支持数据库的查询操作C. SQL语言支持数据库的三大操作:查询、更新和事务处理D. SQL语言不支持数据的完整性约束答案:C4. 下列关于数据库事务的叙述中,错误的是()A. 事务是数据库操作的基本单位B. 事务具有原子性、一致性、隔离性和持久性四个特性C. 事务的执行结果要么全部提交,要么全部回滚D. 事务的开始和结束可以由用户自定义答案:D5. 下列关于数据库备份的叙述中,错误的是()A. 数据库备份可以提高数据库系统的可靠性B. 数据库备份可以分为冷备份和热备份C. 冷备份是在数据库系统正常运行的情况下进行的备份D. 热备份是在数据库系统停止运行的情况下进行的备份答案:C二、填空题(每题3分,共30分)6. 数据库系统的核心是______。
答案:数据库管理系统7. 在关系模型中,实体及实体之间的联系都可以用______来表示。
答案:二维表格8. SQL语言中的数据定义功能主要包括______、______和______。
答案:创建表、修改表、删除表9. 数据库事务的四大特性分别是______、______、______和______。
答案:原子性、一致性、隔离性、持久性10. 数据库备份分为______备份和______备份。
全国计算机三级C语言上机题库(附答案)

三级机试题库(附答案)1、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsV al(),其功能是:依次从数组a中取出一个四位数,如果该四位数大于该四位数以后的连续五个数且该数是偶数(该四位数以后不满五个数,则不统计), 则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DA T文件中。
注意: 部分源程序存在文件PROG1.C文件中。
程序中已定义数组: a[200], b[200], 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
2、在文件in.dat中已存有200个正整数, 且每个数均在1000至9999之间。
函数readDat()是读取这200个数存放到数组aa中。
请编制函数jsSort(),其函数的功能是: 要求按每个数的后三位的大小进行降序排列,如果出现后三位相等的数值,则对这些数值按原始4位数据进行升序排列,将排序后的前10个数存入数组bb中。
最后调用函数writeDat()把结果bb输出到文件out.dat中。
例: 处理前90125099601270258088处理后50998088702560129012注意: 部分源程序存在文件PROG1.C文件中。
请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
3、函数ReadDat()实现从文件IN.DA T中读取一篇英文文章,存入到无符号字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,其替代值仍存入数组xx所对应的位置上,最后调用函数WriteDat()把结果xx输出到文件OUT.DAT中。
全国计算机等级考试三级笔试试卷(附试题答案)

全国计算机等级考试三级笔试试卷(附试题答案)网络技术模拟试卷网络技术模拟试卷((一)(考试时间120分钟,满分100分)一、选择题一、选择题下列各题A 、B 、C 、D 是个选项中,只有一个选项是正确的,请选出正确的选项(每题1分,共60分)1.16根地址线的寻址范围是根地址线的寻址范围是( )? ( )?A.512KB.64KC.640KD.1MB2.2.一个一个1.2MB 的软磁盘可存储的软磁盘可存储( )( )个汉字个汉字个汉字? ?A.12万B.60万C.120万D.80万3.D/A 转换器的主要指标是分辨率和转换器的主要指标是分辨率和( ) ( )A.A.误差误差误差B. B.精度精度精度C. C.量程量程量程D. D.稳定时间稳定时间稳定时间4.8086微处理器的通用寄存器有微处理器的通用寄存器有( )( )个?A.8B.16C.24D.325.5.磁带上标有磁带上标有6250/RPI 的意思是每英寸存储的意思是每英寸存储( )( )。
A.6250位B.6250字节字节C.6250字D.6250行6.6.软件的何种性能是指软件只允许被授权用户使用软件的何种性能是指软件只允许被授权用户使用(包括读、写、打印、浏览等包括读、写、打印、浏览等)? ( ))? ( )。
A.A.安全性安全性安全性B. B.保密性保密性保密性C.C.可用性可用性可用性D. D.完备性完备性完备性7.7.分时操作系统追求的目标是:分时操作系统追求的目标是:分时操作系统追求的目标是:( ) ( )A.A.高吞吐率高吞吐率高吞吐率B. B.充分利用内存充分利用内存充分利用内存C.C.快速响应快速响应快速响应D. D.减少系统开销减少系统开销减少系统开销8.CPU 状态分为目态和管态两种,什么是从目态转换到管态的唯一途径?( )A.A.运行进程修改程序状态字运行进程修改程序状态字运行进程修改程序状态字B. B.中断屏蔽中断屏蔽中断屏蔽 C.C.中断中断中断 D. D.进程调度程序进程调度程序进程调度程序 9.9.进程调度有各种各样的算法,如果算法选择不当,就会出现进程调度有各种各样的算法,如果算法选择不当,就会出现( )现象现象现象? ? A.A.颠簸颠簸颠簸((抖动抖动) B.) B.进程长期等待进程长期等待进程长期等待 C.C.列锁列锁列锁 D.Belady( D.Belady(异常异常异常) ) 10.UNIX 操作系统是采用操作系统是采用( )( )方法实现结构设计的方法实现结构设计的方法实现结构设计的? ? A.A.管程、类程、进程管程、类程、进程管程、类程、进程 B. B.模块层次结构法模块层次结构法模块层次结构法 C.C.核心扩充法核心扩充法核心扩充法 D. D.模块接口法模块接口法模块接口法 11.11.下列作业调度算法中有最短作业平均周转时间的是:下列作业调度算法中有最短作业平均周转时间的是:( )A.A.先来先服务先来先服务先来先服务B. B.短作业优先短作业优先短作业优先 C.C.最高响应比优先最高响应比优先最高响应比优先 D. D.优先数法优先数法优先数法 12.12.装有装有DOS 操作系统的微机启动后,自动执行的命令文件是:( )A.CONFIG.SYSB.AUTOEXEC.BATMAN D.SETUP.SYS13.13.下面哪一组的两个下面哪一组的两个DOS 命令的功能完全相同命令的功能完全相同?( ) ?( )P 和DISKCOMPB.COPY 和DISKCOPYC.RD 和DELD.REN 和RENAME14.14.在下列操作中,在下列操作中,在下列操作中,DOS DOS 内部命令所特有的操作是内部命令所特有的操作是( )( )。
计算机三级考试试题
计算机三级考试试题一、选择题1. 下列关于计算机网络的说法,正确的是:A. 计算机网络是指互连的计算设备之间进行数据通信的系统B. 计算机网络仅限于局域网范围内的通信C. 计算机网络只包括硬件设备,不包括软件D. 计算机网络没有安全风险2. 在计算机网络中,HTTP协议是用于:A. 传输电子邮件B. 传输超文本C. 远程登录D. 传输文件3. 下面哪个选项不属于计算机网络的分类:A. 局域网B. 广域网C. 城域网D. 云计算4. 在计算机网络中,LAN是指:A. 逻辑区域网络B. 局域网络C. 广域网络D. 无线局域网络5. 在互联网中,IP地址是用来唯一标识:A. 电子邮件地址B. 网络接口C. 网络设备D. 静态文件二、填空题1. HTTP协议是指超文本传输协议,是一种_________________2. 在计算机网络中,IP地址由_____个字节组成3. 在计算机网络中,子网掩码用于将IP地址分为______和______4. DNS的英文全称是_______________________5. 在计算机网络中,LAN是指____________________三、简答题1. 请简要解析TCP/IP协议族的分层结构,并说明各层的功能。
四、论述题1. 计算机网络对个人和社会的影响及其重要性。
在当今社会,计算机网络已经成为人们生活中不可或缺的一部分。
它在个人和社会层面带来了许多重要的影响。
首先,计算机网络可以促进信息的共享。
通过互联网,人们可以轻松地获取到世界各地的信息,无论是新闻、学术资料还是娱乐内容。
这种信息的共享促进了知识的传播和交流,使人们的生活变得更加丰富多彩。
其次,计算机网络对经济发展具有重要作用。
现代商业活动离不开网络,通过电子商务,人们可以进行在线购物、在线支付等操作。
网络提供了便捷的交易平台,促进了经济的繁荣和发展。
此外,计算机网络也改变了人们的交流方式。
通过社交网络平台,人们可以随时随地与朋友、家人保持联系,并与其他人分享自己的生活和经历。
计算机三级考试答题试题及答案
计算机三级考试答题试题及答案第五套2.如下图所示,某校园网用10Gbps的POS技术与Internet相连,POS接口的帧格式是SONET。
路由协议的选择方案是校园网内部采用OSPF动态路由协议,校园网与Internet的连接使用静态路由协议。
另外,还要求在R3上配置一个loopback接口,接口的IP地址是192.167.166.6。
请阅读以下R3和R4的部分配置信息,并补充空白处的配置命令或参数,按题目要求完成路由器的配置。
R3的POS接口、loopback接口和OSPF路由协议的配置信息Router-R3#configure terminalRouter-R3(config)#interface loopback 0Router-R3(config-if)#ip address 【6】Router-R3(config-if)#no ip route-cacheRouter-R3(config-if)#no ip mroute-cacheRouter-R3(config-if)#exitRouter-R3(config)#interface pos4/0Router-R3(config-if)#description To InternetRouter-R3(config-if)#bandwidth 10000000Router-R3(config-if)#ip address 202.68.69.37 255.255.255.252Router-R3(config-if)# 【7】 32Router-R3(config-if)#pos framing sonetRouter-R3(config-if)#no ip directed-broadcastRouter-R3(config-if)#pos flag s1s0 0Router-R3(config-if)#no shutdownRouter-R3(config-if)#exitRouter-R3(config)#router ospf 63Router-R3(config-router)#network 【8】 area 0Router-R3(config-router)#redistribute connected metric-type 1 subnets Router-R3(config-router)#area 0 range 【9】Router-R3(config-router)#exitRouter-R3(config)#R4的静态路由配置信息Router-R4#configure terminalRouter-R4(config)#ip route 【10】3.某网络中DHCP服务器地址为10.0.0.1,MAC地址为某网络中DHCP服务器地址为10.0.0.1,MAC地址为00-12-34-56-78-90,可分配IP地址范围为10.0.0.50-10.0.0.100,其中10.0.0.50保留给MAC地址是00-11-22-33-44-55的主机。
计算机等级考试题库(三级)
计算机等级考试题库(三级)一、基础知识篇1. 操作系统操作系统是计算机系统中最重要的软件之一,它负责管理和控制计算机硬件资源,并提供给用户和应用程序一个良好的工作环境。
操作系统的常见类型有Windows、Linux、macOS等。
请回答以下问题:1.1 什么是操作系统?它的主要功能是什么?1.2 请简要介绍Windows和Linux操作系统的特点。
1.3 操作系统是如何进行进程管理的?1.4 请解释虚拟内存的概念及其作用。
2. 网络基础网络是连接全球各地计算机的基础设施,它使得信息的传递和资源的共享更加便捷。
在网络基础知识中,以下问题需要你回答:2.1 HTTP和HTTPS的区别是什么?2.2 请简要介绍TCP/IP协议族的结构和功能。
2.3 请解释IP地址和子网掩码的作用。
2.4 简要说明常见的网络攻击类型,如DDoS攻击和SQL注入攻击。
3. 数据库基础数据库是存储和管理数据的系统,广泛应用于各种软件和网站中。
以下问题需要你回答:3.1 请解释关系型数据库和非关系型数据库的特点和区别。
3.2 请简要介绍SQL语言的基本操作。
3.3 数据库索引的作用是什么?如何选择合适的索引类型?3.4 请解释事务的概念及其ACID特性。
二、应用能力篇4. 办公软件办公软件是计算机应用的重要工具,它包括文字处理、表格计算、演示文稿等功能。
以下问题需要你回答:4.1 请简要介绍微软Word软件的基本操作和常用功能。
4.2 请解释Excel中的相对引用和绝对引用的区别。
4.3 PowerPoint中的幻灯片切换效果有哪些?请简述它们的应用场景。
4.4 请说明如何使用办公软件进行团队协作。
5. 网页设计网页设计是指通过HTML、CSS等技术创建网页的过程,它关注网页的布局、样式和交互效果。
以下问题需要你回答:5.1 请解释HTML和CSS的基本概念和作用。
5.2 请说明响应式网页设计的原理和优势。
5.3 请简要介绍JavaScript语言的特点和用途。
国家三级计算机c 考试试题及答案
国家三级计算机c 考试试题及答案国家三级计算机C考试试题及答案本文提供国家三级计算机C考试的试题及答案,帮助考生进行备考和提升技能水平。
一、选择题1. 下列哪个选项可以用于从文件中读取数据?a) fscanf()b) printf()c) scanf()d) switch()答案:a) fscanf()2. 在C语言中,以下哪个选项不是数据类型修饰符?a) shortb) constc) unsignedd) double答案:b) const3. 在C语言中的程序结构中,下列哪一部分可选?a) for循环b) else语句c) main函数d) if语句答案:b) else语句4. 在C语言中,以下哪个选项用于定义整数常量?a) intb) floatc) chard) enum答案:d) enum5. 在C语言中,用于连接字符串的运算符是?a) +b) *c) /d) -答案:a) +二、填空题1. C语言中,用于定义宏的关键字是_________。
答案:#define2. 下列哪个函数用于从控制台输出字符?答案:putchar()3. 在C语言中,sizeof()函数用于计算数据类型的_________。
答案:字节大小4. 下列哪个选项用于声明一个指针变量?答案:*5. 下列哪个运算符用于判断两个变量是否相等?答案:==三、编程题1. 编写一个C程序,从键盘输入两个整数,然后输出它们的和。
```c#include<stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d", sum);return 0;}```2. 编写一个C程序,计算并输出1到10之间的所有偶数的乘积。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.已知数据文件IN1.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal( ),其功能是:如果4位数各位上的数字均是奇数,则统计出满足此条件的个数cnt,并把这些4位数按从大到小的顺序存入数组b中。最后调用函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT1.DAT文件。 注意:部分源程序已给出。 程序中已定义数组:a[200],b[200],已定义变量:cnt。 请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。 试题程序: #include #define MAX 200 int a[MAX],b[MAX],cnt=0; void writeDat();
void jsVal() {
}
void readDat() { int i; FILE *fp; fp=fopen("IN1.DAT","r"); for(i=0;ifscanf(fp,"%d",&a[i]); fclose(fp); }
void main() { int i; readDat(); jsVal(); printf("满足条件的数=%d\n",cnt); for(i=0;iprintf("%d\n",b[i]); printf("\n"); writeDat(); }
void writeDat() { FILE *fp; int i; fp=fopen("out1.dat","w"); fprintf(fp,"%d\n",cnt); for(i=0;ifprintf(fp,"%d\n",b[i]); fclose(fp);
} 【答案】 void jsVal() { int i,j; /*定义循环控制变量*/ int a1,a2,a3,a4; /*定义变量保存4位数的每位数字*/ int temp; /*定义数据交换时的暂存变量*/ for(i=0;i<200;i++) /*逐个取每一个4位数*/ { a4=a[i]/1000; /*求4位数的千位数字*/ a3=a[i]%1000/100; /*求4位数的百位数字*/ a2=a[i] %100/10; /*求4位数的十位数字*/ a1=a[i] %10; /*求4位数的个位数字*/ if(a4%2!=0 && a3%2!=0 && a2%2!=0 && a1%2!=0) /*如果4位数各位上的数字均是奇数*/ { b[cnt]=a[i]; /*将满足条件的数存入数组b中*/ cnt++; /*统计满足条件的数的个数*/ } } for(i=0;ifor(j=i+1;jif(b[i]{ temp=b[i]; b[i]=b[j]; b[j]=temp; } } 2. 已知IN2.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数 jsVal(),其功能是:依次从数组a中取出一个数,如果该4位数连续大于该4位数以后的5个数且该数是奇数,则统计出满足此条件的数的个数cnt,并把这些4位数按从小到大的顺序存入数组b中,最后调用写函数 writeDat() 把结果cnt及数组b中符合条件的4位数输出到 OUT2.DAT文件中。 注意:部分源程序已给出。 程序中已定义数组:a[200],b[200],已定义变量:cnt。 请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。 试题程序: #include #define MAX 200 int a[MAX], b[MAX], cnt = 0; void writeDat();
void jsVal() {
} void readDat() { int i; FILE *fp; fp = fopen("IN2.DAT", "r"); for(i = 0; i < MAX; i++) fscanf(fp, "%d", &a[i]); fclose(fp); } void main() { int i; readDat(); jsVal(); printf("满足条件的数=%d\n", cnt); for(i=0; i < cnt; i++) printf("%d ", b[i]); printf("\n"); writeDat(); }
void writeDat() { FILE *fp; int i; fp = fopen("OUT2.DAT", "w"); fprintf(fp, "%d\n", cnt); for(i = 0; i < cnt; i++) fprintf(fp, "%d\n", b[i]); fclose(fp); } 【答案】 void jsVal() { int i,j; /*定义循环控制变量*/ int temp; /*定义数据交换时的暂存变量*/ for(i=0;i if(a[i]%2!=0) /*如果当前数是奇数*/ { for(j=i+1;j<=i+5;j++) /*取该数后面的5个数进行比较*/ if(a[i]break; /*如果当前数不满足比后面5个数都大的条件,则跳出循环*/ if(j==i+6) /*如果当前数比后面的5个数都大*/ { b[cnt]=a[i]; /*将满足条件的数存入数组b中*/ cnt++; /*并统计满足条件的数的总个数*/ } } for(i=0;ifor(j=i+1;jif(b[i]>b[j]) { temp=b[i]; b[i]=b[j]; b[j]=temp; } } 3. 已知在文件IN3.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm (字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)几部分组成。其中:金额=单价×数量。函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从小到大进行排列,若产品名称相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT3.DAT中。 注意:部分源程序已给出。 请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。 试题程序: #include #include #include #include #define MAX 100 typedef struct { char dm[5]; /*产品代码 */ char mc[11]; /* 产品名称 */ int dj; /* 单价 */ int sl; /* 数量 */ long je; /* 金额*/ } PRO; PRO sell [MAX]; void ReadDat(); void WriteDat();
void SortDat() {
} void main() { memset(sell, 0, sizeof(sell)); ReadDat(); SortDat(); WriteDat(); }
void ReadDat() { FILE *fp; char str[80], ch[11]; int i; fp = fopen("IN3.DAT", "r"); for (i = 0; i < 100; i++) { fgets(str, 80, fp); memcpy(sell[i].dm, str, 4); memcpy(sell[i].mc, str + 4, 10); memcpy(ch, str + 14, 4); ch[4] = 0; sell[i].dj = atoi(ch); memcpy(ch, str +18, 5); ch[5] = 0; sell[i].sl = atoi(ch); sell[i].je = (long)sell[i].dj * sell[i].sl; } fclose(fp); }
void WriteDat() {