计算机软件基础实验指导(含答案)_(1)

计算机软件基础实验指导(含答案)_(1)
计算机软件基础实验指导(含答案)_(1)

计算机软件基础实验指导

第一章C语言程序设计基础

一、运输公司对用户计算运费。里程(S)越远,每公里运费越低,标准如下:

S<250km 没有折扣

250≤S<500 2%折扣

500≤S<1000 5%折扣

1000≤S<2000 8%折扣

2000≤S<3000 10%折扣

3000≤S 15%折扣

设每公里每吨货物的基本费为P,货物重量为W,距离为S,折扣为率d,则总费用F=P*W*S*(1-d)编写一计算用费的C程序。

答案:

程序如下:

#include

void main()

{

int C,S;

float P,W,D,F;

scanf("%f,%f,%d",&P,&W,&S);

if(S>=3000)

C=12;

else

C=S/250;

switch(C)

{

case 0:D=0;break;

case 1:D=2;break;

case 2:

case 3:D=5;break;

case 4:

case 5:

case 6:

case 7:D=8;break;

case 8:

case 9:

case 10:

case 11:D=10;break;

case 12:D=15;break;

}

F=P*W*S*(1-D/100.0);

printf("运费为:%f\n",F);

}

二、编写C程序处理学生成绩分类:90分以上为A,80-90分为B,70-79分为C,60-69分为D,60分以下为E.

答案:

程序如下:

#include

void main()

{

int C;

int score;

printf("输入一个整数成绩!\n");

scanf("%d",&score);

if(score>100||score<0)

{

printf("score is error!\n");

return ;

}

if(score<60)

C=5;

else

C=score/10;

switch(C)

{

case 9:printf("CLASS IS:A\n");break;

case 8:printf("CLASS IS: B\n");break;

case 7:printf("CLASS IS: C\n");break;

case 6:printf("CLASS IS: Dn");break;

case 5:printf("CLASS IS: E\n");break;

}

}

三、输入一组数据,统计其中正数的个数及总和。

答案:

程序如下:

#include

void main()

{

int count=0,n;

long int sum=0;

printf("输入整形数字,输入0时结束!\n");

scanf("%d",&n);

while(n!=0)

{

if(n>0)

{

count++;

sum+=n;

}

scanf("%d",&n);

}

printf("正数个数为:%d\n",count);

printf("正数总和为:%d\n",sum);

}

四、编写一程序求出1-100之间的偶数之和。

答案:2550。

程序如下:

#include

void main()

{

int sum=0;

int i;

printf("计算1~100之间的偶数之和!\n\n");

for(i=2;i<=100;i=i+2)

sum+=i;

printf("1至100之间的偶数的和为:%d\n",sum); }

五、编写一程序计算

X+8 当X>=100时

Y= -X+8 当X<-10时

0当X为其他值时

答案:

程序如下:

#include

void main()

{

int X,Y;

printf("输入X的值:\n");

scanf("%d",&X);

if(X>=100)

Y=X+8;

else if(X>=-10)

Y=0;

else

Y=-X+8;

printf("Y= %d\n",Y);

}

六、编写一程序求出1-100之间的能被3和2整除是数及个数。

答案:

程序如下:

#include

void main()

{

int count=0;

int i;

printf("1~100之间能被3和2整除的数为!\n\n");

for(i=1;i<=100;i++)

{

if((i%2==0)&&(i%3==0))

{

printf("%d",i);

count++;

}

}

printf("\n\n1至100之间能被3和2整除的数的个数为:%d\n",count); }

七、给出一个不超过5位的整数,求出其位数及逆序输出各位数字。如321 输出为123。答案:

程序如下:

#include

void main()

{

int count=0,n,c,s;

printf("输入n的值:\n");

scanf("%d",&n);

if(n>10000||n<0)

{

printf("input error!\n");

return ;

}

c=n/10;

printf("\n其逆序输出为:");

while(c>=1)

{

count++;

s=n%10;

printf("%d",s);

n=c;

c/=10;

}

count++;

printf("%d",n);

printf("\n\n该输入的位数为:%d\n",count);

}

八、输入两个整数M和N,求出其最大公约数、

答案

程序如下:

#include

void main()

{

int M,N,r;

printf("输入两个整数M和N,以空格隔开:\n");

scanf("%d,%d",&M,&N);

while(N!=0)

{

r=M%N;

M=N;

N=r;

}

printf("公约数为: %d\n",M);

}

九、一个数恰好等于除它自身的因子之和,这个数称为“完整”。例如6的因子为1、2、3、而6-1+2+3,则6为整数。求出1-100内的所有完数。

答案:

程序如下:

#include

void main()

{

printf("1-100内所有完整数为:");

int i,j,sum;

for(i=1;i<=100;i++)

{

sum=0;

for(j=1;j<=i/2;j++)

if(i/j*j==i)

sum+=j;

if(sum==i)

printf("%4d",i);

}

printf("\n");

}

十、用如下公式求圆周率的近似值

π/4=1-1/3+1/5-1/7+.........

直到某一项的绝对值小于10-6

答案:

程序如下:

#include

#include

void main()

{

int s;

float n,t,pi;

t=1;

pi=0;

n=1.0;

s=1;

while(fabs(t)>1e-6)

{

pi=pi+t;

n=n+2;

s=-s;

t=s/n;

}

pi=pi*4;

printf("结果为:pi=%10.6f\n",pi); }

十一、用如下公式求e的近似值。

e=1+1/1! +1/2! +1/3! +1/4! +........

直到某一项的绝对值小于10-6

答案:

程序如下:

#include

#include

void main()

{

int s;

float n,t,e,p=1;

e=1;

s=1;

p*=s;

t=1/p;

while(fabs(t)>1e-6)

{

e+=t;

s++;

p*=s;

t=1/p;

}

printf("结果为:e=%10.6f\n",e);

}

十二、输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方之和等于该数本身。如153=13+53+33

答案:

程序如下:

#include

void main()

{

int i,hundred,shiwei,gewei;

for(i=100;i<1000;i++)

{

hundred=(int)(i/100);

shiwei=(int)((i-hundred*100)/10);

gewei=(int)(i)%10;

if(i==hundred*hundred*hundred+shiwei*shiwei*shiwei+gewei*gewei*gewei)

{

printf("%d是水仙花\n",i);

}

}

}

十三、求Sn-a+aa+aaa+......+aa.....a(n和a)之值,其中a是一个数,n由键盘输入。

(题目好像有点问题,不过我理解的是求s(n)= a+aa+aaa+......+aa.....a(n个a)的值,其中a 是一个数,n由键盘输入??)

答案:

程序如下:

#include

#define a 5

int s(int c)//a的n次方计算

{

int result = 1;

for (int i = 0; i < c; i++)

{

result *= a;

}

return result;

}

void main()

{

int n,sum=0;

printf("请输入n:\n");

scanf("%d",&n);

for (int i=1;i<=n;i++)

{

sum+=s(i);

}

printf("结果为:%d",sum);

}

十四、编程求出1-100的素数

答案:

程序如下:

#include "math.h"

#include "stdio.h"

main()

{

int m,i,k,h=0,leap=1;

printf("\n");

for(m=1;m<=100;m++)

{

k=sqrt(m);

for(i=2;i<=k;i++)

if(m%i==0)

{

leap=0;

break;

}

if(leap)

{

printf("%-4d",m);

h++;

if(h%5==0)

printf("\n");

}

leap=1;

}

printf("\nThe total is %d",h);

}

十五、有一数列的定义如下:

f(0)=1.f(1)=1

f(n)=f(n-2)+f(n-1)

编程求出该数列的前20项的值,每输出5个数。答案:

程序如下:

#include "math.h"

#include "stdio.h"

main()

{

int h=0,i;

long int f1,f2;

f1=1;

f2=1;

for(i=1;i<=10;i++)

{

printf("%12ld ",f1);

h++;

if(h%5==0)

printf("\n");

printf("%12ld ",f2);

h++;

if(h%5==0)

printf("\n");

f1=f1+f2;

f2=f2+f1;

}

}

十六、有一个已排列好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。答案:

程序如下:

#include "math.h"

#include "stdio.h"

main()

