建立一个职工基本情况,基本情况包括职工号,姓名性别打分的算法是,性别,年龄等内容

以下试题来自:
填空题人员基本信息一般包括:身份证号、姓名、性别、年龄等,其中可以作为主关键字的是______。 身份证号
为您推荐的考试题库
你可能感兴趣的试题
1.填空题 N2.填空题 需求分析3.填空题 多对多4.填空题 逻辑判断5A.6B.12C.18D.21
热门相关试卷
最新相关试卷data-structure 设有一个职工文件,每 记录包含 编号姓名部门号工资数信息:
int num // OA OA系统 238万源代码下载-
&文件名称: data-structure
& & & & &&]
&&所属分类:
&&开发工具: Visual C++
&&文件大小: 2775 KB
&&上传时间:
&&下载次数: 1
&&提 供 者:
&详细说明:设有一个职工文件,每个职工记录包含职工编号姓名部门号工资数信息:
int num //职工号
char name[15] //姓名
int depno //部门
float salary //工资
设计一个程序完成如下功能。
(1)从文件中读出职工记录,并建立一个带头结点的单链表。
(2)输入一个职工记录。
(3)显示所有职工记录。
(4)按照编号对所有职工记录进行递增排序。
(5)按照编号对所有职工记录进行递增排序。
(6)按照编号对所有职工记录进行递增排序。
(7)删除职工文件的全部记录。
(8)将单链表的所有职工记录储存到职工文件中。
-There is a trade union documents, each employee record contains the name of the department number wage worker ID number information: int num
//Staff No. char name [15]
//name int depno
//department float salary
//wages to design a Program the following functions. (1) read from a file the records of workers and establish a lead single list node. (2) Enter a worker record. (3) Display all employees records. (4) The number of all employees in accordance with the records in ascending order. (5) Number of all employees in accordance with the records in ascending order. (6) Number of all employees in accordance with the records in ascending order. (7) Delete all records workers file. (8) will be a single list of all employees recorded file is saved to workers.
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&第一次实验 - 副本\dashen.c&&.................\dashen.dsp&&.................\dashen.dsw&&.................\dashen.ncb&&.................\dashen.opt&&.................\dashen.plg&&.................\Debug\1.exe&&.................\.....\1.ilk&&.................\.....\1.obj&&.................\.....\1.pch&&.................\.....\1.pdb&&.................\.....\2.obj&&.................\.....\2.pch&&.................\.....\2.pdb&&.................\.....\3.exe&&.................\.....\3.ilk&&.................\.....\3.obj&&.................\.....\3.opt&&.................\.....\3.pch&&.................\.....\3.pdb&&.................\.....\4.exe&&.................\.....\4.ilk&&.................\.....\4.obj&&.................\.....\4.pch&&.................\.....\4.pdb&&.................\.....\dashen.exe&&.................\.....\dashen.ilk&&.................\.....\dashen.obj&&.................\.....\dashen.pch&&.................\.....\dashen.pdb&&.................\.....\freadfunction.exe&&.................\.....\freadfunction.ilk&&.................\.....\freadfunction.obj&&.................\.....\freadfunction.pch&&.................\.....\freadfunction.pdb&&.................\.....\vc60.idb&&.................\.....\vc60.pdb&&.................\.....\zhangyonghui.exe&&.................\.....\zhangyonghui.ilk&&.................\.....\zhangyonghui.obj&&.................\.....\zhangyonghui.pch&&.................\.....\zhangyonghui.pdb&&.................\Debug&&.................\~$信息管理系统[1].doc&&第一次实验 - 副本
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - dsoframer非常实用的OA开发软件,可以直接打开文档...有n个学生,每个学生的信息包括学号,性别,姓名,四门课成绩实验报告(共9篇)
您现在的位置:&&
有n个学生,每个学生的信息包括学号,性别,姓名,四门课成绩实验报告(共9篇)
相关热词搜索:
篇一:实验报告
内蒙古工业大学信息工程学院
实 验 报 告
课程名称:高级语言程序设计(C) 实验名称:循环、数组、函数和结构体程序设计 实验类型: 验证性□设计性□ 实验室名称:
校计算机中心机房班级:
工业1*-1 学号: 姓名:组别: 同组人: 成绩: 实验日期: 201*.11.21/201*.11.28
实验报告撰写要求
一、 实验前用预习报告纸撰写预习报告,预习报告包括以下内容 1. 实验目的 2. 实验用仪器设备、器材或软件环境 3. 实验原理、方案设计、程序框图、预编程序等 4. 实验过程中需要记录的实验数据表格 二、 实验过程中,要认真观察,仔细记录 三、 完成实验后用实验报告纸撰写实验报告,包括以下内容 1. 仪器设备型号及编号 2. 实验器材或软件环境 3. 实验步骤、程序调试方法 4. 实验数据处理及结果分析 5. 实验中存在的问题 6. 体会及思考题 四、 报告撰写时,要求格式规范、书写整齐 预习报告成绩:指导教师审核(签名):
年 月 日 预习报告 一、 实验题目: 有10个学生,每个学生的数据包括学号、姓名,4门课的成绩、总成绩和平均成绩.从键盘输入10个学生的数据(包括学号、姓名以及4门课的成绩),要求打印出每位学生的学号、姓名、四门课的成绩、总成绩和平均成绩,最后再打印出最高分的学生的数据(包括学号,姓名,4门课的成绩、总成绩和平均成绩)以及4门课的总平均成绩.具体要求: 1.根据学生信息定义一个结构体类型,再说明一个该结构体类型的数组。 2.用input函数从键盘上输入10个学生的数据。 3.用average 函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩。 4.用maximum 函数找出最高分的学生的数据; 5.在主函数中输出每位学生的学号、姓名、4门课的成绩、总成绩和平均成绩,最后再输出最高分学生的数据和总平均成绩。
输出形式如下: NO.name score1 score2 score3score4
total average 1wang
li0 90.00..... The highest score: 5 zhang 892.00 The total
average=85.00
二、 程序流程图(大小控制在一页当中):
三、 预编程序:(这个是最开始的程序,允许有错误) #include&stdio.h& #define N 10 struct stu { char name[10]; int score[4];
}; struct stu students[N] struct stu *sp=
input() { printf(&input number name score1 score2 score3 score4:\n&); sp= for(i=0;i&=N;i++,sp++) {scanf(&%d&,&sp-&number); scanf(&%s&,sp-&name)
scanf(&%d%d%d%d&,&sp-&score[0],&sp-&score[1],&sp-&score[2],&sp-&sc篇二:实验7
实验报告 云南大学软件学院 实
告 课程: 数据库原理与实用技术实验
任课教师: 包崇明,朱艳萍 姓名:
李子厚 学号: 专业:
软件工程 成绩: 实验7 创建和操作数据库对象 实验7-1 存储过程 1、使用不带参数的存储过程 (1)创建一个存储过程my_proc,查询“学生表”中所有计算机系女生的学号、姓名、性别、年龄和所在院系create proc my_proc as select 学号,姓名,性别,年龄,所在院系 from 学生表 where 所在院系 ='计算机' and 性别='女'(2)执行存储过程exec my_proc
2、带输入参数的存储过程 (1)创建一个存储过程my_procsex,使其能够查询“学生表”中男学生或女学生(输入参数从这考虑)的学号、姓名、性别、年龄和所在院系 create proc my_procsex @sex char(2) as
select 学号,姓名,性别,年龄,所在院系 from 学生表 where 性别=@sex
(2)执行存储过程 exec my_procsex @sex='女'
3、带输入/输出参数的存储过程 (1)创建一个存储过程my_procage,使其能够根据学生姓名(输入),查询学生年龄(输出)。(考虑当学生不存在时给出提示信息) create proc my_procage @name char(10),@age int OUTPUT as if not exists(select * from 学生表 where 姓名=@name)return-155 select 年龄 from 学生表 where 姓名=@name
(2)执行存储过程 declare @once_age int, @status int exec @status=my_procage @name=' 李子厚', @age=@once_age output if @status=-155
print'对不起,您输入的 名字查找失败!' is:'+convert(varchar(10),@once_age)
print'the output data
declare @once_age int, @status int exec @status=my_procage @name=' 李涛', @age=@once_age output if @status=-155
print'对不起,您输入的名 字查找失败!' is:'+convert(varchar(10),@once_age) print'the output data
4、返回状态值的存储过程 (1)创建一个存储过程my_procstatus,使其能够根据学生姓名,查询学生的选课信息。(如果没有输入学生姓名,返回状态码55;如果输入的学生姓名不存在,则返回状态码-155) create proc my_procstatus @name char(10) as if @name ='' return 55
else if not exists ( select * from 学生表 where 姓名 = @name) return 155select 学号,课程号 from 成绩表 where 学号 in ( select 学号 from 学生表 where 姓名 = @name)(2)执行存储过程:接收存储过程返回的状态码,如果返回的状态码为55则输出提示信息“没有输入名字!!”;如果返回的状态码为-155,则输出“没找到!!”。 declare @status int exec @status=my_procstatus @name='' if @status=55
print'没有输入名字!' else if @status=-155 print'没有找到! ' declare @status int exec @status=my_procstatus @name='李子厚' if @status=55
print'没有输入名字!' else if @status=155 print'没有找到! ' (3)删除存储过程 drop proc my_procstatus
视图的创建与使用 1.创建一个名为stud_view1的视图,从“学生管理数据库”的学生表中查询出性别为男的 所有学生的学号,姓名,性别,班级,家庭住址,入学时间和出生年月。 create view stud_view1 as select 学号,姓名,性别,班级,入学日期 from 学 生表 where 性别='男'
2.创建一个名为stud_view2的视图,查询出选修了《高等数学》的所有同学的选课信息,包括学号,姓名,成绩。 create view stud_view2 as select 学生表.学号,学生表.姓名,成绩表.成绩 from 成绩表 join 学生表 on 成绩表.学号=学生表.学号
where 课程号 in (select 课程号 from 课程表 where 课程名='高等数学')3.从视图stud_view1中查询出软件2班肖一竹的资料。
select * from stud_view1 where 姓名='肖一竹'4.向视图stud_view2中插入一行数据:学号为9940210,姓名为钱丽,成绩为71,结果是什么? insert into stud_view2 values(';,'钱丽',71)
5.更新视图stud_view1,将9940201号同学的性别更改为女。然后再次查询学生表和视图stud_view1,看结果有何改变,为什么? update stud_view1 set 性别='女'where 学号=';
select * from stud_view1
该视图可进行更新,因为这个视图只涉及学生表一个基本表 结果没有改变是因为视图中没有学号为9940201的学生。 6. 第七章如下习题: [7.5]b:create view agentview as select * from AGENTS
where percen&=10 and percen&=0 with check option
select * from agentview[7.15]a:
create view returns(ordno,month,aid,cid,pid,qty,dollars,discnt,percen,price)
as select ordno,o.month,o.cid,o.aid,o.pid,qty,dollars,discnt,percen,price from ORDERS o,CUSTOMERS c,AGENTS a,PRODUCTS p where o.cid=c.cid and o.aid=a.aid and o.pid=p.pid
[7.15]dcreate view profits asselect ordno,cid,aid,pid,0.4*qty*price-(percen/100)*(discnt/100)*0.4*qty*price as profits from returns :篇三:实验报告
实验报告书
课程名称:
《数据库原理及应用》 实验题目:实验四 班 级: 学 号: 姓 名:指导教师: 一、实验目的 (1)掌握使用Transact-SQL的SELECT语句进行基本查询的方法。 (2)掌握使用SELECT语句进行条件查询的方法。 (3)掌握SELECT语句的GROUP BY、ORDER BY以及UNION子句的作用和使用方法。 (4)掌握嵌套查询的方法。 (5)掌握连接查询的操作方法。 二、实验内容及步骤 1.启动 SQL Server 管理平台,在对象资源管理器中展开studentsdb数据库文件夹。 2.在studentsdb数据库中使用SELECT语句进行基本查询。 (1)在student_info表中,查询每个学生的学号、姓名、出生日期信息。 (2)查询学号为0002 的学生的姓名和家庭住址。 (3)找出所有男同学的学号和姓名。 3.使用SELECT语句进行条件查询 (1)在grade表中查找分数在80~90范围内的学生的学号和分数。 (2)在grade表中查询课程编号为0003的学生的平均分。 (3)在grade表中查询学习各门课程的人数。 (4)将学生按出生日期由大到小排序。 (5)查询所有姓“张”的学生的学号和姓名。 4.对student_info表,按性别顺序列出学生的学号、姓名、性别、出生日期及家庭住址,性别相同的按学号由小到大排序。 5.使用GROUP BY查询子句列出各个学生的平均成绩。 6.使用UNION运算符将student_info表中姓“张”的学生的学号、姓名与curriculum表的课程编号、课程名称返回在一个表中,且列名为u_编号、u_名称,如图8所示。 图 联合查询结果集 7.嵌套查询 (1)在student_info表中查找与“刘卫平”性别相同的所有学生的姓名、出生日期。 (2)使用IN子查询查找所修课程编号为的学生学号、姓名、性别。 (3)列出学号为0001的学生的分数比0002号的学生的最低分数高的课程编号和分数。 (4)列出学号为0001的学生的分数比学号为0002的学生的最高成绩还要高的课程编号和分数。 8.连接查询(1)查询分数在80~90范围内的学生的学号、姓名、分数。 (2)查询学习“C语言程序设计”课程的学生的学号、姓名、分数。 (3)查询所有男同学的选课情况,要求列出学号、姓名、课程名称、分数。 (4)查询每个学生的所选课程的最高成绩,要求列出学号、姓名、课程编号、分数。 (5)查询所有学生的总成绩,要求列出学号、姓名、总成绩,没有选修课程的学生的总成绩为空。 提示:使用左外连接。 (6)为grade表添加数据行: 学号0004、课程编号为0006、分数为76。查询所有课程的选修情况,要求列出课程编号、课程名称、选修人数,curriculum表中没有的课程列值为空。 提示: 使用右外连接。
三、实验结果 1.启动 SQL Server 管理平台,在对象资源管理器中展开studentsdb数据库文件夹 2.在studentsdb数据库中使用SELECT语句进行基本查询。 (1)在student_info表中,查询每个学生的学号、姓名、出生日期信息。(2)查询学号为0002 的学生的姓名和家庭住址。 (3)找出所有男同学的学号和姓名。 3.使用SELECT语句进行条件查询 (1)在grade表中查找分数在80~90范围内的学生的学号和分数。 (2)在grade表中查询课程编号为0003的学生的平均分。(3)在grade表中查询学习各门课程的人数。 (4)将学生按出生日期由大到小排序。 (5)查询所有姓“张”的学生的学号和姓名。篇四:数据库实验答案 实验3 使用T-SQL语言完成单表查询 一、 实验目的 掌握使用T-SQL语言完成单表查询 掌握常用谓词的用法 掌握where子句的用法 掌握order by 子句的用法 掌握group by 子句和having短语的用法 二、 实验环境 Microsoft SQL Server 2000。 三、 实验内容和要求 1. 查询全体学生的详细信息。 2. 查询所有课程的详细信息。 3. 查询所有选课记录的详细信息,要结果表中的列名以中文的形式显示,分别为:学号,课程号, 成绩。 4. 查询已被学生选修了的课程的编号。 5. 查询系别编号为“d002”的学生的姓名和性别。 6. 查询年龄在19至21岁或者性别为“女”的学生的学号和所在系别编号。 7. 查询系别编号为d001、d002和d003的学生的学号和姓名。 8. 查询课程名为“C_”开头的课程名和学分。 9. 某些学生入学后还没有确定所在的系,查询还没有确定系的学生的姓名。 10. 查询成绩大于60分的学生的学号、课程号和成绩,并将查询结果按课程编号升序排列,同一课 程的成绩按分数降序排列。 11. 查询学校所开设的总的课程数。 12. 计算2号课的学生成绩总和以及平均成绩,对应的列名分别为“总成绩”和“平均成绩”。 13. 查询选修了3号课程的学生的最高分和最低分,对应的列名分别为“最高分”和“最低分”。 14. 求各个系别的编号以及各系的人数。 15. 查询选课人数大于等于2人的课程编号以及选课的人数。 16. 查询学生选修课程的总成绩对应的列名为“总成绩”,并显示出学号。 17. 查询有2门以上课程是80分以上的学生的学号及课程数。 18. 查询选修了1号课的学生的学号和成绩,结果按成绩降序、学号升序排列。 实验1 使用T-SQL语言建库、建表 实验2 向表中增、删、改数据 四、 实验目的 掌握使用T-SQL建库、建表、修改表; 掌握使用T-SQL对表中数据进行插入、删除和修改。 五、 实验环境 Microsoft SQL Server 2000。 六、 实验内容和要求 19. 建立数据库STDB 20. 在数据库STDB中建立四个表: Student表 Course表Sc表21. 分别向以上四个表中增加数据。 department表:
Student表:
Course表:
SC表:22. 将学生的年龄改为21岁。 23. 将所有学生的所有成绩增加5分。 24. 删除7号课程的记录。 25. 向学生表增加新列“血型”,并记录下学生表中已存在学生的血型信息。 实验4 使用T-SQL语言完成多表查询 七、 实验目的 掌握使用T-SQL语言完成等值连接查询 掌握使用T-SQL语言完成自身连接查询 掌握使用T-SQL语言完成外连接查询 掌握使用T-SQL语言完成嵌套查询 掌握使用T-SQL语言完成集合查询 掌握常用谓词在嵌套查询中的用法 八、 实验环境 Microsoft SQL Server 2000。 九、 实验内容和要求 26. 查询每个学生的学号、姓名、性别、所在系的名称、选修的课程名、学分以及成绩。 27. 查询所有课程的课程编号、课程名称、学分、选修该课程的学生编号以及成绩。 28. 查询选修了1号课程且不及格的学生的学号、姓名。(要求分别用连接查询和嵌套查询完成) 29. 查询姓名为“刘晨”的学生选修的课程名和学分。(要求分别用连接查询和嵌套查询完成) 30. 查询CS系、IS系和MA系的学生的学号、姓名和性别。 31. 查询号同学选修课程的总学分数,显示出姓名和总学分数。 32. 找出每个学生小于他选修课程平均成绩的学号和课程号。 33. 查询号同学所选修的课程中,成绩低于其他同学选修的某一课程成绩的课程,要求显 示出其课程号和成绩。 34. 查询号同学所选修的课程中,成绩低于其他有成绩的同学选修的所有课程成绩的课程, 要求显示出其课程号和成绩。 35. 查询号同学选修课程的课程号和课程名。(要求分别使用包含EXISTS谓词的嵌套查 询以及连接查询完成) 36. 查询既选修了课程1又选修了课程2的学生的学号。(要求使用嵌套查询完成) 37. 查询选修了课程1或者选修了课程2的学生的学号。(要求分别用集合查询和多重条件查询完成) --实验1、2 create database stdb1 go use stdb1go
create table department ( deptno char(10) primary key,
dname varchar(50) )
go create unique index deptname on department(dname) go
create table student ( sno char(9) primary key,
sname varchar(20) not null,
ssex char(2),
deptno char(10), foreign key (deptno) references department(deptno)) create table course ( cno char(4) primary key,
cname varchar(40) unique,
cpno char(4),
ccredit smallint )
create table sc ( sno char(9),
cno char(4), grade int, primary key(sno,cno), foreign key (sno) references student(sno),
foreign key (cno) references course(cno) )
--3insert into department values('d001','cs') insert into department values('d002','is') insert into department values('d003','ma') insert into student values('','李勇','男',20,'d001') insert into student values('','刘晨','女',20,'d001') insert into student values('','王敏','女',20,'d002') insert into student values('','张立','男',20,'d003') insert into student values('','陈天华','男',20,'d003') insert into student values('','宋阳','女',20,'d002') insert into course values('1','数据库','5',4) insert into course values('2','数学',null,2) insert into course values('3','信息系统','1',4) insert into course values('4','操作系统','6',3) insert into course values('5','数据结构','7',4) insert into course values('6','数据处理',null,2) insert into course values('7','PASCAL语言','6',4) insert into course values('8','C_语言',null,4) insert into sc values('','1',92) insert into sc (转 载 于: 写论文网:[标签:biaoti])values('','2',85) insert into sc values('','3',88) insert into sc values('','4',72) insert into sc values('','5',65) insert into sc values('','6',58) insert into sc values('','8',68) insert into sc values('','9',68) insert into sc values('','2',90) insert into sc values('','3',80) insert into sc values('','1',null) --4 update student set sage=21 where sno='' --5 update sc set grade=grade+5 --6 delete from course where cno='7' --7 alter table student add bloodtype varchar(10) update student set bloodtype='A' where sno='' update student set bloodtype='B' where sno='' update student set bloodtype='O' where sno='' update student set bloodtype='AB' where sno=''篇五:C语言实验报告九 学期:_2013_至_2014_ 第1 学期 2013_年12_月09_日 课程名称: 程序设计基础教程-C语言_专业:_数学与应用数学_2012_级_1班 实验编号:
实验项目:
结构体和共用__ 指导教师__ ____ 姓名:
学号:实验成绩:
一、实验目的及要求 (1) 掌握C语言环境下结构体和共用体类型变量的定义和使用方法; (2) 掌握结构体类型数组的概念和使用; (3) 掌握指向结构体变量的指针变量、尤其是链表概念; 二、实验内容 1. 首先熟悉结构体类型变量的基本声明方法、结构体类型变量的内存分配原则、初始化和引用结构体变量及其成员变量的基本方法;然后掌握结构体变量的输入、输出方法。(参见教材例10-1~10-5) 2.基于结构体数组的应用实验。 (1) 有n个学生,每个学生的数据包括学好(num)、姓名(name[20])、性别(sex)、年龄(age),以及三门课程的成绩(score[3])。要求:在main()函数中输入这些学生的这些数据,然后设计一个函数count()来计算每个学生的总分和平均分,最后,打印出所有数据信息(包含原来输入的学生原始数据信息和求解出来的新信息)。 (2) 对第(1)题实验,求出其中成绩最好的人和成绩最差的人,并显示出来。(假定成绩最好和最差的人都只有一个) (3)* 如果假定成绩最好和最差的人的个数不一定唯一,程序应该如何修改才能完成求出所有最好和最差者,以及输出它们来。 3.*链表实验。 (1) 建立一个链表,每个结点包含:职工号、工资。用malloc()函数开辟新结点,用free()函数回收不用的结点空间。要求从键盘输入5个员工的数据信息(用create_list()),然后,用函数output_list()将它们一一打印出来,用free_list()将链表中的结点空间回收。假设职工编号为08,。 注:malloc()和free()为系统函数。create_list(),output_list(),free_list()为用户自定义函数。 (2) 在(1)的基础上,新增一个函数inset_node()插入员工的数据信息。要求新插入的员工后,员工仍然按职工号顺序排列。 (3) 在(2)的基础上,新增一个函数delete_node(),可以用来将指定员工的数据从链表中删除。(4) 在(3)的基础上,增加回收所删除结点所占内存空间的功能。 (5)* 如何查看和测试链表中结点的内存空间地址?能否由此分析(1)、(2)、(3)中链表结点的逻辑结构?
三、实验准备: (1) 复习有关结构体方面的所有知识,尤其是10-3-4节所学的动态存储分配技术; (2) 编写所选实验题目的程序代码和流程图; (3) 检查源程序并给出其可能的运行结果说明。
四、实验步骤: (1) 上机验证所选题目的程序设计结果,并做相应测试和分析; (2) 进行实验分析; (3) 结构体程序设计和实现的基本方法及其经验,尤其是链表技术; (4) 编写实验。 五、实验结果分析与评价 (1) 根据测试目标写出测试报告; (2) 测试结果分析说明; (3) 测试程序代码清单。
1. 首先熟悉结构体类型变量的基本声明方法、结构体类型变量的内存分配原则、初始化和引用结构体变量及其成员变量的基本方法;然后掌握结构体变量的输入、输出方法。(参见教材例10-1~10-5) 答:(1)结构体声明方法:(先定义结构体类型,再声明结构体变量) struct 结构体数据类型名 { 类型标识符
成员变量名; 类型标识符
成员变量名; . . . . . . }变量名表列; (2) 结构体类型变量的内存分配原则:其存储空间大小随着成员变量所占存 储空间大小而变化。其存储空间是连续分配的一段存储区域,大小为成员变量所占存储空间之总和。 (3)初始化:初始化列表中值的个数少于结构体成员变量个数时,余下的成 员变量自动初始化为0 或NULL。反之,将出现编译型错误:(4)引用结构体变量:既可以访问结构体中的成员变量,也可以将结构体变 量作整体引用。 (5)结构体变量的输入、输出方法: 利用scanf()和printf()函数完成 利用gets()和puts()函数完成
例题分析: 例10-1 测试结构体数据类型student所占的存储空间长度 程序如下: #include &stdio.h& struct student/*定义一个结构体*/ { int nS char cName[20]; char cS int nA float fS char cAddr[30]; }struS int main(void) /*主函数,主要测试各个结构体的内存大小*/ { int nSizeS printf(&size of struStud are %d and %d.\n&,sizeof(struct student),sizeof(struStud)); nSizeStud=sizeof(struStud.nStno)+ame)+sizeof(struStud.cSex); nSizeStud+=sizeof(struStud.nAge)+sizeof(struStud.fScore)+sizeof(struStud.cAddr); printf(&total size is %d\n&,nSizeStud); return 0; } 运行结果如下:
结果分析: 此例题主要是要我们掌握,结构体的所占的空间长度是怎么样的。Int 占两个字节,char占一个字节,数组占30个,一共就有59个字节。空间长度就是59.结构体存储空间以所有成员变量所需存储空间大小为分配依据。 sizeof()内可以是结构体数据类型标识符,也可以是结构体变量。结果和计算各成员变量内存空间大小之和一致。注意:sizeof()中,用结构体数据类型名测试大小必须以数据类型标识符形式表述。否则,编译器将报告“Undefined symbol”结构体数据类型名“in function…”错误。
例10-3 输入并输出学生成绩记录 #include &stdio.h& struct score_type
/*定义一个结构体*/ { int nS int nA float fS }; int main(void)
/*主函数*/ { struct score_type struS /*声明一个结构体*/ printf(&enter nStno,nAge,fScore::&); scanf(&%d%d%f&,&(struStud.nStno),&struStud.nAge,&struStud.fScore); printf(&nStno=%d,nAge=%d,fScore=%1f\n&,struStud.nStno,struStud.nAge,\ struStud.fScore); return 0; }运行结果: Enter nStNo.nAge,fscore:1,20,95.5 nStNo = 1,nAge = 20,fScore = 95.5
结果分析: 对结构体成员变量的访问用圆点操作符“·”,它被称为成员操作符,圆点运算优先级最高且是自左向右的结合,其具体格式如下:结构体变量名.成员变量名,它表示要访问结构体变量下的成员变量名域;由于取地址操作符优先级低于圆点操作符,对成员变量地址的引用可以不加括号。然后还要注意在结构体定义完成后要记住加分号。
2.基于结构体数组的应用实验。 (1) 有n个学生,每个学生的数据包括学号(num)、姓名(name[20])、性别(sex)、年龄(age),以及三门课程的成绩(score[3])。要求:在main()函数中输入这些学生的这些数据,然后设计一个函数count()来计算每个学生的总分和平均分,最后,打印出所有数据信息(包含原来输入的学生原始数据信息和求解出来的新信息)。 程序如下: #include&stdio.h& #include&stdlib.h& #define STUD_NUM 2/*宏定义*/ struct stud_info
/*定义一个结构体*/ {
char name[20];
int score[3];
} ; void stud_gets(struct stud_info *studPtr,const int no); /*声明外部函数*/ void stud_input(struct stud_info *stud_arr,const int num); void stud_output(const struct stud_info *stud_arr,const int num); void stud_gets(struct stud_info *studPtr,const int no)/*分别定义*/ {篇六:数据库
合 肥 工 业 大 学
实 验 报 告 一
课程名称:数据库系统原理及应用 学号: 姓名:李伟 专业班级:
电子商务09-1班 指导教师:马华伟
二零一一年十月一、实验目的: (1)熟练掌握数据更新语句,灵活地操作插入数据、修改数据和删除数据; (2)熟练掌握关系数据库中的完整性概念的应用; (3)了解数据录入的方法和过程。 (4)掌握单表查询的基本方法; (5)掌握连接查询的基本方法; (6)熟练掌握以下练习,并进行以下各类查询: ① 选择表中的若干列、查询全部列、查询经过计算的值; ② 选择表中的若干元组,即消除取值重复的行与查询满足指定条件的元组(包 括:比较大小、确定范围、确定集合、字符匹配、涉及空值和多种条件查询); ③ 对查询结果排序; ④ 使用集函数; ⑤ 对查询结果分组 (7)熟练掌握以下练习,并进行下列各类连接查询: ① 等值与非等值连接查询;② 自身连接;③ 外连接;④ 复合条件连接; (8)掌握嵌套查询的基本方法; (9)掌握集合查询的基本方法; (10)熟练掌握查询视图操作 (11)熟练掌握更新视图操作 (12)熟练关系的完整性概念,领会视图的用途 (13)练习以下各类查询: ① 带有IN谓词的子查询;
② 带有比较运算符的子查询;
③ 带有ANY或ALL谓词的子查询;
④ 带有EXISTS谓词的子查询; ⑤ 视图查询与更新操作; 二、实验要求: (1)为了便于程序正确性测试,需要对自己建立起来的数据表录入一些模拟数据(模拟数据是指符合数据格式要求的假数据),然后按照教材中结构化查询语言SQL章节例题和习题自己组织SQL语句:(2)设计的SQL程序应该涵盖数据更新操作的全部内容不,包括插入、修改、删除; (3)综合运用SQL语句实现数据插入、修改、删除等操作的综合运用能力。 (4)按照SQL语言编程要求,实现各类查询和检索操作; (5)利用后台的SQL平台环境,编程验证数据库的控制保护功能。 (6)将查询视图命令等价改写为对数据表的查询操作命令,利用SQL编程设计完成并进行效率分析。 三、实验内容: (1)根据以下给定的数据表信息分别对student, course, score, teacher, teching 表进行数据插入和修改,以完成给定的数据录入,同时要求输入班级同学名录模拟客观真实情况,给student、score表添加30条以上记录,以便以后查询应用方便。 Student表:
SQL语句插入的形式加入score表中。该题用以验证、理解和掌握关系模型的完整性规则; (3)求每门课的平均成绩,并把结果存入average表; (4)将学生“马丽鹃”的出生日期改为“”; (5)将所有学生的zipcode属性列值填补上; (6)将average表中的所有课程的平均成绩置零; (7)删除average表中的课程号为‘c007’的平均成绩记录; (8)删除所有average表中平均成绩记录; (9)建立一个临时学生信息表(tstudent),删除该表中的学号前六位为‘001011’的所有学生记录。 (10)查询全体学生的学号与姓名; (11)查询全体学生的学号、姓名、所属班级; (12)查询全体学生的详细记录; (13)查询全体学生的姓名及其年龄; (14)查询全体学生的姓名、出生年份; (15)查询所有修过课的学生的学号; (16)查询“信管系0101”班全体学生名单; (17)查询查询所有年龄在27岁以下的学生姓名及其年龄; (18)查询考试成绩有不及格的学生的学号; (19)查询年龄在15至28岁之间的学生姓名、班级和年龄; (20)查询年龄不在15至28岁之间的学生姓名、班级和年龄; (21)查询“信管系0101”和“电商系0102”班的学生的姓名和班级信息;
(22)查询既不是“信管系0101”也不是“电商系0102”班的学生的姓名和班级信息; (23)查询学号为“”的学生的详细情况; (24)查询学号以“0111”打头的学生信息; (25)查询所有姓“张”学生的学号、姓名、性别、年龄; (26)查询名字中第二个字有“海”字的学生的学号、姓名、性别、年龄; (27)查询所有不姓“刘”学生的姓名; (28)查询课程号以“C”开头的最后两个字母为“05”的课程号和课程名; (29)某些学生选修某门课程后没有参加考试,所以有选修课记录,但没有考试成绩,试查找缺少考试成绩的学生和相应的课程号; (30)查找全部有成绩记录的学生学号、课程号; (31)查找“电商系0101”班年龄在27岁以下的学生学号、姓名; (32)查找选修了“C001”号课程的学生学号及其成绩,查询结果按分数降序排序; (33)查询全体学生情况,查询结果按所在班级升序排列,对同一班级中的学生按年龄降序排列; (34)查询学生总人数; (35)查询选修了课程的学生人数; (36)在所有课程中查询最高分的学生学号和成绩; (37)查询学习“C001”课程的学生最高分数; (38)计算各个课程号与相应的选课人数; (39)查询“电商系0102”班选修了两门课程以上的学生学号、姓名; (40)自然连接student和score表; (41)使用自身连接查询每一门课程的间接先行课(即先行课的先行课) (42)使用复合条件连接查询选修“c001”号课程且成绩在90分以上的所有同学; (43)使用复合条件连接查询每个学生选修的课程名及其成绩; (44)查询选修了全部课程的学生; (45)查询至少选修全部学分数为4个学分的课程的学生的学号、姓名; (46)查询所有选修了C001号课程的学生学号、姓名; (47)查询选修了课程C001或c007的学生学号、姓名; (48)查询“会计系0102”班的学生及年龄不大于27岁(现有年龄)的学生; (49)查询既选修了课程C001又选修了课程c007的所有学生学号、姓名; (50)查询选修了课程名为“数据库原理”的学生的学号、姓名、性别、年龄; (51)查询其他班中比“信管系0101”班所有学生年龄都小的学生名单; (52)查询与“齐振国”在同一个班学习的学生学号、姓名、性别、年龄; (53)建立“信管系0101”班学生的视图,定义视图名为“info_student1”;篇七:完整学号姓名《管理信息系统》课程实验报告2016 《管理信息系统》
实验报告 班级:
姓名:赵自清 14工商1班 实验一:系统管理和基础设置 1.实验结果 请记录账套备份后生成的两个文件名称(含扩展名)。(可截图) 2.简答题 (1)系统管理在整个用友系统中的作用?
1、新建账套和赋予账套各项参数; 2、设立各账套的操作人员以及调整各操作员的操作权限。
(2)该账套是如何进行财务分工的?系统中进行权限设置的作用是什么? 让不同的管理员有不同的任务。 限制管理员使用软件的范围。 3.实验完成情况、碰到的问题、解决方法及实验 实验中有露掉一些职员档案的输入,经过重新更正解决了错误,所以做实验应该仔细,不能露掉一步。 实验二:总账管理系统初始设置 1.实验结果 请记录“期初试算平衡表”的内容。(可截图) 2.简答题 (1)总账系统初始设置的具体内容和意义? 根据行业的不同设置的内容不同,同行业不同公司根据自己业务需要设置也不同。设置科目辅助核算可以更清楚分类各部门发生的费用、不同的营业收入、成本等。 (2)设置科目辅助核算属性的作用? (一)简化会计科目体系由于进行辅助核算时,可以用相关的辅助档案代替明细科目,从而达到简化会计科目体系的作用 (二)使会计科目体系变得相对稳定使用传统明细科目核算时,如果相关信息发生变动,会造成到会计科目的变动,而使用辅助核算时,由于不必建立相应的明细科目,当相关信息发生变动时不会影响到会计科目,因而使得会计科目体系变得相对稳定。 (三)便于信息的查询和统计分析使用传统明细核算时,只能进行“纵向查询”,而使用辅助核算时,不仅可以进行“纵向查询”,还可以进行“横向查询”和相关的统计、分析,因而丰富了信息查询手段,使得用户可以及时方便地获取必要的决策和管理信息。3.实验完成情况、碰到的问题、解决方法及实验体会 刚开始不会引入账套,经过老师的解答,慢慢就懂了
实验三:总账管理系统日常业务处理 1.实验结果 (1)请记录本次实验完成后,“查询凭证”显示的所有凭证。(可截图)
(2)请记录“部门明细账”(可截图) 2.简答题 (1)如将凭证类型设置为收款、付款和转账凭证,凭证输入时如何判别凭证类型?实验二凭证类别设置中限制类型和限制科目的作用是什么? (2)请描述总账系统日常业务处理流程? 填制凭证----审核凭证----记账----月末转账----月末对账----月末结账(结账前如需要可先整理凭证)----打印凭证 3.实验完成情况、碰到的问题、解决方法及实验体会
实验四:总账管理系统期末处理 1.实验结果 (1)请记录“银行存款余额调节表(工行)”结果。(可截图) (2)请记录对账后“2011年1月试算平衡表”的内容。(可截图) 2.简答题 (1)总账系统月末处理的主要工作是什么? 总账系统月末处理的主要工作: (1)银行对账。 (2)自动转账。 (3)对账。 (4)结账。 总账系统根据会计准则和本单位的会计业务规则,对需要产生凭证的其它系统的单据设置自动出账模板,选择出账单据后系统自动生成相应凭证,对手工编制凭证设置相关约束,使会计总账处理变得更为简单、安全、有效,增强对会计出账规范性操作。 (2)请说明“银行存款余额调节表(工行)”中各数据的来源? 3.实验完成情况、碰到的问题、解决方法及实验体会篇八:课程实验三报告 《数据库原理及应用》实验报告 数据库的简单查询和连接查询 实验名称:________________
指导教师:_______完成日期:___________ 杨永旭
计算机科学与技术 董学斌 2012级网工班 专业:________________班级:___________
姓名__________
篇九:C语言期末考试试题及答案 C语言期末考试试卷 共 7 页
第 1 页 一、单选题(每题2分,共30分) 1.以下叙述正确的是 ______ 。 A)C程序的每行只能写一条语句 B)语言本身没有输入输出语句 C)在C程序中,注释说明只能位于一条语句的后面 D)在多函数的程序中,main函数必须放在其它子函数的定义之前 2.以下不正确的常量表示形式是 ______ 。 A) 0.45B)0XF5C)‘\85’ D) 32.67E-5 3. 以下不正确的变量名是 ______ 。 A) R&B B)
D) SUM3 4. 以下正确的一组语句是 ________。 A) int x=y=5;
B) scanf(&%d&,&n);int a[n]; C) char a,*p; p=&a;
D) char s[10]; s=&hello&; 5. 若以下变量均已正确定义和赋值,则正确的语句是 ________。 A) a=b==5;
B) y=x%2.0;
C) x+y=10;
D) n=8=2*4; 6.下面各组中与给出的程序段功能不等价的是 ________。 if(a&0)
b=1; else if(a==0)
b=-1; A)if(a&0)
b=1; C)if(a&0) b=1;
D)if(a&=0)if(a==0) b=0;
elseif(a==0) b=0; if(a&0)
b=1;if(a&0)
b=-1; if(a&0)
b=-1;if(a==0) b=0;
else b=0;if(a&0) b=-1; 7. 运行下面程序段,若输入abc#&CR&,则程序输出是:________。int v1=0,v2=0; while((c=getchar())!='#') { switch(c) { case 'a':v1++; default :v1++;v2++; case 'c':v2++; } } printf(&v1=%d,v2=%d\n&,v1,v2); A)2,2
D)2,5 共 7 页
第 2 页 8.对for(表达式1; ;表达式3){…}可以理解为:________。 A)for(表达式1;1;表达式3){…}
B) for(表达式1;表达式1;表达式3){…} C)for(表达式1;0;表达式3){…}
D) for(表达式1;表达式3;表达式3){…} 9.若有定义char a[]=”china”,b[]={’c’,’h’,’i’,’n’,’a’};则下面正确的叙述为: A)数组a的长度小于数组b的长度 B)数组a和b的长度相同 C)数组a的长度大于数组b的长度 D)数组a和数组b中存储的内容完全一样 10. 已知a,b,m,n,c,d变量的定义如下,则执行完下列程序段后m,n的值为:_____。 int a=3,b=4,m=0,n=0,c=3,d=4; (m=a&b)||(n=c&d); A) m=1 n=1
B) m=1 n=0
C) m=0 n=0
D) m=0 n=1 11.下面程序的输出结果是:________。 void main() { char s[20]=”hello\0\t\\”; printf(“%d”,strlen(s)); } A) 8 B) 5
C) 11D) 10; 12. 若有定义int a[3][3]={1,2,3,4,5,6,7,8,9},(*p)[3]=a;则下面能正确引 用数组元素的表达式为:________。 A) a[3][3] B) *(p+2)+2C) p[2][1]
D) *(a+1+1) 13. 下面正确的函数定义是:________。 A) double
fun(int x, int y) B) int fun(int x, y) { z=x+y; }{ z=x+y;} C) double
fun(x, y)D) fun(int x, int y) { int
x,y;{ z=x+y;} z=x+y;} 14. 若有定义 int (*p)( ); 则下面叙述正确的是:________。 A) p是指向一维数组的指针变量 B) p是指向整型数据的指针变量 C) p是一个函数名,该函数的返回值是指向整型数据的指针 D) p是指向函数的指针变量,该函数的返回值是整型数据 15. 设有如下定义语句,则下面的叙述不正确的是 ______ 。 struct
} A)a 和 x 都是结构体成员名
B)s是用户定义的结构体类型名 C)struct A是用户定义的结构体类型D)struct是结构体类型的关键字
第 3 页 二、填空题(每空2分,共20分) 1. 若要定义一个变量x来存储数据,存储的数据都是正整数,最大值不超过65535,则变量x的定义为_ 。 2. 设 float x=3.5 , y=4.8;int a =8; 则表达式
x + a % 3 * (int)(x+y) % 2 / 4 的值是___
。 3. 当执行下述程序段,从键盘上输入hello?jack!&CR&后输出为 __ _。 注:&CR&表示回车符,?表示空格。 char a[20]; scanf(&%s&,a); puts(a); 4. 若i为整型变量,则循环语句for(i=0; i==0 ;) printf(&%d&,--i);的执行结果是____ ____。 5. 下面程序对从键盘输入的两个串进行比较,输出两个串中第一个不相同字符的ASCII值之差。请将程序补充完整。 void main() { char a[20],b[20],c; int i=0,s; gets(a);gets(b); while((a[i]==b[i])&& (a[i]!=__ __))
i++; printf(&%d\n&,___ ___); } 6.下面程序的功能是调用find函数查找某个串中是否包含指定的字符。若找到显示找到的第一个匹配字符的下标。 如输入字符串为:hello,查找字符为 l,则输出:position=2
请补充程序。 #include&stdio.h& char *find(char *s, char c) { while(*s!='\0') {if(*s==c) ___
___; s++; } return NULL;} void main() { char a[80],ch,*p; gets(a); scanf(&%c&,&ch); p=find(a,ch); if(p==NULL) printf(&no find.\n&); else
printf(&position=%d\n&,___
___); } 7.下面程序的功能是统计从键盘输入的一行英文中的单词个数,单词之间用空格分隔。请补充程序。 共 7 页
第4页 void main() {int i,num=0,word=0; char s[80]; gets(s); for(i=0;s[i]!='\0';i++) if(s[i]==' ')
______ ; else if(word==0) { ___
__;num++;} printf(&%d&,num);} 三、读程序写结果(每题2分,共20分) 1.若系统为int型分配2个字节 void main() { unsigned int x=0xFFFF; printf(&%d&,x); } 2. void main() {int i=1,j; char ch='F'; j=!ch&&i++; printf(&i=%d,j=%d\n&,i,j);} 3. void main() { int x,y; for(x=1,y=2; y&=20;y++) { if(x&=10) if(x%2==1) { x+=5;} x-=3; } printf(&%d,%d&,y,x);} 4.void main() {int a[3],i,j,k; for(i=0;i&3;i++)
a[i]=0; k=2; for(i=0;i&k;i++) for(j=0;j&k;j++) a[j]=a[i]+1; printf(&%d\n&,a[1]);} 5. void swap(int *x,int *y) { int *t;t=x; x=y; y=t;
} void main() {int a=3,b=4; swap(&a,&b); printf(&a=%d,b=%d&,a,b);} 共 7 页
第 5 页 6. int a=1; void fun2() { static int c=6; a=c++; printf(&a=%d,c=%d\n&,a,c); } void main() {fun2(); fun2();} 7. #define N 3 #define Y(n) ((N+1)*n) void main() { s=2*(N+Y(5+1)); printf(&s=%d&,s);} 8. #include &stdio.h& void f(char **,int); void main() {char a[2][10]={&China&,&America&},*p[2];
p[0]=&a[0][0];p[1]=&a[1][0]; f(p,2); } void f(char **p,int n) { for(i=0;i&n;i++) puts(*(p+i));} 9. int fun1(int x,int y) {return x+y;} void main() {int a=5,b=8,s; int (*p)(int,int); p=fun1; s=(*p)(a,b); printf(&s=%d&,s); } 10. struct S{ char n[10];}; void main() { struct S
a={1, &fox&} ; printf(&%d,%s&,a.x,a.n);}本&&篇:《》来源于:
优秀范文,论文网站
本篇网址:/2016/shiyanbaogao_.html
好文大家读
Copyright &
All Rights Reserved.

我要回帖

更多关于 分性别年龄死亡率 的文章

 

随机推荐