学校有多名学生,财务处每年要收一次学费。为财务处收学费工作设计一个数据库,包括两个关系:
学生 (学号,姓名,专业,入学日期)
收费 (学年,学号,学费,书费,总金额)
假设规定属性的类型:学费、书费、总金额为数值型数据;学号、姓名、学年、专业为字符型数据;入学日期为日期型数据。列的宽度自定义。
试用SQL语句定义上述表的结构。(定义中应包括主键子句和外键子句)
试用SQL语句定义上述表的结构。(定义中应包括主键子句和外键子句)
循环控制
1.实验目的
①熟悉掌握用while语句,do-while语句和for语句实现循环的方法。
②掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。
③进一步学习调试程序。
2.实验内容
编程序并上机调试运行。
①逐个检查1到200的所有整数,求1到200之间的完全平方数。
②判断一个整数是否为素数。
③由标准输入读一行字符,输出各个字符的编码。
④统计由标准输入得到的文件中字符的个数。
⑤统计输入数据的个数,找出其中的最小值和最大值。
⑥分别统计输入文件中的空格、行、数字、花括号以及其他所有字符的个数。
⑦打印Fibonacci序列前30个数。
⑧填出下列程序的运行结果。
main()
{int k=0;char c='A';
do
{ switch(c++)
{case'A':k++;break;
case'B':k--;
case'c':k+=2; break;
case'D':k=k%2; contlnue;
case'E':k=k*10;break;
default:k=k/3;
}
k++;
}
while(c<'G');
prinff("k=%d\n",k);
}
⑨若运行以下程序时,从键盘输入3.6 2.4<CR> (<CR>表示回车),写出程序的运行结果。
#include<math.h>
main()
(float x,y,z;
scanf("%f%f",&x,&y);
z=x/y
while(1)
{if(fabs(z)>1.0) {x=y;y=z:z=x/y:}
else break;
}
printf("%f\n",y);
}
⑩编写程序,从键盘输入6名学生的5门成绩,分别求出每个学生的平均成绩,并依次输出。
编程求1!+2!+3!+4!+……………+19!+20!。
找出1000之内的所有完数。
输出9*9口诀。
打印出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,冈为153=13+53+33。
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,只剩下一个桃子了。求猴子第一天共摘了多少个桃子。
要求编写程序使得在屏幕上输出如下图形。
基于数据库中的学生表、成绩表、任课表:
学生(学号,姓名,性别,出生日期,系名)
成绩(学号,课程名,成绩)
任课(课程名,任课教师名)
用SQL语言中的CREATE语句创建一个含有学号、姓名、性别、系名、课程名、成绩、任课教师名的学生成绩视图.
A.A.INSERT INTO SC(SNO,CNO,GRADE)values('S101','C11','98')
B.B.INSERT INTO SC(SNO,CNO,GRADE)values(S101,C11,98)
C.C.INSERT('S101','C11','98')INTO SC
D.D.INSERT INTO SC values('S101','C11',98)
①用SQL的有关语句定义
(1)学生关系S,包括学号SNo(主键)、姓名SN、年龄SA、系别SD;
(2)课程关系C,包括课程号CNo(主键)、课程名CN、授课教师T;
(3)学生选课关系SC,包括SNo、CNo和成绩G。
要求定义出主键和外键(如果存在)。数据类型和长度可根据生活经验或开发经验合理定义。
②在①所创建的数据表基础上,用SQL语句完成下列操作。
(1)用SQL语句查询每个学生的平均成绩,输出学号和平均成绩,按平均成绩排序(降序),若平均成绩相同,再按学号排序(升序)。
(2)求姓林的老师讲的每门课的学生平均成绩。
A.在一个单元格中可输入多达255个非数字项的字符
B. 在一个单元格中输入字符过长时,可以强制换行
C. 若输人数字过长,EXCEL会将其转换为科学计数形式
D. 输入过长或极小的数时,EXCEL无法表示
A.若输入数字过长,EXCEL会将其转换为科学记数形式
B.输入过长或极小的数时,EXCEL无法表示
C.在一个单元格中可以输入多达255个非数字项的字符
D.在一个单元格中输入字符过长时,可以强制换行
下面题使用如下3个数据库表。
学生表:S(学号,姓名,性别,出生日期,院系)
课程表:C(课程号,课程名,学时)
选课成绩表:SC(学号,课程号,成绩)
在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。
编写程序
编写程序,一个班级有n个学生,每个学生有学号、姓名和三门课的成绩。要求编程实现以下功能。
①先输入n,再依次输入n个学生的信息。
②按学生平均分从高到低排序。
③将排序结果写到文件C:\STU.TXT文件中,每个学生占一行。
(已知每班学生数少于100个,姓名和学号长度不超过10个字符;要求使用结构体类型。)