试题1
本题程序的功能是从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请将下述程序补充完整。(注意:不改动程序的结构,不得增行或删行。)
main()
{ float x,amax,amin;
scanf(“%f”,&x);
amax=x;
amin=x;
while(【1】)
{ if(x>amax) amax=x;
if(【2】) amin=x;
scanf(“%f”,&x);
}
printf(“\namax=%f\namin=%f\n”,amax,amin) ;
}
第1题:
以下程序为输入50个学生某门课程的成绩,并求出平均成绩 DIMENSION A(50) sum=0 FOR i=1 TO 50 INPUT TO A(i) END FOR Aver=sum/50 ?“平均成绩为:”,Aver 程序空白处应填入
A.sum=A(i)
B.sum=sum+A(i)
C.sum=sum+i
D.sum=i
第2题:
【程序说明】从键盘输入学生的学号,在“成绩”表中计算该生的平均成绩,并说明成绩的档次(优、良、中、及格和不及格),如果该生不在表中则提示相应的信息。
【程序】
SET TALK OFF
CLEAR
USE 成绩
ACCEPT“请输入学生的学号:” TO XH
(1)
IF (2)
?“查无此人!”
ELSE
(3) 成绩TO CJ FOR 学号=XH
DO CASE
CASE CJ>=90
DC=“优”
CASE CJ>=80
DC=“良”
CASE CJ>=70
DC=“中”
CASE CJ>=60
DC=“及格”
(4)
DC=“不及格”
ENDCASE
? XH,CJ,DC
ENDIF
USE
SET TALK ON
(1)
A.LOCATE TO 学号= XH
B.LOCATE OF 学号=XH
C.LOCATE FOR 学号=XH
D.INDEX ON 学号=XH
第3题:
“考试成绩信息”数据库下有一个表“成绩.dbf",使用菜单设计器制作一个名为my的菜单,菜单只有1个“考试统计”子菜单。“考试统计”菜单中有“学生平均成绩”、“课程平均成绩”和“关闭”3个子菜单:“学生平均成绩”子菜单统计每位考生的平均成绩;“课程平均成绩”子菜单统计每门课程的平均成绩;“关闭”子菜单使用SET SYSMENU TO DEFAULT来返回系统菜单。
(2)有如下命令序列,其功能是根据输入的考试成绩显示相应的成绩等级。
Set talk off
Clear
Input”请输入考试成绩: "to chj
Dj=iif(chj<60,”不及格”,iif(chj>=90,"优秀',"通过"))
??"成绩等级"+dj
Set talk on
请编写程序,用DO CASE型分支结构实现该命令程序的功能。
第4题:
(1)考生文件夹下有一个表“成绩.dbf”,使用菜单设计器制作一个名为“cd1”的菜单,菜单只有一个“成绩统计”子菜单。“成绩统计”菜单中有“学生平均成绩”、“课程平均成绩”和“关闭”3个子菜单:“学生平均成绩”子菜单统计每位学生的平均成绩;“课程平均成绩”子菜单统计每门课程的平均成绩;“关闭”子菜单使用SET SYSMENU TO DE-FAULT来返回系统菜单。
(2)有如下命令序列,其功能是根据输入的考试成绩显示相应的成绩等级。
SET TALK OFF
CLEAR
INPUT”请输入考试成绩:”TO cj
Di=iiI(cj<;60,”不及格”,iif(cj>;=90,”优秀”,iif(cj>;
=80,”良好”,”及格”)))
??”成绩等级为:”+dj
SET TALK()N
请编写程序“cx2.prg”,用DO CASE型分支结构实现该命令程序的功能。
第5题:
以下程序的功能是,从键盘上输入若干学生的成绩,统计并输出最高分数和最低分数,当输入负数时结束输入,请填空。
Private Sub Command1_C1iek()
Dim x As Single
Dim amax As Single,amln As Single
x=InputBox("请输入分数")
amax=x
amin=x
Do While【 】
If x>amax Then
amax=x
End If
If【 】Then
amin=x
End If
x=InputBox("请输入分数")
Loop
Print amax,amin
End Sub
第6题:
阅读以下应用程序说明和C程序,将C程序段中(1)~(7)空缺处的语句填写完整。
【说明】
以下【C程序】的功能是,逐一从指定课程成绩文件中读入学生的考号和成绩,对同一学生汇总他(她)的总成绩,并按如图6-14所示格式输出名次(按总成绩由高到底的顺序)、总成绩、同一名次的学生人数、同一名次学生的学号(按学号由小到大的顺序)。
该应用程序约定学生学习课程不超过30种,课程成绩文件的第1个数字就是课程号。统计过程中,同一课程号的成绩文件不能重复输入。
该应用程序采用链表结构存储学生的相关信息,链表中的每个表元对应一位学生。在数据输入过程中,形成一个按学号从小到大顺序链接的有序链表。当数据输入结束后,程序按总成绩从高到低,学号从小到大的顺序对链表排序。最后程序按指定格式输出链表中的信息。
【C程序】
include<stdio.h>
define M 30
define NLEN 10
typedef struct node {
int cur_s; /* 最近输入成绩的科目*/
Char no[NLEN];
int score;
struct node *next;
} NODE;
int s[M], sp, ss, i, mark, order, C;
FILE *fp; NODE *h, *U, *V, *p;
Char fname[80], no[NLEN], ans;
main()
{ for(h = NULL, sp = 0; ;)
{ printf("输入科目成绩文件名(输入aaaa表示强行结束)。 \n");
while(1)
{ scanf("%s", fname);
if (strcmp(fname, "aaaa") == 0)
break;
if ((fp = fopen(fname, "r")) == NULL)
printf("不能打开文件%s, 请重新输入科目文件名。 \n", fname);
else
break;
}
if (strcmp(fname, "aaaa") == 0) break;
fscanf(fp, "%d", &ss); /* 输入科目号 */s[sp]=s;
for (i=0; s[i] ! = ss; 1++);
if ( (1) )
{ printf("该科目的成绩已输入,请输入别的科目成绩文件。\n");
continue;
}
sp++;
while (fscanf(fp, "%s%d", no, &mark) == 2)
{ /* 在链表中寻找最近输入的学号 */
for(v = h; v != NULL && strcmp(v-> no, no)<0; u=v, v= v-> next);
if (v !=NULL && strcmp(v->no, nb) == 0)
{ /* 该生已有成绩 */
if (V->cur_s != ss)
{ /* 该生的当前科目成绩是第一次输入 */
v->score += mark; /* 累计总成绩 */
v->cur_s = ss;
} /* 同一科目成绩重复输入,后输入成绩被忽略 */
}
else
{ p = (NODE *)malloc(sizeof(NODE)); /* 一位新的学生 */
strcpy(p->no,no);
p->score = mark;
p->cur_s = ss;
p-> next = v;
第7题:
翻在窗体中有一个名称为run35的命令按钮,单击该按钮从键盘接收学生成绩,如果输入的成绩不在0~100分,则要求重新输入;如果输入的成绩正确,则进入后续程序处理。run35命令按钮的Click的事件代码如下。 Private Sub run35_Click( ) Dim flag As Boolcanresult=0flag=TrueDo While flagresult=Val(InputBox("请输入学生成绩:","输入"))Ifresult>;=0 And result<;=100 ThenElseMsgBox”成绩输入错误,请重新输入”EndIfLoopRem。成绩输入正确后的程序代码略 End Sub程序中有一空白处,需要填人一条语句使程序完成其功能。下列选项中错误的语句是( )。【考点4 VBA流程控制语句】
A.flag=False
B.flag=Not flag
C.flag=True
D.Exit Do
第8题:
在窗体中有一个名称为run35的命令按钮,单击该按钮从键盘接收学生成绩,如果输入的成绩不在O~100分之间,则要求重新输入;如果输入的成绩正确,则进入后续程序处理。run35命令按钮的Click的事件代码如下: PrivateSub run35_ClickDim flag As Boolcanresult=O flag=True Do Whileflag result=Val(InputBox(”请输入学生成绩:”,”输入”)) Ifresult>=0 And result<=100 Then __________ Else MsgBox”成绩输入错误,请重新输入” End If Loop Rem成绩输入正确后的程序代码略 End Sub 程序中的空白处需要填入一条语句使程序完成其功能。下列选项中错误的语句是( )。
A.flag=False
B.flag=Not flag
C.flag=True
D.Exit Do
第9题:
设学生成绩表的结构为(学号、课程号、成绩),程序运行界面如图1所示。进入界面后,用户首先选择学号(Combo1)、课程号(Combo2),姓名(Text1)和课程名(Text2)从数据库中自动读入;然后,用户输入对应的成绩(Text3),点击“确认”按钮后,将结果插入到学生成绩表中。请补充完成下列程序代码。
略
第10题:
编一个程序,定义一个有10个元素的数组,使用for循环语句,从键盘上输入10名同学的数学成绩,分别求出最高分和最低分,并且求出10名同学的数学平均成绩。
第11题:
①②③
②①③
②③①
③②①
第12题:
第13题:
【程序说明】 程序功能是按姓名提供学生成绩的查询。
【程序】
SET TALK OFF
USE STD
ACCEPT“请输入待查学生姓名:”TO XM
DO WHILE (4)
IF (5)
?“姓名:”+姓名,“成绩:”+STR (成绩,3,0)
ENDIF
(6)
ENDDO
SET TALK ON
RETURN
(4)
A.BOF ()
B.EOF ()
C..NOT. EOF()
D..NOT. BOF()
第14题:
考生文件夹下有一个表“成绩.dbf”,使用菜单设计器制作一个名为“cd1”的菜单,菜单只有一个“成绩统计”子菜单。“成绩统计”菜单中有“学生平均成绩”、“课程平均成绩”和“关闭”3个子菜单:“学生平均成绩”子菜单统计每位学生的平均成绩;“课程平均成绩”子菜单统计每门课程的平均成绩;“关闭”子菜单使用SET SYSMENU TO DE-FAULT来返回系统菜单。 (2)有如下命令序列,其功能是根据输入的考试成绩显示相应的成绩等级。 SET TALK OFF CLEAR INPUT”请输入考试成绩:”TO cj Di=iiI(cj<60,”不及格”,iif(cj>=90,”优秀”,iif(cj> =80,”良好”,”及格”))) ??”成绩等级为:”+dj SET TALKN 请编写程序“cx2.prg”,用DO CASE型分支结构实现该命令程序的功能。
第15题:
有N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。
第16题:
用SQL语句查询课程成绩在60分以上的学生姓名,并将结果按姓名降序存入表文件res.dbf中。
(2)编写my.prg程序,实现的功能:先为“学生成绩”表增加一个“学生平均成绩”字段,类型为 N(6,2),根据“学生选课”表统计每个学生的平均成绩,并写入“学生成绩”表新的字段中。
第17题:
以下程序的功能是从键盘上输入若干个数字,当输入负数时结束输入,统计出若干数字的平均值,显示结果。请填空。
Private Sub Form_Click()
Dim x,y As Single
Dim z As Integer
x=InputBox("Enter a score")
Do while【 】
y=y+x
z=z+1
x=InputBox("Enter a score")
Loop
If z=0 Then
z=1
End If
y=y/z
MsgoBox y
End Sub
第18题:
某班级学生《C++程序设计》成绩表如下图所示。若学生作业成绩、上机成绩和笔试成绩分别占综合成绩的15%、25%和60%,那么可先在E3 单元格中输入 (1) ,再向垂直方向拖动填充柄至E10 单元格,则可自动算出这些学生的综合成绩。若要将及格和不及格的人数统计结果显示在B11 和E11 单元格中,则应在B11 和E11 中分别填写 (2) 。
(1)
A.REF!
B.REF!
C.REF!
D.REF!
第19题:
在窗体中有一个名称为run1的命令按钮,单击该按钮从键盘接收学生成绩,如果输入的成绩不在0~100分之间,则要求重新输入;如果输入的成绩正确,则进入后续程序处理。run1命令按钮的Click的事件代码如下: Private Sub run1_Click() Dim flag As Boolcan result=0 flag=True Do While flag result=Val(InputBox("请输入学生成绩:","输入")) If result>=0 And result<=100 Then ( )( ) Else MsgBox “成绩输入错误,请重新输入” End If Loop Rein '成绩输入正确后的程序代码略 End Sub 程序中有一空白处,需要填入一条语句使程序完成其功能。下列选项中错误的语句是( )。
A.flag=False
B.flag=Not flag
C.flag=True
D.Exit Do
第20题:
第21题:
编一个程序,输入0—100之间的一个学生成绩分数,用switch语句输出成绩等第(成绩优秀(90-100),成绩良好(80-89),成绩及格(60-79)和成绩不及格(59以下))。
第22题:
输入学生的成绩,如果60分以上为及格,否则为不及格,如输入成绩为69分,则程序执行经过以下几个步骤,正确的顺序为() ①输入学生成绩 ②判断是否大于等于60分 ③输出及格。
第23题: