更多"程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有"的相关试题:
[简答题]程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#define N 5
typedef struct student {
long sno;
char name[10];
float score[3];
} STU;
void fun(char *filename)
{ FILE *fp; int i, j;
STU s[N], t;
fp = fopen(filename, __1__);
fread(s, sizeof(STU), N, fp);
fclose(fp);
for (i=0; i
[填空题]程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a所指结构体变量S中的数据进行修改,并把a中的地址作为函数值返回到主函数,在主函数中输出修改后的数据。
例如,a所指变量s中的学号、姓名和3门课的成绩依次是:10001、"ZhangSan"、95、80、88,修改后输出t中的数据应为:10002、"LiSi"、96、81、89。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。
文件BLANK1.C内容如下:
#include<stdio.h>
#include<string.h>
struct student
long sno;
char name[10];
float score[3];
;
/**********found**********/
(1) fun(struct student *a)
int i;
a->sno=10002:
strepy(a->name,"LiSi");
/**********found**********/
for(i=0;i<3;i++) (2) +=1;
/**********found**********/
return (3) ;
void main( )
struct student s=10001,"ZhangSan",95,80,88, *t;
int i;
printf("in/nThe original data: in");
printf("/nNo: %1d Name: %s/nScores: ",s.sno,s.name);
for(i=0;i<3;i++) printf("%6.2f",s.score[i]);
printf("/n"):
t=fun(&s);
printf("/nThe
[简答题]给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
typedef struct
{ int num;
char name[9];
float score[3];
}STU;
void show(STU tt)
{ int i;
printf("%d %s : ",tt.num,tt.name);
for(i=0; i<3; i++)
printf("%5.1f",tt.score[i]);
printf("/n");
}
void modify(___1___ *ss,float a)
{ int i;
for(i=0; i<3; i++)
ss->___2___ *=a;
}
main( )
{ STU std={ 1,"Zhanghua",76.5,78.0,82.0 };
float a;
printf("/nThe original number and name and scores :/n");
show(std);
printf("/nInput a number : "); scanf("%f",&a);
modify(___3___,a);
printf("/nA result of modifying :/n");
show(std);
}
[单项选择]将二进制机器语言程序转换为汇编语言程序的语言转换程序称为( )。
A. 解释程序
B. 编译程序
C. 反汇编程序
D. 实用程序
[简答题]请编制程序PROG1.ASM,其功能是:内存中连续存放着10个十六位二进制数,每个数的序号依次定义为0,1,…9。统计每个数中位为0的个数N0,N1,…,N9(均用一个字节表示),然后按序将N0至N9存入内存中,最后再用一个字节表示这10个数中为0的位的总数n (n=N0+N1+…+N9)。
例如:
内存中有 0000H,000FH,FFFFH,…
结果为 10H,0CH,00H,…,最后为n
部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
填空BEGIN和END之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果 (无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处,请加以修改。
PROG1.ASM文件内容如下:
EXTRN LOAD://FAR,SAVE://FAR
N EQU 10
STAC SEGMENT STACK
DB 128 DUP( )
STAC ENDS
DATA SEGMENT
SOURCE DW N DUP( )
RESULT DB N+1 DUP(0)
NAME0 DB INPUT1.DAT’,0
NAME1 DB OUTPUT1.DAT’,0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:ST
[填空题]在Java程序中,通过类的定义只能实现单一继承,但通过接口的定义可以实现 【3】 关系。
[简答题]
程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息。函数fun的功能是输出这位学生的信息。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
typedef struct
{ int num;
char name[9];
char sex;
struct { int year,month,day ;} birthday;
float score[3];
}STU;
void show(STU ___1___)
{ int i;
printf("/n%d %s %c %d-%d-%d", tt.num, tt.name, tt.sex,
tt.birthday.year, tt.birthday.month, tt.birthday.day);
for(i=0; i<3; i++)
printf("%5.1f", ___2___);
printf("/n");
}
main( )
{ STU std={ 1,"Zhanghua",’M’,1961,10,8,76.5,78.0,82.0 };
printf("/nA student data:/n");
show(___3___);
}
[填空题]在Java程序中,通过类的定义只能实现单重继承,但通过【 】的定义可以实现多重继承关系。
[填空题]在Java程序中,通过类的定义只能实现单重继承,但通过 【7】 的定义可以实现多重继承关系。
[简答题]请编制程序,其功能是:内存中连续存放着10个十六位二进制数,每个数的序号依次定义为0,1,…,9。统计每个数中位为0的个数N0,N1,…,N9(均用一个字节表示),然后按序将N0至N9存入内存中,最后再用一个字节表示这10个数中为0的位的总数n(n=N0+N1+…+N9)。
例如:
内存中有:0000H,000FH,FFFFH…
结果为: 10H,0CH,00H…最后为n
部分程序已给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入SOURCE开始的内存单元中。运算结果要求从 RESULT开始存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白己用横线标出,每个空白一般只需一条指令,但采用功能相当的多条指令亦可,或删除BEGIN和END之间原有的代码并自行编程来完成所要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
EXTRN LOAD:FAR,SAVE:FAR
N EQU 10
STAC SEGMENT STACK
DB 128 DUP ( )
STAC ENDS
DATA SEGMENT
SOURCE DW N DUP( )
RESULT DB N+1 DUP(0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’OUTPUT.DAT’,0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, SS:STAC
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
LEA DX,SOURCE ; 数据区起始地址
LEA SI,NAME0 ; 原始数
[填空题]在Java程序中,通过类的定义只能实现单重继承,但通过 【8】 工的定义可以实现多重继承关系。
[填空题]下面程序段的功能是将形参x的值转换成二进制数,所得二进制数的每一位数放在一维数组中返回,二进制数的最低位放在下标为0的元素中,其他以此类推。
#include
main(int x,int b[])
{int k=0,r,i;
scanf("%d",x);
do
{r=x%2;
b[______]=r;/*第一空*/
x/=2;
}while(______);/*第二空*/
for(______);i>=0;i--)/*第三空*/
printf("%d",b[i]);
}