{

int i,j,p,q,s,n,a[11]={127,3,6,28,54,68,87,105,162,18};

for(i=0;i<10;i++)

{

p=i;

q=a[i];

for(j=i+1;j<10;j++)

if(q

{

p=j;

q=a[j];

}

if(p!=i)

{

s=a[i];

a[i]=a[p];

a[p]=s;

}

printf("%d ",a[i]);

}

printf("\ninput number:\n");

scanf("%d",&n);

for(i=0;i<10;i++)

if(n>a[i])

{

for(s=9;s>=i;s--)

a[s+1]=a[s];

break;

}

a[i]=n;

for(i=0;i<=10;i++)

printf("%d ",a[i]);

printf("\n");

}

十七、打印出以下的杨辉三角形(要求打印出前10行)1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

1 1 1 1 1 1

答案:

程序如下:

#include "stdio.h"

void main()

{

int i,j,n=0,a[17]={0,1},l,r;

while(n<1 || n>16)

{ printf("请输入杨辉三角形的行数:");

scanf("%d",&n);

}

for(i=1;i<=n;i++)

{ l=0;

for(j=1;j<=i;j++)

{ r=a[j];

a[j]=l+r;

l=r;

printf("%5d",a[j]);

}

printf("\n");

}

}

十八、利用字符数组将两个字符串连接起来,结果取代第一个字符串。(不能用strcat函数)。答案:

程序如下:

#include "stdio.h"

#include "string.h"

void main()

{

char str1[100],str2[50];

int len1,len2;

int i,j;

printf("enter the first string!\n");

gets(str1);

printf("enter the second string!\n");

gets(str2);

len1=strlen(str1);

len2=strlen(str2);

for(i=len1,j=0;i<=len1+len2,j

str1[i]=str2[j];

puts(str1);

}

十九、输入10个学生的姓名,学号、和成绩,将其中不及格者的姓名,学号、和成绩输出。答案:

程序如下:

#include "stdio.h"

#include "string.h"

#define FORMAT "\n%d%s%f"

#define RENSHU 10

struct student

{

int num;

char name[20];

float score;

}stu[RENSHU];

void main()

{

void print1(struct student[]);

void scanf1(struct student[]);

scanf1(stu);

print1(stu);

}

void scanf1(struct student stu[])

{

int i;

for(i=0;i

{

printf("enter the %d student's data \n",i+1);

scanf("%d",&stu[i].num);

gets(stu[i].name);

scanf("%f",&stu[i].score);

}

}

void print1(struct student stu[])

{

int j;

for (j=0;j

{

if(stu[j].score<60)

printf(FORMA T,stu[j].num,stu[j].name,stu[j].score);

}

}

二十、输入一个3X5的整数矩阵,求出最大值和它的下标。

答案:

程序如下:

#include "stdio.h"

void main()

{

printf("该矩阵为:{{5,2,6,8,9},{10,1,7,15,20},{89,3,4,11,12}}\n");

int a[3][5]={{5,2,6,8,9},{10,1,7,15,20},{89,3,4,11,12}};

int i,j,k,max,maxi,maxj;

max=a[0][0];

for(i=0;i<3;i++)

for(j=0;j<5;j++)

if(a[i][j]>max)

{

max=a[i][j];

maxi=i;

maxj=j;

}

printf("最大值是:%d\n",max);

printf("最大值的坐标是:%d %d",maxi,maxj);

printf("\n");

}

二十一、设某班学生的三科成绩表如下:

课程一课程二课程三

....... ....... ........

试编出一个程序,输入该班学生的三科成绩,计算输出每科及每人的平均成绩、#include "stdio.h"

#include "string.h"

#define RENSHU 50 //班级人数可变

struct student

{

int num;

char name[20];

float score[3];

}stu[RENSHU];

void main()

{

void scanf1(struct student[]);

void aveg(struct student[]);

scanf1(stu);

aveg(stu);

}

void scanf1(struct student stu[])

{

int i;

for(i=0;i

{

printf("enter the %d student's data \n",i+1);

scanf("%d",&stu[i].num);

scanf("%s",stu[i].name);

scanf("%f",&stu[i].score[0]);

scanf("%f",&stu[i].score[1]);

scanf("%f",&stu[i].score[2]);

}

}

void aveg(struct student stu[])

{

int i;

int k;

float

avegperson[RENSHU]={0},avegcourse[3]={0,0,0},sumperson[RENSHU]={0},sumcourse[3]={0, 0,0};

for(i=0;i

{

for(k=0;k<3;k++)

sumperson[i]+=stu[i].score[k];

sumcourse[0]+=stu[i].score[0];

sumcourse[1]+=stu[i].score[1];

sumcourse[2]+=stu[i].score[2];

}

for(i=0;i

{

avegperson[i]=sumperson[i]/3;

}

for(i=0;i

{

printf("%5.2f ",avegperson[i]);

}

printf("\n");

for(k=0;k<3;k++)

{

avegcourse[k]=sumcourse[k]/RENSHU;

}

for(k=0;k<3;k++)

{

printf("%5.2f ",avegcourse[k]);

}

}

二十二、输入两个整数M和N,求出其最大公约数,求最大公约数要求用函数实现。答案:

程序如下:

#include

void main()

{

void gongyue();

gongyue();

}

void gongyue()

{

int M,N,r;

printf("输入两个整数M和N:\n");

scanf("%d,%d",&M,&N);

while(N!=0)

{

r=M%N;

M=N;

N=r;

}

printf("公约数为: %d\n",M);

}

二、编程计算:

S=1!+2!+3!+ (6)

要求:求某数阶乘用函数完成。

答案:

程序如下:

#include

#define MAX 6

void main()

{

void jiecheng(int n);

jiecheng(MAX);

}

void jiecheng(int n)

{

int i=0;

long temp=1;

long sum=0;

for(i=1;i<=MAX;i++)

{

temp*=i;

sum+=temp;

}

printf("sum=%ld\n",sum);

}

二十三、写一个验证哥德巴赫猜想:一个不小于6的偶数可以表示两个素素之和,如6=3+3,8=3+5,10=3+7........在主函数中输入一个不小于6的偶数n,然后调用函数gotobaha,在gotobaha中再调用prime函数,prime函数的作用是判断一个数是否是素素。在gotobaha函数中输出如下形式的结果:34=3+31

答案:

程序如下:

#include

#include

#include

void main()

{

void gotobahe(int x);

int prime(int y);

int n;

printf("输入一个不小于6的偶数:\n");

scanf("%d",&n);

if(n>=6&&n%2==0)

{

gotobahe(n);

}

else

{

printf("error!");

}

}

int prime(int y)

{

for(i=2;i

{

if(y%i==0)

break;

if(i==(y-1))

return 1;

}

return 0;

}

void gotobahe(int n)

{

int i;

for(i=2;i<=n;i++)

{

if(prime(i)&&prime(n-i))

{

printf("n=%d+%d",i,n-i);

break;

}

}

}

二十四、用递归法求n阶勒让德多项式的值,递归公式为

1(n=0)

P n(x)= x(n=1)

(2n-1).x-P n-1(x)-(n-1).P n-1(x)/n(n≥1)答案:

程序如下:

#include

float p(int n,int x)

{

if(n==0)

return 1;

else if(n==1)

return x;

else

return((2*n-1)*x*p(n-1,x)-(n-1)*p(n-2,x))/n;

}

void main()

{

最新计算机软件技术基础(第三版)习题答案

第一章 1.1什么是信息?信息与数据的区别和联系在何处? 信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。 信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。 与数据的区别和联系: 数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。 我们把这些数据收集起来,经过处理后,即得到人们需要的信息。 信息和数据的关系可以归结为: 1.信息是有一定含义的数据。 2.信息是经过加工(处理)后的数据。 3.信息是对决策有价值的数据。 1.2信息有哪些基本属性? z信息的基本属性有: 1.事实性。 2.等级性。 3.可压缩性。 4.可扩散性。 5.可传输性。 6.共享性。 7.增值性和再生性。 8.转换性。 1.3计算机的主要特点是什么? 计算机最主要的特点是: 1.高速自动的操作功能。 2.具有记忆的能力。 3.可以进行各种逻辑判断。 4.精确高速的计算能力。 1.5完整的计算机系统应该包括哪几部分? 目前最完整的计算机系统学说认为由五部分组成: 1.人员 2.数据 3.设备 4.程序 5.规程 1.6什么是计算机硬件?什么是计算机软件? 硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。 微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。 软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。 计算机软件一般分为系统软件和应用软件。 1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何? 第一阶段:高级语言阶段 特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。 硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。

20121212计算机软件基础试卷及其答案0

中南大学考试试卷 2012 -- 2013 学年上学期时间110分钟 计算机软件技术基础课程32 学时2 学分考试形式:开卷 专业年级:自动化、电气、测控10总分100分,占总评成绩70 % 注:此页不作答题纸,请将答案写在答题纸上,答题时请在答题纸上表明题号 一、填空题(每空1分,共20分,) 1.在同一问题规模下,如果算法执行所需的基本运算次数取决于某一特定输入时,可以用 和两种方法来分析算法的工作量。 2. 在一个长度为n的顺序存储的线性表中,向第i个元素(1

计算机软件基础实验报告

计算机软件基础(二) 实验报告 实验一 DOS和WINDOWS95系统的基本操作 一、实验要求和目的 1.熟悉MS-DOS环境。 2.掌握常用DOS命令的基本操作。 二、软硬件环境 1.硬件环境:微机CPU 486以上,500MB以上硬盘,32M以上内存; 2.软件环境:装有MASM 5.0、DEBUG、LINK和EDIT等应用程序。 三、实验涉及的主要知识单元 ●DOS的功能和组成: DOS的主要功能是管理磁盘文件,管理显示器、键盘、磁盘驱动器、打印机等各种设备,负责监视计算机及执行的处理过程,以便有效地利用系统资源,方便用户使用。从内部来看,DOS是完成各种功能的一组程序。版本不同,程序的数日也不同,但组成DOS的最主要的程序有四个,即命令处理模块(COMMAND.COM)、磁盘操作管理模块(MS-DOS.SYS)、输入输出接口模块(10.SYS)和一个引导程序。存放DOS程序模块的磁盘称为DOS系统盘。 DOS提供了多条操作命令,对一般用户最常用的是有关文件操作、文件目录操作、磁盘操作和若干系统命令。 DOS的人机界面采用的是命令行方式。 ●DOS的启动:DOS的启动就是从系统盘上把DOS装入内存并执行的过程。 启动MS-DOS应用程序,有三种方法: 第一种方法:从“开始”菜单启动MS-DOS操作系统。步骤为: 1.在Windows XP界面状态,单击“开始”|“运行”命令,如图2-1-1所示。 图1-1 “运行”命令条 2.在“运行”对话框中键入“cmd”,如图2-1-2所示,单击“确定”按钮。 图1-2 “运行”对话框 3.操作系统界面随即进入MS-DOS模式。如图2-1-3所示。

计算机软件基础知识题库1-0-6

计算机软件基础知识 题库1-0-6

问题: [单选]下图中①、②和③分别表示电子邮件地址的()。 A.用户信箱的邮件接收服务器域名、账号和分隔符 B.用户信箱的邮件接收服务器域名、分隔符和账号 C.用户信箱的账号、分隔符和邮件接收服务器域名 D.用户信箱的账号、邮件接收服务器域名和分隔符 用户的电子邮件地址由两部分组成,前一部分为用户在该邮件服务器中的账号,后一部分为邮件服务器的主机名或邮件服务器所在域的域名,中间用"@"分隔。

问题: [单选]计算机软件只要开发完成就能获得()并受到法律保护。 A.著作权 B.专利权 C.商标权 D.商业秘密权 由《计算机软件保护条例》可知,计算机软件开发完成后便受著作权保护。经营秘密和技术秘密是商业秘密的基本内容,计算机软件在尚未开发完成时,在软件开发中所形成的知识内容也构成商业秘密。

飞禽走兽 https://https://www.360docs.net/doc/f76768323.html,/ 问题: [单选]著作权的权利人不包括()。 A.发明人 B.翻译人 C.汇编人 D.委托人 著作权的权利人包括作者和其他依法享有著作权的公民、法人或者非法人单位。很明显著作的作者,即发明人可以是著作权的权利人。 我国《著作权法》规定:"改编、翻译、注释、整理已有作品而产生的作品,其著作权由改编、翻泽、注释、整理人享有,但行使著作权时,不得侵犯原作品的著作权。"如果需要将著作权人的作品翻泽,还需征得著作权人的许可。因为我国《著作权法》中规定著作权人享有翻译权,即未经著作权人许可,不可翻译著作权人的作品。 汇编是指把原有作品或者作品的片断通过选择或者编排,汇集成新作品。汇编并不改变作品本身,只是为一定目的将作品汇集。可见,汇编后的作品著作权仍属于原作者。 如果著作是委托开发的,委托方和受委托方可订立合同规定著作权属于委托方,如果没有给定则属

计算机软件技术基础课后题答案

数据结构习题答案 第一节概论 一、选择题 1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。 A.数据元素具有同一的特点 *B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等 2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。 (1) A.操作对象 B.计算方法 *C.物理存储D.数据映像 (2) A.结构 *B.关系 C.运算 D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。 (1) A.算法 *B.数据元素 C.数据操作D.逻辑结构 (2)A.操作 B.映像 C.存储 *D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。A.动态结构和静态结构 B.紧凑结构和非紧凑结构*C.线性结构和非线性结构 D.部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。

*A.随机存取 B.顺序存取 C.索引存取 D.Hash 存取 6.算法分析的目的是( )。 A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 *C.分析算法的效率以求改进 D.分析算法的易懂性和文档性 7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。 (1) A.计算方法 B.排序方法 *C.解决某一问题的有限运算序列 D.调度方法 (2) A.可行性、可移植性和可扩充性 *B.可行性、确定性和有穷性 C.确定性,有穷性和稳定性 D.易读性、稳定性和安全性 8.线性表若采用链表存储结构,要求存中可用存储单元的地址( )。 A.必须是连续的 B.部分必须是连续的 C.一定是不连续的 *D.连续不连续都可以 9.在以下的叙述中,正确的是( )。 A.线性表的线性存储结构优于链式存储结构*B.二维数组是它的每个数据元素为一个线性表的线性表 C.栈的操作方式是先进先出 D.队列的操作方式是先进后出 10.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( )。

计算机软件基础试题

《软件技术基础》试题库 课程名称:软件技术基础 适用专业:软件技术、计算机应用、网络、信息等计算机相关专业第一章概述 第二章数据结构 一、单项选择题 1.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动_______个数据元素。( ) A. n-i B. n+i C. n-i-1 D. n-i+1 答案:A 2.在单链表中,已知q指的结点是p指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行________。( ) A. link(s)←link(p),link(p)←s B. link(q)←s,link(s)←p C. link(p)←link(s),link(s)←p D. link(p)←s,link(s)←q 答案:B 3.高度为h(h>0) 的二叉树最少有________个结点。() A. h B. h-1 C. h+1 D. 2h 答案:A 4.n个顶点的带权无向连通图的最小生成树包含________ 个顶点。() A.n-1 B.n C.n/2 D.n+1 答案:B

5.采用拉链法解决冲突的散列表中,查找的平均查找长度( )。 A. 直接与关键字个数有关 B. 直接与装填因子a 有关 C. 直接与表的容量有关 D. 直接与散列函数有关 答案:D 6.树型结构最适合用来描述( ) A.有序的数据元素 B.无序的数据元素 C.数据元素之间的具有层次关系的数据 D.数据元素之间没有关系的数据 答案:C 7.若二叉树中度为2的结点有15个,度为1的结点有10个_______个叶结点。( ) A.25 B.10 C.16 D.41 答案:C 8.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有______个结点。( ) A.32 B.33 C.34 D.25 答案:C 9.若某完全二叉树的深度为h,则该完全二叉树中至少有______个结点。( ) A.2h B.2h-1 C.2h-2 D.2h-1+1 答案:C 10.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该( ) A.只有左子树上的所有结点 B.只有左子树上的部分结点 C.只有右子树上的所有结点 D.只有右子树上的部分结点 答案:A 11.下面关于哈夫曼树的说法,不正确的是( ) A.对应于一组权值构造出的哈夫曼树一般不是唯一的 B.哈夫曼树具有最小带权路径长度

计算机软件基础 自考历年试题

计算机软件基础02243 题型概述 1.单项选择题(共15小题,每题2分,共30分) 2.填空题(共10小题,每题2分,共20分) 3.解答题(共4小题,每题4分,共16分) 4.程序分析题(共4小题,每题4分,共16分) 5.程序设计题(共2小题,每题9分,共18分) 2008年试题解析 一、单选题 1、下列与k=n++完全等价的表达式是 C A. K=++n B. K+=n+1 C. K=n,n=n+1 D. n=n+1,K=n 2、已知int a=5,b=3,*p=&b,*q=&a;下列赋值语句中与b=a等价的语句是 A A. *p=*q; B. p=q; C. *p=&q; D. *p=*b; 3、已知C语言函数fun()的定义形式为void fun(char ch,float x){…}则正确调用fun()的语句是 D A. fun(“a”,3.0); B. fun(‘ab’,19.5); C. t=fun(‘z’,3.6); D. fun(65,3); 4、已知char sr[20];int i;从键盘向数组sr输入一字符串的正确语句是 A A. gets(sr); B. gets(sr[20]); C.for(i=0;i<20;i++)scanf(sr); D. for(i=0;i<20;i++)gets(&sr) 5、执行下列C语言程序段,循环结束的条件是 int n=0,p,sum=0; do{scanf(“%d”,&p);n++;sum+=p;}while(sum!=126&&n<5); C A. Sum的值不等于126或n的值小于5 B. Sum的值不等于126且n的值小于5 C. Sum的值等于126且n的值大于等于5 D. Sum的值不等于126且n的值大于等于5 6、下列C语言程序的输出结果是 C main() {int a=13,m=0;

计算机软件基础实验报告

《计算机软件基础》 实验报告 姓名:沈俊卫 学号:1145533129 班级:11电气1班 专业:电气工程及其自动化 学院:电气与信息工程学院 2013年12月

实验一线性表的插入和删除 一、实验目的 1.熟悉C++上机环境; 2.掌握线性表的基本操作:查找、插入、删除等运算在链接存储结构上的运算。 二、实验内容 【任务一】阅读理解 阅读后面的程序,并将其输入到计算机中,调试成功,运算出结果。这个程序中我们创建了一个整数类型的升序单,演示了单链表的创建、输出和删除操作。 【任务二】完善功能 构造函数node *insert (node *head,int num),实现把一个节点插入链表,仍保持链表上各节点的升序关系,并在主函数中完成对你所添加函数的测试。 三、算法描述 建立含有若干个元素的升序单链表,对其进行插入、删除等操作,并将结果在屏幕上输出。// 实验一线性表 #include "stdafx.h" const int SIZE0=2; const int STEP=1; struct List{ int *A,len,size; List(){ A=(int *)malloc(SIZE0*sizeof(int)); if(!A)exit(1); len=0; size=SIZE0; } ~List(){ delete[size]A; } int GetLen(); void Output(); int Insert(int loc,int x); int Delete(int loc,int &y); int Geti(int loc,int &y); List(int *p,int n); void StraightInsertSort(); void BinaryInsertSort(); void BubbleSort(); int Patation(int low,int up); void QuickSort(int low,int high); void SelectSort(); void Shift_down(int heapsize,int index); void DeleteNodeofHeap(int heapsize,int index); void createHeap();

《计算机软件技术基础》试题答案

《计算机软件技术基础》试题 1.线性表的链式存储结构与顺序存储结构相比优点是 CD 。 A. 所有的操作算法实现简单 B. 便于随机存取 C. 便于插入和删除 D. 便于利用零散的存储器空间 2.线性表是具有n 个 C 的有限序列。 A. 表元素 B. 字符 C. 数据元素 D. 数据项 E. 信息项 3.若长度为n 的线性表采用顺序存储结构,在其第I 个位置插入一个新元素的算法的时间复杂度为 C 。(1≤I ≤n+1) A. O(0) B. O(1) C. O(n) D. O(n 2 ) 4.设A 是一个线性表(a 1,a 2,…,a n ),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为 B ,平均每删除一个元素需要移动的元素个数为 A ;若元素插在a i 与a i+1之间(0≤I ≤n-1)的概率为 ) 1() (2+-n n i n ,则平均每插入一个 元素所要移动的元素个数为 C ; A. 21 -n B. 2n C. 3 12+n D. 4 13+n 5.下列函数中,按它们在∞→n 时的无穷大阶数,最大的是 D 。 A. log n B. nlog n C. 2n/2 D. n!

6.将下图所示的s所指结点加到p所指的结点之后,其语句应为: D 。 A. s->next=p+1; p->next=s; B. (*p).next=s; (*s).next=(*p).next; C. s->next=p->next; p->next=s->next; D. s->next=p->next; p->next=s; 7.将两个各有n个元素的有序表归并为一个有序表时,其最少的比较次数是 A 。 A. n B. 2n-1 C. n-1 D. 2n 8.下面的程序段是合并两个无头结点链表(ha和 hb)为一个无头结点链表ha的过程,作为参数的两个链表都是按结点的data域由大到小链接的。合并后新链表的结点仍按此方式链接。请填写下述空框,使程序能正确运行。 1. #define NULL 0 typedef struct node{ int data; struct node *next; }node, linklisttype; void combine(linklisttype *ha, linklisttype *hb){ linklisttype *h, *p; h = (linklisttype *)malloc(sizeof(linklisttype)); h->next = NULL; p = h;

计算机软件基础模拟试题

计算机软件基础模拟试题 一、选择题 1、在一个长度为a的顺序表的表尾插入一个新元素的渐进时间复杂度为() A、O(n) B、O(1) C、O(n2) D、O(log2n) 2、设单链表中结点的结构为(data,,link)。已知指针q所指结点是指针p所指结事业的直接前驱,若在*q和*p之间插入点*s,则应该执行下列哪个操作?() A、s->link=p->link; p->link=s B、q->link=s; s->link=p C、p->link=s->link; s->link=p D、p->link=s; s->link=q 3、若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。 A、3,2,1 B、2,1,3 C、3,1,2 D、1,3,2 4、一个递归的定义可以用递归过程求解,也可以用非递归过程求解,但单从运行时间来看,通常递归过程比非递归过程() A、较快 B、较慢 C、相同 5、树中所有结点的度等于所有结点数加() A、0 B、1 C、-1 D、2 6、在文件系统中采用多级目录的优点之一是() A、可以处理多任务 B、可以提高内存使用率 C、可以允许不同的用户对不同文化起相同的名字 D、可以提高访问文件的速度 7、对长度为a的有序单链表,若搜索每个元素的概率相等,则顺序搜索到表中任一元素的平均搜索长度为() A、n/2 B、(n+1)/2 C、(n-1)/2 D、n/4 8、在无向图中定义顶点Vi与Vj之间路径为从Vi到达Vj的一个() A、顶点序列 B、边序列 C、权值总和 D、边的条数 9、所谓“裸机”是指() A、单片机 B、单扳机 C、不装备任何软件的计算机 D、只装多操作系统的计算机 10、一个算法应该具有“确定性”等5个特征,下面另外4个特征的描述中错误的是() A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性

计算机软件技术基础实验报告Word版

计算机软件基础实验报告 姓名学号实验目的 1. 掌握C语言程序设计方法,并学会上机调试。 2. 熟悉Huffman编码源程序,并构造Huffman树。 实验内容 1.试设计一算法,从包括n个元素的数组中,求最大和最小元素,并使得当n 个元素为有序排列时,元素之间的比较次数仅为n-1次。 2.在给出的Huffman编码源程序基础上,要求画出Huffman树,求出与等长编 码相比时的压缩比。 实验要求 1.根据实验内容编写算法,并用 C 语言进行程序设计。 2. 将所编程序在计算机上调试通过,并全面测试。 实验结果 1.以一个含有8个元素的一维数组{1,2,3,5,7,8,9,12}为例,设计程序如下: #include int maxArray(int x ,int y); int minArray(int x ,int y); int main(void) { int i = 0 ; int array[8]={ 1,2,3,5,7,8,9,12} ; printf; do { scanf("%d",&array[i]); i++; } while(i < 8); int maxTemp = array[0]; int minTemp = array[0]; int maxIndex = 0; int minIndex = 0; for(i=1;i<8;i++)

maxTemp = maxArray(array[i] , maxTemp); minTemp = minArray(array[i] , minTemp); } for(i=0;i<8;i++) { if (maxTemp == array[i]) { maxIndex = i; } if (minTemp == array[i]) { minIndex = i; } } printf; return 0; } 运行结果如下: 2.Huffman编码源程序 #include #include #include #include #include typedef struct {unsigned int weight; //结点权值 unsigned int parent,lchild,rchild; //结点的父指针,左右孩子指针 }HTNode,*HuffmanTree; //动态分配数组存储哈夫曼树 typedef char **HuffmanCode; //动态分配数组存储哈夫曼编码表 void CreateHuffmanTree(HuffmanTree &,unsigned int*,int ); //生成哈夫曼树 void HuffmanCoding(HuffmanTree,HuffmanCode &,int ); //对哈夫曼树

化学实验室常识基础练习题及答案

化学实验室常识知识点复习 1、化学是研究物质的组成、结构、性质以及变化规律的基础科学。 2、我国劳动人民商代会制造青铜器,春秋战国时会炼铁、炼钢。 3、绿色化学-----环境友好化学 (化合反应符合绿色化学反应) ①四特点P6(原料、条件、零排放、产品)②核心:利用化学原理从源头消除污染 4、蜡烛燃烧实验(描述现象时不可出现产物名称) (1)火焰:焰心、内焰(最明亮)、外焰(温度最高) (2)比较各火焰层温度:用一火柴梗平放入火焰中。现象:两端先碳化;结论:外焰温度最高(3)检验产物 H2O:用干冷烧杯罩火焰上方,烧杯内有水雾 CO2:取下烧杯,倒入澄清石灰水,振荡,变浑浊 (4)熄灭后:有白烟(为石蜡蒸气),点燃白烟,蜡烛复燃 5、吸入空气与呼出气体的比较 结论:与吸入空气相比,呼出气体中O2的量减少,CO2和H2O的量增多 (吸入空气与呼出气体成分是相同的) 6、学习化学的重要途径——科学探究 一般步骤:提出问题→猜想与假设→设计实验→实验验证→记录与结论→反思与评价 化学学习的特点:关注物质的性质、变化、变化过程及其现象; 7、化学实验(化学是一门以实验为基础的科学) 一、常用仪器及使用方法 (一)用于加热的仪器--试管、烧杯、烧瓶、蒸发皿、锥形瓶 可以直接加热的仪器是--试管、蒸发皿、燃烧匙 只能间接加热的仪器是--烧杯、烧瓶、锥形瓶(垫石棉网—受热均匀) 可用于固体加热的仪器是--试管、蒸发皿

可用于液体加热的仪器是--试管、烧杯、蒸发皿、烧瓶、锥形瓶 不可加热的仪器——量筒、漏斗、集气瓶 (二)测容器--量筒 量取液体体积时,量筒必须放平稳。视线与刻度线及量筒内液体凹液面的最低点保持水平。 量筒不能用来加热,不能用作反应容器。量程为10毫升的量筒,一般只能读到0.1毫升。 (三)称量器--托盘天平(用于粗略的称量,一般能精确到0.1克。) 注意点:(1)先调整零点(2)称量物和砝码的位置为“左物右码”。 (3)称量物不能直接放在托盘上。 一般药品称量时,在两边托盘中各放一张大小、质量相同的纸,在纸上称量。潮湿的或具有腐蚀性的药品(如氢氧化钠),放在加盖的玻璃器皿(如小烧杯、表面皿)中称量。 (4)砝码用镊子夹取。添加砝码时,先加质量大的砝码,后加质量小的砝码(先大后小) (5)称量结束后,应使游码归零。砝码放回砝码盒。 (四)加热器皿--酒精灯 (1)酒精灯的使用要注意“三不”:①不可向燃着的酒精灯内添加酒精;②用火柴从侧面点燃酒精灯,不可用燃着的酒精灯直接点燃另一盏酒精灯;③熄灭酒精灯应用灯帽盖熄,不可吹熄。 (2)酒精灯内的酒精量不可超过酒精灯容积的2/3也不应少于1/4。 (3)酒精灯的火焰分为三层,外焰、内焰、焰心。用酒精灯的外焰加热物体。 (4)如果酒精灯在燃烧时不慎翻倒,酒精在实验台上燃烧时,应及时用沙子盖灭或用湿抹布扑灭火焰,不能用水冲。 (五)夹持器--铁夹、试管夹 铁夹夹持试管的位置应在试管口近1/3处。试管夹的长柄,不要把拇指按在短柄上。 试管夹夹持试管时,应将试管夹从试管底部往上套;夹持部位在距试管口近1/3处;用手拿住 (六)分离物质及加液的仪器--漏斗、长颈漏斗 过滤时,应使漏斗下端管口与承接烧杯内壁紧靠,以免滤液飞溅。 长颈漏斗的下端管口要插入液面以下,以防止生成的气体从长颈漏斗口逸出。

计算机软件技术基础作业

第二章数据结构概述 一、选择题 1.在数据结构中,从逻辑上可以把数据结构分为( C )。 A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构 2.线性表的顺序存储结构是一种( A )的存储结构。 A.随机存取B.顺序存取C.索引存取D.Hash存取 3.计算机算法指的是( C ),它必须具备输入、输出和( B )等五个特征。 (1) A.计算方法B.排序方法C.解决某一问题的有限运算序列D.调度方法 (2) A.可行性、可移植性和可扩充性B.可行性、确定性和有穷性C.确定性,有穷性和稳定性D.易读性、稳定性和安全性 4.线性表若采用链表存储结构,要求内存中可用存储单元的地址( D )。 A.必须是连续的B.部分必须是连续的C.一定是不连续的D.连续不连续都可以 5.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( A )。 A.集合中任何两个结点之间都有逻辑关系但组织形式松散B.线性结构中结点按逻辑关系依次排列形成一条“锁链”C.树形结构具有分支、层次特性,其形态有点像自然界中的树D.图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接 二、判断题 ×1.数据元素是数据的最小单位。 √2.数据结构是带有结构的数据元素的集合。 √3.数据结构、数据元素、数据项在计算机中的映像分别称为存储结构、结点、数据域。 ×4.数据项是数据的基本单位。 √5.数据的逻辑结构是指各数据元素之间的逻辑关系,是用户按使用需要建立的。 √6.数据的物理结构是数据在计算机中实际的存储形式。 ×7.算法和程序没有区别,所以在数据结构中二者是通用的。 三、填空题 1.所谓数据的逻辑结构指的是数据元素之间的____逻辑关系_____。 2,数据结构是相互之间存在一种或多种特定关系的数据元素的集合,它包括三方面的内容______数据的逻辑结构、数据的存储结构、对数据施加的操作_。3.数据的逻辑结构包括__集合结构___、_____线性结构___、____树型结构_____和__图状结构_____四种类型。 4.在线性结构中,开始结点_____没有______前驱结点,其余每个结点有且只有_____一个______个前驱结点。 5.算法的五个重要特性是__可行性___、___确定性___、___有穷性___、___输入__、___输出__。 6.下列程序段的时间复杂度是_____O(n)____。 for (i=1;i<=n;i++) A[i,i]=0; 7.存储结构是逻辑结构的_____物理______实现。

02243计算机软件基础(一) 历年真题

2015年10月高等教育自学考试全国统一命题考试 计算机软件基础(一) 试卷 (课程代码02243) 本试卷共6页。满分100分,考试时间150分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸. 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。3.第二部分为非选择题。必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。4.合理安排答题空间,超出答题区域无效。 第一部分选择题 一、单项选择题(本大题共l5小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。未涂、错涂或多涂均无分. 1.C语言中的基本数据类型是 A.数组、结构和指针B.字符型、整型和实型 C.整型、实型和浮点型D.基本整型、长整型和短整型 2.C语言中,下列数组定义语句正确的是 3.有下列程序: 4.已知:int a[]={10,20,30},*p;,下列语句中正确的是 5.对于下列代码片段:

6.带有头结点的循环单链表L是否为空的判定条件是 A.L==NULL B.L!=NULL C.L—>next==L D.L一>next==NULL 7.具有m个单元的顺序存储循环队列Q的队头和队尾指针分别是front和rear,下列语句中能够判断队列已满的是 8.一棵树的结点总数是n,各结点的度之和是m,则 A.n=m-1 B.n =m C.n=m+1 D.n=m+2 9.要根据遍历结果唯一确定一棵二叉树,则需要给出 A.先序和后序序列,或中序和后序序列 B.先序和后序序列,或先序和中序序列 C.先序、中序或后序序列 D.先序和中序序列,或后序和中序序列 10.在一个具有n个顶点的完全无向图中,任一个顶点的度等于 A.n-1 B.n C.n+1 D.要根据图来确定 11.一个图的边集为{},从e点开始对该图进行深度优先搜索,可能得到的顶点序列是 A.e,b,d,a,c B.e,b,a,d,c C.e,b,a,c,d D.e,b,c,d,a 12. 采用设置监视哨的查找方法时,其实现的前提条件是 A.序列采用顺序存储结构,并且必须按关键字值有序排列 B. 序列采用顺序存储结构,但不需要排序 C.序列采用链表存储结构,并且必须按关键字值有序排列 D.序列采厢链表存储结构,但不需要排序 13.50个有序数折半查找,成功的查找次数为6的节点有 A. 4个B.8个 C.16个D.19个

计算机软件基础实验报告

实验一选择结构程序设计 一、实验目的 1、掌握关系运算符和逻辑运算符的使用方法及其表达式的应用。 2、掌握分支语句的使用。 3、结合程序掌握一些简单的算法。 二、实验内容 1、在VC6.0中,实现输入3个整数,按大小顺序输出。 2、在VC6.0中,编写程序,当输入字符A时,输出America;输入字符B时,输出Britain;输入字符C时,输出China;输入其它字符时,输出France(要求使用switch语句实现)。 3、给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’.90分以上为’A’,80~89分为’B’, 70~79分为’C’,60~69分为’D’,60分以下为’E’。 三、实验环境 1、一台能正常启动的个人计算机 2、安装有VC6.0软件 四、实验步骤 1、启动VC6.0,创建一个新的C程序文件。 2、在创建的C程序文件中输入相应的代码。 3、保存程序 4、运行程序 输入3个整数,按大小顺序输出的问题,程序代码如下: #include main() { int a,b,c,t; printf("请输入三个整数:") ; scanf("%d%d%d",&a,&b,&c) ; if(a main() { char x; printf("请输入一个字符:");

检测实验室基础知识汇总

检测实验室基础知识汇总

————————————————————————————————作者:————————————————————————————————日期: ?

1、检验用水的要求 分析检验中绝大多数的分析是对水溶液的分析检测,因此水是最常用的溶剂。在实验室中离不开蒸馏水或特殊用途的纯水,在未特殊注明的情况下,无论配制试剂用水,还是分析检验操作过程中加入的水,均为纯度能满足分析要求的蒸馏水或去离子水。蒸馏水可用普通的生活用水经蒸馏汽化冷凝制成,也可以用阴阳离子交换处理的方法制得。特殊项目的检验分析对水的纯度有特殊要求时,一般在检验方法中注明水的纯度要求和提纯处理的方法。 为保证纯水的质量能符合分析工作的要求,对于所制备的每一批纯水,都必须进行质量检测。一般应达到以下标准: ①用电导仪测定的电导率小于或等于530μs/cm(25℃)。 ②酸度呈中性或弱酸性,PH=5.0~7.5(25℃).可用精密pH试纸、酸度计测定,也可用如下指示剂法测定:在10 ml水中加入2~3滴1g/L甲基红指示剂,摇匀呈黄色不带红色,则说明水的酸度合格,呈中性;或在10ml水中加入4~5滴1g/L溴百里酚蓝指示剂,摇匀不呈蓝色,则说明水的酸度合格,呈中性。 ③无有机物和微生物污染。检测方法为:在100 ml水中加入2滴0.1g/L高锰酸钾溶液煮沸后仍为粉红色。 ④钙、镁等金属离子含量合格。检测方法为:在10ml水样中加入2 ml氨-氯化铵缓冲溶液(PH=10),2滴5g/L铬黑T指示剂,摇匀。溶液呈蓝色表示水合格,如呈紫红色则表示水不合格。 ⑤氢离子含量合格。检测方法为:在10 ml水样中加入数滴硝酸,再加入4滴10g/L 的AgNO3溶液,摇匀。溶液中无白色浑浊物表示水合格,如有白色浑浊物则表示水不合格。 2、检验用试剂的要求 化学试剂是符合一定质量要求标准的纯度较高的化学物质,它是分析工作的物质基础。试剂的纯度对分析检验很重要,它会影响到结果的准确性,试剂的纯度达不到分析检验的要求就不能得到准确的分析结果。能否正确选择、使用化学试剂,将直接影响到分析实验的成败、准确度的高低及实验的成本,因此,仪器使用人员必须充分了解化学试剂的性质、类别、用途与使用方面的知识。 根据质量标准及用途的不同,化学试剂可大体分为标准试剂、普通试剂、高纯度试剂与专用试剂四类。 ①标准试剂 标准试剂是用于衡量其他物质化学量的标准物质,通常由大型试剂厂生产,并严格按照国家标准进行检验,其特点是主体成分含量高而且准确可靠。

计算机软件基础试题

计算机软件基础试题 一、单项选择题 1.下面各项中,属于计算机系统软件的是(A) A.操作系统B.数据库系统软件 C.网络系统软件D.事务处理软件 2.数据的逻辑结构可分为(C) A.顺序结构和链式结构B.简单结构和复杂结构 C.线性结构和非线性结构D.动态结构和静态结构 3.线性表若采用链表存储,其(D) A.所有结点的地址必须是连续的B.部分结点的地址必须是连续的 C.所有结点的地址一定不连续D.所有结点的地址连续、不连续都可以 4.若一个栈的输入序列是1,2,3,…,n,输出序列的第一个元素是n,则第i个输出元素是(B) A.n-i B.n-i+1 C.i D.n-i-1 5.二叉树的第i(i≥1)层上结点个数至多有( B ) A.2i-1-1 B.2i-1 C.2i-1 D.2i 6.有一个长度为13的有序表:{1,3,9,12,32,41,45,62,75,77,82,95,100},用二分(折半)方法查找值为82的元素,查找成功时关键字的比较次数为(C) A.1 B.2 C.4D.8 7.一个进程如果处于运行状态,说明该进程( A ) A.正在占用处理机B.正在输入数据 C.正在输出数据D.PCB被系统收回 8.在页式存储管理中,每次访问内存指令的执行都要访问2次内存,其中一次是访问页表,另一次是访问( B )A.空闲区表B.实际所需的内存单元 C.空闲区队列D.空闲区链表 9.在DOS系统中,采用树形目录结构时,用户要访问一个文件,必须指明文件的( D ) A.设备名B.文件名 C.文件名·扩展名D.路径名 10.通道技术是采用专用的I/O处理机来(A) A.处理外设与内存之间的信息交换 B.负责文件的输入与输出 C.改善CPU与I/O设备之间速度不匹配的情况 D.负责管理所有的外设 11.操作系统提供的作业级用户接口是( A ) A.系统操作命令B.用户标准函数 C.系统调用命令D.自定义子程序 12.文件系统对数据管理的特点是( C ) A.有很高的数据独立性B.保证数据的安全性 C.数据的冗余度大D.数据能充分共享

计算机软件基础实验报告

课程名称:计算机软件基础实验项目: 1.最简单的C程序 2.C程序的选择结构 3.C程序的循环结构 4.C程序的函数 5.C程序的指针 6.数据结构初步 实验一、最简单的C程序 一、实验目的 (1)理解常用运算符的意义。 (2)掌握c 语言表达是的运算规则。 二、实际设备及器材 计算机 三、实验内容 (1)整数除的危险性 分析三个表达式的值,再设计程序测试,进行比较和分析。 int a=5,b=7,c=100,d,e,f; d=a/b*c; e=a*c/b; f=c/b*a; d=0,e=71,f=70. 程序测试: #include int main() { int a=5,b=7,c=100,d,e,f; d=a/b*c; e=a*c/b; f=c/b*a; printf("% d,% d,%d\n",d,e,f); } 结果:

(1)分析下面程序 是比较x++与++x之间的区别。 例如: #include int main() { int a=5,b=8; printf("a++=%d\n",a++); printf("a=%d\n",a); printf("++b=%d\n",++b); printf("b=%d\ny",b); } 运行结果: 由上述程序可以看出,x++是先使用x在使x+1,而++x是先使x+1在使用x。 (2)分析下列表达式的值 测试程序: #include int main() { int a,b,c,d,e,f; scanf("a=%d,b=%d\n",a,b); c=b+a+++a; d=b+(a++)+a; e=b+a+(++a); f=b+a+++a++; printf("c=%,d=%d,e=%d,f=%d\n",c,d,e,f); } 四、思考题 1.整数除的危险性 2.C语言的运算规则 实验二、C语言选择结构 一、实验目的 (1)掌握分支程序的基本结构。 (2)掌握分支程序的测试与调试方法。 二、实际设备及器材

《计算机软件基础》试卷及答案

《计算机软件基础》试卷二(练习题) 一、选择题: 1、在一个链队列中,若f,r分别为队首、队尾指针,则插入s所指 结点的操作为()。 A) f->next=s; f=s; B) r->next=s; r=s; C) s->next=r; r=s; D) s->next=f; f=s; 2、从栈顶指针为top的链栈中删除一个结点,并将被删结点的值保存中, 其操作步骤为()。 A) x=top->data; top=top->next; B) top=top->next; x=top->data; C) x=top; top=top->next; D) x=HS->data; 3、对含有()个结点的非空二叉树,采用任何一种遍历方式,其结 点访问序列均相同。 A) 0 B)1 C) 2 D)不存在这样的二叉树 4、数组A中,每个元素A的长度为3个字节, 行下标i从1到8, 列下标j从1到10, 从首 地址SA开始连续存放在存储器内, 该数组按行存放时, 元素A[8][5]的起始地址为________. A. SA+141 B. SA+144 C. SA+222 D. SA+225 5、含n个顶点的连通图中的任意一条简单路径,其长度不可能超过()。 A)1 B)n/2 C)n-1 D)n 6、在图的邻接表存储结构上执行深度优先搜索遍历类似于二叉树的()。 A)先根遍历 B)中根遍历 C)后根遍历 D)按层次遍历 7、设有序表的关键字序列为 {1,4,6,10,18,35,42,53,67,71,78,84,92,99},当用二分查找法查找键 值为84的结点时,经()次比较后查找成功。 A) 2 B)3 C)4 D)12 8、如果节点A有三个兄弟,而B又是A的父亲,试问B的度是()。 A)2 B)3 C)4 D)5 9、一个n*n的对称矩阵, 如果以行或列为主序存入内存, 则容量为_________ A. n*n B. n*n/2 C. n*(n+1)/2 D.(n+1)*(n+1)/2 10、设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6 个元素出栈的顺序是s2,s3,s4,s6,s5,s1,则栈的容量至少应该是 ()。

相关文档
最新文档