02243高等教育自学考试题2016年04月 计算机软件基础(一)
2017年10月高等教育自学考试《计算机软件基础(一)》试题02243

2017年10月高等教育自学考试《计算机软件基础(一)》试题课程代码:02243一、单项选择题1.语句k=(m=5,n=++m);运行之后,变量k、m、n的值依次为A.5,5,6 B.5,6,5 C.6,6,5 D.6,6,62.下列表达式不能用来判断整型变量x中的值是否为奇数的是A.x%2==1 B.!(x%2==0)C.!(x%2) D.x%23.下列程序运行后,a的值是void main( ){int a,b;for(a=1 ,b=1 ;a<=100;a++){ if(b>20) break;if(b%3 ==1) {b+=3;continue; }b-=5;}}A. 7B. 8C. 100D. 1014.下列为合法的数组定义的是A. char str[ ] = {48,49,50,51,52,53};B. int a[5] = 10,1,2,3,4,5};C. int a[ ] = "string";D. char str[ ] ='string';5.若有定义:int*p1,*p2;,则不能用于指针变量p1、P2之间的运算符是A.= B.== C.+ D.-6.下列程序运行后输出结果是void fun (int i){ int m =2;m=i++;prinff( "% d" ,m);}void main( )int m=7,n =5;fun(n);pfinff("% d",m);}A. 5 5B. 5 7C. 6 6D. 6 77.若定义如下结构,则能打印出字母M的语句是struct person {char name[9];int age;} cl [10] ={"Wujun",20," Liudan",23," Maling",21,"zhangming",22};a. printf("%c\n",c1[3].name); B. printf("%c\n",c1[2].name[0]);C. printf("%c\n",c1[2].name[1]);D. printf("%c\n",c1[3].name[1]);8.下列的时间复杂度中,执行时间最长的是A. O(n)B. O(2n)C. O(n3)D. O(l gn )9.下列程序段的时间复杂度是for(i=0;i<m;i++)for(j=0;j <n;j++)a[i] [j] =i,j;A. O(m2)B. O(n2)C. O(m*n) O. O(m+n)10.在线性表的下列存储结构中,读取元素花费的时间最少的是A.顺序表B.单链表C.双链表D.循环链表11.设计一个判别表达式中括号是否配对的算法,采用的最佳数据结构是A.栈B.链表C.队列D.顺序表12.将一棵有100个结点的完全二叉树从根这一层开始,每一层上从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为A.48 B.50 C.98 D.9913.对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为A.n-1 B.n C.(n-1)2D.n214.无向图中一个顶点的度是指图中A.通过该顶点的简单路径数B.与该顶点相邻接的顶点数C.与该顶点连通的顶点数D.通过该顶点的回路数15.在软件工程的设计工具中,不属于详细设计阶段的工具是A.判定树B.盒图C.问题分析图D.程序流图二、填空题16.当a=3,b=2,c=1时,表达式f=a>b>c的值是。
02243计算机软件基础(一)

世界上第一台电子计算机ENIAC
诞生于1942年
18800个晶体 管
70000个电阻 器
18000个电容 器
重量30吨
耗电140千瓦 /h
5000次加法/s
第8页
Pentium IV(2000)
42,000,000个晶体管 时钟频率1.5GHz 运算速度为1700 MIPS (MIPS 代表‘百万指令
第 26 页
软件工程概念
软件工程是指导计算机软件开发和维护的工程学 科,采用工程的概念、原理、技术和方法来开发 与维护软件。
贯穿于这一学科的基本线索是软件生命期学说, 它告诉软件研制者和维护者“什么时候做什么以 及怎么做”。
软件生命期就象人的寿命一样,从出生算到死亡, 从产生开发要求算到软件报废为止。包括:软件 计划、需求分析、软件开发和软件维护四个时期。
汇编语言 为符号化的机器语言。它用助记 符和标识符代替机器指令的操作码和地址码。
高级语言 是一种与具体的计算机指令系统 无关,独立于计算机类型,而且表达方式接 近于自然语言或数学语言,容易被人们掌握 和书写的语言。如C,Pascal,java。
第 17 页
举例
任务:x+1→x 机器语言
00111110 00001001 00111111B 或 3E 09 3FH
3、硬件与软件的关系
软硬件独立原理和互动原理
独立原理:软件理论上能实现的功能本质上与 硬件是独立的(不管硬件是何种形式) 互动原理:软件实际能实现的功能受制于硬件, 硬件发展一个台阶,软件就能前进一大步
软硬件等效定律
简单的硬件+复杂的软件 简单的软件+复杂的硬件 最终都可以完成同一个任务,不同的只是时间!
自考2243-计算机软件基础(-)课后习题答案

第一篇C语言程序设计基础第一章C语言基础一、简答题1.参考书P5图1-7。
2.因为C语言是强类型语言,语法规定必须先定义后使用,只有先定义,系统才能为其分配存储空间。
3.参考书P2。
二、填空题1. 算法2. .C , .obj , .exe3. 提出问题,构造模型,选择方法,编写程序,上机调试4. 15. sin(35.0) + x * cos(60.0)6. 67. 0三、改错题1. 参考书上第二页,算法与程序的区别2. 只能定义为一种类型3.必须先定义,后使用4. 可以随时修改5.只有char型变量才只存储一个字节6. a还是实型变量7. b中的值不丢失8. i的类型不变四、单选1-5 BDCDC 6-10 DCBBD 11-15 CBADC 16-18 AAA第二章顺序结构、选择结构和循环结构的程序设计一、简答1. 参考书上23页2. while先判断,后执行,do while先执行,后判断,循环体至少执行一次3. 参考书上29页4. continue,结束本次循环break,结束循环区别在于,continue只结束本次循环重新进行下次循环,而break结束整个循环二、填空题1. 顺序结构,选择结构,循环结构2. if else 和switch3. 语句1 ,语句24. 零5. break ,continue6.7 ,07. > : ,双目三、单选1-5 DBDCC 6-10 DBADA 11-15 CBCDA 16-20 ACAAD 21-25 CDCBB 26-29BCCA四、程序分析题1. end 1end2. num%10 max = t3. j%34. 99五、编程题1. #include <stdio.h>int main(){char str[100] ;gets(str) ;int n1 , n2 , n3 , n4 , i ;n1 = n2 = n3 = n4 = 0 ;for(i = 0 ; str[i] != '\0' ; ++i) {if(str[i] >= 'A' && str[i] <= 'Z')++n1 ;else if(str[i] >= 'a' && str[i] <= 'z')++n2 ;else if(str[i] >= '0' && str[i] <= '9')++n3 ;else++n4 ;}printf("大写字母:%d\n" , n1) ;printf("小写字母:%d\n" , n2) ;printf("数字字符:%d\n" , n3 ) ;printf("其他字符:%d\n" , n4) ;return 0;}2.#include <stdio.h>#include <stdlib.h>int main(){int array[4] , min , max , i ;for(i = 0 ; i < 4 ; ++i)scanf("%d" , &array[i]) ;min = max = array[0] ;for(i = 1 ; i < 4 ; ++i) {if(array[i] < min)min = array[i] ;else if(array[i] > max)max = array[i] ;}printf("min = %d , max = %d\n" , min , max) ;return 0;}3.#include <stdio.h>int main(){float money , lixi ;int year ;scanf("%f %d" , &money , &year) ;switch(year) {case 1 :lixi = money * 0.63 / 100 ;break ;case 2 :lixi = money * 0.66 / 100 ;break ;case 3 :lixi = money * 0.69 / 100 ;break ;case 5 :lixi = money * 0.75 / 100 ;break ;case 8 :lixi = money * 0.84 / 100 ;break ;default :printf("输入错误\n") ;return -1 ;}printf("%f\n" , money + lixi) ;return 0;}4.#include <stdio.h>int main(){int x , y ;scanf("%d" , &x) ;if(x > 100)y = x + 8 ;else if(x < -10)y = -x + 8 ;elsey = 0 ;printf("%d\n" , y) ;return 0;}5.#include <stdio.h>int main(){int i , j , k , m = 3 ;for(k = 5 ; k < 12 ; k += 2 , --m) {for(i = 0 ; i < m ; ++i)printf(" ") ;for(j = 0 ; j < k ; ++j)printf("*") ;printf("\n") ;}return 0;}6.#include <stdio.h>int main(){printf(" *****\n") ;printf(" * *\n") ;printf(" * *\n") ;printf("*************\n") ;return 0;}第三章数组一、简答1. a:数组名,a[0] :数组第0号元素,&a[1]数组第1号元素的地址2. 不同,”a”是字符串,末尾有一个’\0’3. 2 * 3 * 2 = 12个字节二、填空题1. 02. 按行存放3. 10144.str[14]5. ‘\0’三、改错1. 是02. 只能是常量3. 一定相同4. 不会给错误信息5. 没有提供字符串类型6. 不等价,”ok”末尾有一个’\0’四、单选1-5 DBCAC 6-10 DDDCB 11-13 DDC五、程序分析题1. AzyD2. 1233. 454. 4some string * test5. 统计输入字符串中空格的个数 3 ,16. max < a[row][col] min > maxmin == max7. a a sum/n x[i] < ave8. a[i][j] != a[j][i] 19. j += 2 a[i] > a[j]10. 1 2 4 5 6 0 0 0 0 01 2 3 4 5 6 0 0 0 0六、编程题1.#include <stdio.h>int main(int argc , char *argv[]) {int a[11] , i , n ;printf("请输入十个递增排列的数列:") ;for(i = 0 ; i < 10 ; ++i)scanf("%d" , &a[i]) ;printf("请输入要插入的数:") ;scanf("%d" , &n) ;for(i = 9 ; i >= 0 && a[i] > n ; --i) {a[i+1] = a[i] ;}a[i+1] = n ;printf("插入后数列为:") ;for(i= 0 ; i < 11 ; ++i)printf("%d " , a[i]) ;printf("\n") ;return 0 ;}2.#include <stdio.h>#include <string.h>int main(int argc , char *argv[]) {char a[100] , b[100] , min , i ;scanf("%s %s" , a , b) ;min = 0 ;for(i = 1 ; a[i] != '\0' ; ++i) {if(a[min] > a[i])min = i ;}strcat(b , a + min + 1) ;a[min + 1] = '\0' ;strcat(a , b) ;printf("%s\n" , a) ;return 0 ;}3.#include <stdio.h>int main(int argc , char *argv[]) {char s1[100] , char s2[100] ;int i ;gets(s1) ;gets(s2) ;char *string1 = s1 , *string2 = s2 ;do{i = (int)*string1 -(int)*string2;}while(*string1++ && *string2++ && (!i) );for(i = 0 ; s1[i] != '\0' && s2[i] != '\0' && s1[i] == s2[i] ; ++i) ;printf("%d\n" , i) ;return 0 ;}4.#include <stdio.h>int main(int argc , char *argv[]) {char s[100] ;int i ;gets(s) ;for(i = 0 ; s[i] != '\0' ; ++i) {if(i == 0 || (s[i-1] == ' ' && s[i] >= 'a' && s[i] <= 'z'))s[i] -= 32 ;}puts(s) ;return 0 ;}5.#include <stdio.h>int main(int argc , char *argv[]) {char s1[100] , s2[100] ;int end , i ;gets(s1) ;gets(s2) ;for(end = 0 ; s1[end] != '\0' ; ++end) ;for(i = 0 ; s2[i] != '\0' ; ++i)s1[end++] = s2[i] ;s1[end] = '\0' ;puts(s1) ;return 0 ;}第四章函数一、简答题1. 参考书上68页,69页,72页2. 函数的返回值,函数的形参3. 实参与形参之间是值传递的关系二、填空题1. 库用户自定义2. 33. gets()4. strlen()5. strcpy()6. 全局局部7. 有返回值无返回值8. return9. void10. 前11. 调用三、改错1. 表示不同的变量2. 按照调用的先后顺序执行3. 各自有自己的存储单元4. 可以没有形参5. 分配在动态存储区6. 以该函数定义的返回值为准7. 嵌套调用指函数调用函数四、单选1-5 BDACC 6-10 DAACC 11-13 ACC五、程序分析题1. j str[j-1]2. 本题程序是错的,第五行,for(I = m + 1 ; i++)这里少东西,所以跳过3. i < n x = fun(4)4. 1: a = 1 , b = 12: a = 2 , b = 23: a = 3 , b= 3六、编程题1.int fun(int year) {if( year % 400 == 0|| (year % 4 == 0 && year % 100))return 1 ;elsereturn 0 ;}2.#include <stdio.h>#include <math.h>void fun1(int a , int b , int c) {float t = sqrt(b * b - 4 * a * c) ;printf("x1 = %f , x2 = %f\n" , (-b + t) / 2.0 * a , (-b -t) / 2.0 *a) ;}void fun2(int a , int b , int c) {printf("x1 = x2 = %f\n" , -b/ 2.0 * a) ;}void fun3(int a , int b , int c) {printf("该方程没有实根") ;}int main(int argc , char *argv[]) {int a , b , c ;scanf("%d %d %d" , &a , &b , &c) ;if(b * b - 4 * a *c > 0)fun1(a , b , c) ;else if(b * b - 4 * a * c == 0)fun2(a , b , c) ;elsefun3(a , b , c) ;return 0 ;}3.#include <stdio.h>#include <math.h>int fun(int a[] , int n) {int i , j = 0 ;for(i = 1 ; i < n ; ++i)if(i % 3 == 0 && i % 7 == 0)a[j++] = i ;return j ;}int main(int argc , char *argv[]) {int a[100] , n , m , i ;scanf("%d" , &n) ;m = fun(a , n) ;for(i = 0 ; i < m ; ++i)printf("%f " , sqrt(a[i])) ;return 0 ;} 第五章指针一、简答1. 不一定,这要看指针的类型,比如int * p ,则p + 1 就增加两个字节2. 定义指针时表示定义的变量是指针类型,引用指针时,表示指针指针指向的变量3. p + n , p – n ,其中n是int类型二、填空题1. 地址2. & *3. 指针4. *p5. 10066. malloc7. a+i *(a+i)8. 39. ‘b’‘\0’三、改错题1. 只能存放同类型的变量的地址,比如int *只能存放int型变量的地址2. 这个说法是正确的,没有错误3. 不是,指的是指针所指向的变量的类型4. 只能是同类型的指针或者&a这样的地址值5. 是可以改变的四、单选1-5 CDDAA 6-10 BCDDB五、程序分析题1. *x t2. r + b[u] *x3. 104. CDG5. 80,-206. 57. 551711717六、编程题1.#include <stdio.h>int main(int argc , char *argv[]) {char s[100] ;int i ;gets(s) ;for(i = 0 ; s[i] != '\0' ; ++i) ;printf("%d\n" , i) ;return 0 ;}2.#include <stdio.h>int fun(char *s , char c) {int count = 0 ;for( ; *s != '\0' ; ++s)if(*s == c)++count ;return count ;}int main(int argc , char *argv[]) {char s[100] , c ;gets(s) ;c = getchar() ;printf("%s %c\n" , s , c ) ;printf("%d\n" , fun(s , c)) ;return 0 ;}3.#include <stdio.h>int main(int argc , char *argv[]) {char s[100] ;int i , n1 , n2 , n3 , n4 , n5 ;n1 = n2 = n3 = n4 = n5 = 0 ;gets(s) ;for(i = 0 ; s[i] != '\0' ; ++i) {if(s[i] >= 'A' && s[i] <= 'Z')++n1 ;else if(s[i] >= 'a' && s[i] <= 'z')++n2 ;else if(' ' == s[i])++n3 ;else if(s[i] >= '0' && s[i] <= '9')++n4 ;else++n5 ;}printf("大写字母:%d\n" , n1) ;printf("小写字母:%d\n" , n2) ;printf("空格:%d\n" , n3) ;printf("数字:%d\n" , n4) ;printf("其他字符:%d\n" , n5) ;return 0 ;}第六章结构类型一、简答题1比如定义struct Student {char name[100] ;int age ;}stu ;则 , stu.age 即可引用结构体成员2. 不是必须为所有的成员赋初值,因为语法上没有强制要求。
四川省高等教育自学考试2016年4月(16·1次)

09:00-11:3014:30-17:0009:00-11:3000147 人力资源管理(一)00018 计算机应用基础00182 公共关系学00163 管理心理学00107 现代管理学00277 行政管理学00292 市政学00341 公文写作与处理03350 社会研究方法12656 毛泽东思想和中国特色社会主义理论体系概论03706 思想道德修养与法律基础00051 管理系统中计算机应用00054 管理学原理00070 政府与事业单位会计00053 对外经济管理概论04184 线性代数(经管类)00078 银行会计学00058 市场营销学04183 概率论与数理统计(经管类)00067 财务管理学00068 外国财政00139 西方经济学03708 中国近现代史纲要00051 管理系统中计算机应用00054 管理学原理00078 银行会计学00053 对外经济管理概论00061 国家税收04183 概率论与数理统计(经管类)00058 市场营销学00076 国际金融00067 财务管理学00150 金融理论与实务00068 外国财政04184 线性代数(经管类)03708 中国近现代史纲要00051 管理系统中计算机应用00045 企业经济统计学00102 世界市场行情00097 外贸英语写作00149 国际贸易理论与实务04183 概率论与数理统计(经管类)00100 国际运输与保险04184 线性代数(经管类)07750 国际投资学03708 中国近现代史纲要05844 国际商务英语00042 社会经济统计学原理00054 管理学原理00153 质量管理(一)00051 管理系统中计算机应用00061 国家税收00154 企业管理咨询00067 财务管理学00149 国际贸易理论与实务04183 概率论与数理统计(经管类)00151 企业经营战略00150 金融理论与实务03708 中国近现代史纲要04184 线性代数(经管类)00042 社会经济统计学原理00061 国家税收00159 高级财务会计00051 管理系统中计算机应用00149 国际贸易理论与实务00160 审计学备注:1.代码以A开头的为自考专科,B.D开头的为本科。
02243计算机软件基础(一)

02243计算机软件基础(一)[单项选择题]1、下列设备中()是输入设备。
A.复印机B.显示器C.软磁盘驱动器D.光笔参考答案:D[单项选择题]2、计算机硬件的五大部件中用于计算的部件是()。
A.输入设备B.存储器C.控制器D.运算器参考答案:D[单项选择题]3、市面上销售CPU时标出的P41.7GHz,说明CPU的主频是()。
A.4G赫兹B.1.7G赫兹C.4GBD.1.7GB参考答案:B[单项选择题]4、一台微型计算机必须具备的输入设备是()。
A.显示器B.键盘C.扫描仪D.数字化仪参考答案:B[单项选择题]5、关于磁盘格式化的叙述中,正确的是()。
A.未经格式化的磁盘不能使用B.格式化后的磁盘都可以启动计算机C.快速格式化可以保留磁盘上原有的文件D.格式化能够增大磁盘的容量参考答案:A[单项选择题]6、在Windows“资源管理器”的左窗格中,若显示的文件夹图标前带有加号(+),意味着该文件夹()。
A.含有下级文件夹B.仅含有文件C.是空文件夹D.不含下级文件夹参考答案:A[单项选择题]7、()桌面空白处,可以打开桌面操作的快捷选单。
A.右键单击B.左键单击C.右键双击D.左键双击参考答案:A[单项选择题]8、能在各种中文输入法之间切换的是按下()。
A.Ctrl+ShiftB.Ctrl+空格键C.Alt+FD.Shift+空格键参考答案:A[单项选择题]9、不能通过剪贴板对文件进行的操作是()。
A.剪切B.复制C.粘贴D.新建参考答案:D[单项选择题]10、在选定文件或文件夹后,下列操作中,不能修改文件或文件夹的名的操作是()。
A.在文件菜单中选择重命名命令,然后键入新文件名再敲回车键B.按F2键,然后键入新文件名再回车C.单击文件或文件夹的名称,键入新文件名再回车D.单击文件或文件夹的图标,键入新文件名再回车参考答案:D[单项选择题]11、关于剪切和删除的叙述中,()是正确的。
A.剪切和删除的本质相同B.不管是剪切还是删除,选定的文件都将放入“剪贴板”C.不管是剪切还是删除,选定的文件都将放入“回收站”D.不管是剪切还是删除,选定的文件都将在原位置消失参考答案:D[单项选择题]12、Word不能正常打开的文档类型是()。
2016年4月全国自考(计算机系统结构)真题试卷(题后含答案及解析)

2016年4月全国自考(计算机系统结构)真题试卷(题后含答案及解析)题型有:1. 单项选择题 2. 填空题 3. 简答题 4. 简单应用题 5. 综合应用题单项选择题1.以软件为主实现的机器称为( )A.模型机器B.模拟机器C.虚拟机器D.实际机器正确答案:C2.以下关于系列机软件兼容描述正确的是( )A.系列机软件必须保证向后兼容,力争向前兼容B.系列机软件必须保证向下兼容,力争向前兼容C.系列机软件必须保证向前兼容,力争向上兼容D.系列机软件必须保证向下兼容,力争向后兼容正确答案:A3.浮点数阶值采用二进制p位、尾数基值为rm,则该浮点数的最大阶值为( )A.2pB.2p-1C.2p-1D.2p-1-1正确答案:B4.为了使任何时候所需的信息都只用一个存储周期访问到,信息在主存中存放的地址要求是( )A.地址最低位为0B.地址最高位为0C.该信息宽度的一半D.该信息宽度的整数位正确答案:D5.存储器的最大频宽是指( )A.存储器瞬时访问的频宽B.存储器最大的传输速率C.存储器连续访问时的频宽D.存储器的实际传输速率正确答案:C6.总线控制定时查询方式的控制线的线数为( ) A.[log2N]B.1+[log2N]C.2+[log2N]D.3+[log2N]正确答案:C7.存储层次构成的主要依据是( )A.CPU的速度B.主存器件C.程序设计语言D.程序的局部性正确答案:D8.相联存储器的访问依据是( )A.内容B.地址C.速度D.周期正确答案:A9.并行向量处理机的互连网络是( )A.交换开关B.纵横交叉开关C.单总线D.多总线正确答案:B10.从指令和数据的多倍性来看,阵列机属于( ) A.单指令流单数据流B.单指令流多数据流C.多指令流单数据流D.多指令流多数据流正确答案:B填空题11.软件的功能可以用________或________实现。
正确答案:硬件、固件12.指令由________和________两部分组成。
02243计算机软件基础(一) 历年真题

精心整理2015年10月高等教育自学考试全国统一命题考试计算机软件基础(一)试卷(课程代码02243)本试卷共6页。
满分100分,考试时间150分钟。
1.C语言中的基本数据类型是A.数组、结构和指针B.字符型、整型和实型C.整型、实型和浮点型D.基本整型、长整型和短整型2.C语言中,下列数组定义语句正确的是3.有下列程序:4.已知:inta[]={10,20,30},*p;,下列语句中正确的是5.对于下列代码片段:6.带有头结点的循环单链表L是否为空的判定条件是A.L==NULLB.L!=NULLA.n-1B.nC.n+1D.要根据图来确定11.一个图的边集为{<a,b>,<a,c>,<b,d>,<b,e>,<c,d>},从e点开始对该图进行深度优先搜索,可能得到的顶点序列是A.e,b,d,a,cB.e,b,a,d,cC.e,b,a,c,dD.e,b,c,d,a12.采用设置监视哨的查找方法时,其实现的前提条件是A.序列采用顺序存储结构,并且必须按关键字值有序排列第二部分非选择题二、填空题(本大题共10小题,每小题2分,共20分)请在答题卡上作答。
16.在C语言程序的循环体内,若遇到____________语句,则立即结束循环。
17.函数被定义为____________类型时,它不会返回任何值。
18.C语言函数数据传递方式中,除利用参数传递外,还可以使用____________和全局变量传递方式。
三、简答题(本大题共4小题,每小题4分,共16分)请在答题卡上作答。
26.请给出for语句的语法格式,并简述其执行过程。
27.在inta[]={1,2,3},*p=&a[1];语句中,“*”和“&”各起什么作用?28.简述单链表的结构特点及其建立方法。
29.一裸哈夫曼树叶子结点的值是2、5、10、6、8,请画出该哈夫曼树,并说明建立过程。
计算机软件基础 自考历年试题

计算机软件基础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++完全等价的表达式是 CA. K=++nB. K+=n+1C. K=n,n=n+1D. n=n+1,K=n2、已知int a=5,b=3,*p=&b,*q=&a;下列赋值语句中与b=a等价的语句是 AA. *p=*q;B. p=q;C. *p=&q;D. *p=*b;3、已知C语言函数fun()的定义形式为void fun(char ch,float x){…}则正确调用fun()的语句是 DA. 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输入一字符串的正确语句是 AA. 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); CA. Sum的值不等于126或n的值小于5B. Sum的值不等于126且n的值小于5C. Sum的值等于126且n的值大于等于5D. Sum的值不等于126且n的值大于等于56、下列C语言程序的输出结果是 Cmain(){int a=13,m=0;switch(a%3){case 0: m++;case 1: m- -;case 2: m++;default: m++;}printf(“%d”,m);}A. -1B. 0C. 1D. 27、已知C语言程序段如下: Bstruct sa{int num;char name[10];float f;}stu[3]={{5,”li ming”,85.0},{6,”liu liangiang”,91.5},{7,”wang xin”,100}};struct sa *p; p=stu;则值为91.5的表达式是A. (*p).fB. (*++p).fC. (*p++).fD. (p++)->f8.下列程序是计算两个矩阵的乘积,其算法的时间复杂度是 D void mul_matrix(int n,int a[][5],int b[][5],int c[][5]){int i,j,k,x;for(i=0;i<n;i++){for(j=0;j<n;j++){x=0;for(k=0;k<n;k++)x+=a[i][k]*b[k][j];c[i][j];}}}A. O(n)B. O(log3n)C. O(n2)D. O(n3)9、若不带头节点的单链表的头指针为head,则判定该链表为空的条件是 AA. head==NULLB. Head!=NULLC. head->next==headD. head->next==NULL10、一个栈的进栈数据元素序列为1、2、3、4、5,则不可能为栈的出栈序列的是 DA. 2、3、4、1、5B. 1、5、4、3、2C. 2、3、1、4、5D. 5、4、1、3、211、一棵二叉树的先序遍历序列为ABCD,中序遍历序列为CBAD,则后序遍历序列是 CA. BCDAB. BCADC. CBDAD. ABDC12、在具有n个顶点、e条边的无向图的邻接表中,所有边的链表中边节点的总数是 CA. e/2B. eC. 2eD. 2e+n13、已知一个有序表为(12,18,24,35,47,50,62,83,90,115,134),用折半查找法查找值为90的元素时,查找成功所使用的比较次数是 BA. 1B. 2C. 3D. 414、当待排序序列中记录的关键字基本有序或记录个数较少时,则最好的排序方法是 DA. 基数排序B.冒泡排序C. 直接选择排序D. 直接插入排序15在瀑布模型中,将软件划分为若干个阶段,软件项目的需求分析一般属于 B A. 维护阶段 B. 开发阶段C. 运行阶段D.计划阶段二、填空题16、数学式“30<y<50”对应的C语言表达式是 y>30 &&y<5017、已知int k,x;则语句for(k=0,x=0;k<=9&&x!=10;k++)x+=2;执行后k的值是 518、已知int a[10]={1,2,3,5,6};则a[a[1]]= 319、下列C语言程序段的输出结果是 0,7int x=2,b[10]={5,6,7,8},*p=b;printf(“%d,%d\n”,b[6],p[x]);20.数据结构研究的主要内容包括数据的逻辑结构、物理结构(存储结构)以及他们之间的相互运算。
2016年4月c自考试题及答案

2016年4月c自考试题及答案一、选择题(每题2分,共20分)1. 下列哪项是计算机的主要硬件组成部分?A. 显示器B. 键盘C. 鼠标D. 打印机答案:A2. 以下哪个选项是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //这是注释D. /*这是注释答案:B3. 在Word中,以下哪个快捷键可以打开“查找和替换”对话框?A. Ctrl + FB. Ctrl + HC. Ctrl + GD. Ctrl + S答案:B4. 以下哪个选项是Excel中用于计算平均值的函数?A. SUMB. AVERAGEC. COUNTD. MAX5. 在PowerPoint中,以下哪个选项是正确的幻灯片切换效果?A. 淡入B. 淡出C. 弹出D. 所有选项答案:D6. 下列哪个选项是HTML文档中用于定义文档标题的标签?A. <h1>B. <p>C. <title>D. <body>答案:A7. 以下哪个选项是Java中用于定义类的关键字?A. interfaceB. classC. structD. enum答案:B8. 在数据库中,以下哪个选项是用于创建新表的SQL语句?A. SELECTB. INSERTC. CREATE TABLED. DROP TABLE答案:C9. 以下哪个选项是Unix/Linux系统中用于查看当前目录的命令?B. pwdC. cdD. mkdir答案:B10. 在网络协议中,以下哪个选项是用于域名解析的协议?A. FTPB. HTTPC. SMTPD. DNS答案:D二、填空题(每题2分,共20分)1. 在Windows操作系统中,文件资源管理器的默认快捷键是________。
答案:Win + E2. 在HTML中,用于定义无序列表的标签是________。
答案:<ul>3. 在JavaScript中,用于声明变量的关键字是________。
02243--2011年自考计算机软件基础(一)练习题和答案

全国2011年7月高等教育自学考试考前练习题计算机软件基础(一)(课程代码:02243)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.能正确表示逻辑关系“a≥10或a≤O”的C语言表达式是 ( )A. a>=10 0r a<=0 B.a>=0|a<=10C.a>=10&&a<=O D.a>=10||a<=O2.请读程序如下,若运行时从键盘上输入9876543210↙(↙表示回车),则下列程序的输出结果是( )# include<stdio.h>main( ){ int a;float b,c;scanf(“%2d%3f%4f”,&a,&b, &e);printf(“\na=%d,b=%f,c=%f\n”,a,b,c);}A. a=98, b=765, c=4321B.a=10, b=432, c=8765C.a=98, b=765.000000, c=4321.000000D.a=98, b=765.0, c=4321.03.有如下程序:main( ){ float x=2.0,y;if(x<0.0)y=0.0;else if(x<10. 0)y=l.0/x;else y=l.0;printf(“% f\n”,y);}该程序输出结果是 ( )A.O. 000000 B.0.250000C.0.500000 D.1.0000004.有如下程序:main( ){int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=O;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+ =a[i][j];printf(“% d\n”, s);}该程序的输出结果是 ( )A. 18 B.19C.20 D.215.下列程序的输出结果是 ( )int f( ){ static int i = 0 ;int s=1:s+=i;i++:return s;}main( ){int i,a=O;for(i=O;i<5;i+ +)a+ = f( );printf(“% d\n” ,a);}A.20 B.24C.25 D.156.设有定义:int n1=O,n2,*p=&n2,*q=&n1;,则以下赋值语句中与n2=n1;语句等价的是( ) A.*p=*q; B.p=q;C.*p=&n1;D.p=*q;7.若有以下程序:# include<stdio.h>void f(int n);main( ){void f(int n);f(5);}void f(int n){ printf(“%d\n”,n);}则以下说法中不正确的是 ( )A.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fB.若在主函数前对函数f进行说明,则在主函数和其后的其他函数中都可以正确调用函数fC.对于以上函数程序,编译时系统会提示出错信息;提示对f函数重复说明D.函数f无返回值,所以可用void将其类型定义为无值型8.有如下程序:main( ){int a[ ]={2,4,6,8,10},y=0,x,*p;p=&a[1];for(x=1;x<3;x++)y+=p[x];printf(“% d\n”,y);}则程序运行后的输出结果是( )A. 10B. 11C. 14D. 159.非空的循环单链表head的尾节点(由p所指向)满足 ( )A. p→next = NULLB. p=NULLC. p→next=headD.p=head10.数组A中,每个元素的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA 开始连续存放在存储器内,该数组按行存放时,元素A[8][5]的起始地址为 ( )A.SA+141 B.SA+144C.SA+222 D.SA+22511.具有5层节点的完全二叉树至少有个节点。
自考2243计算机软件基础(一) 历年真题集

高等教育自学考试计算机软件基础(一)试题课程代码:02243一、单项选择题(在每小题的四个备选答案中有一个正确的答案,将正确答案的序号写在题干的括号内。
每小题1分,共18分)1.关系运算符中优先级最低的运算符是( )。
A.“>=”和“<=”B.“>”和“<”C.“==”和“! =”D.“<=”和“<”2.下列各语句序列中,能够将变量u、s中最大值赋值到变量t中的是( )。
A. if(u>s)t=u;t=s;B. t=s;if(u>s)t=u;C. if(u>s)t=s;else t=u;D. t=u;if(u>s)t=s;3.数组定义为int a[3][2]={1,2,3,4,5,6},下列表述中正确的是( )。
A.数组元素a[3][2]的值为6B.数组元素a[6]的值为6C.数组元素a[0]的值为1D.a[0]不是int类型的数组元素4.指针变量p1、p2类型相同,要使p1、p2指向同一变量,哪一个语句是正确的( )。
A. p2=p1;B. p2=**p1;C. p2=&p1;D. p2=*p1;5.以“只读”方式打开文本文件a:\aa.dat,下列语句中哪一个是正确的( )。
A. fp=fopen(”a:\aa.dat”,”ab”);B. fp=fopen(”a:\aa.dat”,”a”);C. fp=fopen(”a:\aa.dat”,”wb”);D. fp=fopen(”a:\aa.dat”,”r”);6.下列数组声明语句中,正确的是( )。
A. int a[]={1,2,4,5}B. char a[5]={A,B,C,D,E};C. int a[5]={1,2};D. char a[5]=″Hello″;7.要从某数据表文件中物理删除一条记录,应使用命令( )。
A.先用DELETE命令,再用ZAP命令B.直接用ZAP命令C.先用DELETE命令,再用PACK命令D.直接用DELETE命令8.有关数据库的论述中,以下说法错误的是( )。
全国4月高等教育自学考试计算机软件基础(一)试题及答案解析

全国2018年4月高等教育自学考试计算机软件基础(一)试题课程代码:02243第一部分选择题(共40分)一、单项选择题(本大题共40小题,每小题1分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.C语言正确的类型说明符是( )A.CharB.charC.realD.string2.C语言中,已知:int i,j,k;下列运算符使用错误..的是( )A.i++B.j--C.++kD.8++3.下列叙述中错误..的描述是( )A.一个C源程序至少包括一个函数。
B.一个C源程序可以包含一个main()函数和其它函数。
C.主函数和其它函数可以互相调用。
D.C程序的基本单位是函数。
4.C语言中,字符串在计算机中的结束标志是( )A.空格B.换行C.′\0′D.′\t′5.C语言中,s=i++;等价于( )A.s=i;i=i+1;B.i=i+1;s=i;C.s=i;s=s+1;D.s=i;s=i+1;6.C语言中,赋值语句的赋值号(“=”)左边( )A.可以是常数B.可以是变量名C.只能是表达式D.可以是常数或表达式7.下列程序的运行结果是( )#include <stdio.h>#include <math.h>main(){int a=3;a=3+a%4+sqrt(9);a=a/3;a++;printf(″%d\n″,a);}A.2B.2.6C.3D.48.下列程序的运行结果是( )#include <stdio.h>main(){ int a=15;printf(″%d\n ″,(a>10?40:50));}A.10B.15C.40D.509.代数式bcad 3,其错误..的C 语言表达式是( ) A.a*d/b/c*3 B.3*a*d/b*cC.a/b*d/c*3D.3*a*d/b/c10.已知:int u=010,v=0x10,w=10;则printf(″%d,%d,%d\n ″,u,v,w);执行后的输出结果是( )A.8,8,10B.8,10,10C.8,16,10D.10,10,1011.C 语言中,下列运算符优先级最高的是( )A.>=B.==C.!=D.&&12.C 语言中,if 和switch 语句属于( )A.说明语句B.注释语句C.程序流程控制语句D.顺序执行语句13.已知:int a=1,b=2,c=3,d=4;则表达式a>b?a:(c>d?c:d)的值是( )A.1B.2C.3D.414.下列程序段的输出结果是( )int a=2,b=3,c=4,e=5;e=a+b>c && b==c;printf(″e=%d ″,e)A.e=0B.e=1C.e=4D.e=515.C 语言中,语句while 后一对圆括号中的表达式( )A.只能是逻辑表达式B.只能是关系表达式C.只能是关系表达式或逻辑表达式D.可以是任意表达式16.C 语言中,下列只循环一次的do-while 循环是( )A.doB.do{; {;} while(5); }while(k=0);C.doD.int k=5;{; do} while(-1); {k--;}while(k);17.C 语言程序中,for 循环语句中的表达式2为一非零常数且循环体内无break 语句及goto语句,则循环体的执行次数为( )A.0次B.表达式2表示的非零常数C.不确定,由循环体决定D.无穷次18.下列程序的运行结果是( )#include <stdio.h>mian(){ int x=3,y=6,z=0;while(x++!=(y=y-1)){ z++;if(y<x) break;}printf ("x=%d,y=%d,z=%d",x,y,z);}A.x=4,y=4,z=1B.x=5,y=4,z=1C.x=5,y=4,z=2D.x=5,y=5,z=119.C语言中,下列定义数组的正确语句是( )A.char a[5],b[7];B.char a[];C.int b[″7″];D.int j=3;int a[j];20.已知:char a[]={′0′, ′0′, ′0′, ′0′, ′0′, ′0′, ′0′, ′0′};则( )A.该数组元素个数为7B.该数组长度不确定C.该数组元素的最大下标是7D.该数组至少有9个数组元素21.已知:char str[]=″\t\v\56\7 morning″;则strlen(str)的值是( )A.8B.11C.16D.1722.已知:char a[]=″abcdef″;char b[]={′a′,′b′,′c′,′d′,′e′,′f′};则( )A.a数组的长度比b数组长B.a数组和b数组长度相等C.a数组的长度比b数组短D.a数组和b数组完全相同23.下列程序的运行结果是( )#include <stdio.h>int mul(int x){int z;z=x*x;return z;}main(){int a=10,k=2,m=1;a=a/(mul(k+m)/mul(k+m));printf(″%d\n″,a);}A.0B.1C.9D.1024.关于C语言函数,正确的叙述是( )A.实参与形参的类型应一致,当形参为整型时,实参也必须为整型。
2016年4月全国自考《计算机软件基础》真题及详解

(总分100,考试时间90分钟)
1.单项选择题
1.下列选项中,不合法的变量名称是()
A &23
B 6a
C ptr 5
D min
答案:B
解析:C语言规定,变量名只能由字母(指英文26个字母)、数字(指0~9十个数字)和下划线(一)三种字符组成,且第1个字符必须为字母或下划线。标识符命名不得为C语言中称为保留字的专用名词(也称为关键字)。
A date.year=2016;
B birthday.year=2016;
C date->year=2016;
D birthday->year=2016:
答案:B
8.下列程序段中算法的时间复杂度是()fபைடு நூலகம்r(int i=0;i<n;i++) a[i]=i*2;
A O(1)
B O(n)
C O(n 2 )
A Q.rear-Q.front
B Q.rear-Q.front-1.
C (Q.rear-Q.front+m)%m
D Q.rear-Q.front+1
答案:C
解析:若已知循环队列的体积m,头指针front和尾指针rear则循环队列中元素的个数为:(rear-front+m)%m。
13.一棵二叉树的先序遍历序列是A、B、C,该二叉树的树型种类有()
A 1种
B 3种
C 5种
D 7种
答案:C
14.在一个具有n个顶点的完全有向图中,任一个顶点的度等于()
A n-1
B n+l
C 2(n-1)
D 2(n+1)
全国自考计算机软件基础-试卷1_真题(含答案与解析)-交互

全国自考(计算机软件基础)-试卷1(总分70, 做题时间90分钟)1. 单项选择题1.一个完整的C程序由【】构成。
SSS_SINGLE_SELA 一个主程序和一个子程序B 一个主函数和若干个子函数C 一个主函数和一个其他函数D 一个主函数和若干个子程序分值: 2答案:B解析:一个完整的C程序是由一个主函数和若干个子函数构成的,并且程序的执行总是从主函数开始。
2.下列叙述中错误的是【】SSS_SINGLE_SELA 一个C程序至少包含一个函数B 一个C程序可以包含一个主函数和若干个其他函数C 主函数和其他函数之间可以相互调用D C程序的基本单位是函数分值: 2答案:C解析:主函数可以调用其他函数,但是其他函数不能调用主函数。
3.有以下程序: #include int fun(int a,int b) {if(b==0) return a; else return(fun(--a,--b)); } main() {printf("%d\n",fun(4,2)); } 程序的运行结果是【】SSS_SINGLE_SELA 1B 2C 3D 4分值: 2答案:B解析:因为题中实参为4和2,所以在函数fun中,形参a=4,形参b=2,不满足if语句的判定条件,所以执行else子句,继续调用函数fun,在此过程中a、b的值总是每调用一次函数则都减1,直至a=2,b=0为止,所以程序最后的结果为2。
4.局部变量的作用域是【】SSS_SINGLE_SELA 该变量所在的程序B 该变量所在的文件C 主函数D 该变量所在的函数分值: 2答案:D解析:在函数内部定义的变量称为局部变量,局部变量的作用城就是其所在的函数。
5.下列程序的输出结果是【】 #include fun(int x) {int p; if(x==0||x==1)return(3); p=x—fun(x一2); return p; } main() {printf("%d\n",fun(9)); }SSS_SINGLE_SELA 7B 2C 0D 3分值: 2答案:A6.下列关于C语言程序的叙述,正确的是【】SSS_SINGLE_SELA main()所在行的末尾必须有“;”B 主函数的函数体不一定用花括号({})括起来C 一个完整的C程序可以没有任何函数D C语言程序的简单语句必须用分号(;)作为语句的结束符分值: 2答案:D解析:一个完整的C程序可由一个主函数main组成,或由一个主函数和若干个子函数构成,main()所在行的末尾没有“;”,主函数的函数体必须用花括号括起来。
计算机软件基础(一)高等教育自学考试试卷与答案

计算机软件基础一、填空题1.程序设计的关键在于设计出一个好的算法。
2.数据、数据节点和数据项构成了数据组织的三个层次。
其中数据项是具有独立含义的最小标识单位。
3.数据的逻辑结构和物理结构之间的相互运算是通过算法来实现的。
4.所有节点按1对1的邻接关系构成的整体就是线性结构。
5.表长为0的线性表称为空表。
6.直接插入排序最好情况的时间复杂度为O(n) 。
7.程序段“i=l;while(i<=n)i=i*2”的时间复杂度为O(log2n) 。
8.c语言属于计算机高级语言,既可以用来写系统软件,也可以用来写应用软件。
9.算法是有穷的,而程序可以是无穷的。
10.实型常量在一般微型机中占用 4 个字节。
11.char型和int型的运算结果为int 型。
12.Getchar()和putchar()函数只能输入、输出 1 个字符。
13.源程序必须翻译成机器指令即机器语言,这一工作由编译系统来完成。
14.字符串的长度为串中字符的个数,但在内存中所占的字节数应比长度多1 。
15.执行:a=3,b=4,a=a+b,b=a+b后,则a和b的值分别为7 和11。
16.对于scanf(“%2d%3d%4d”,&a,&b,&c)语句,若键入:l 23456789,则变量b的值为345 。
17.设intx=10,y,z;执行y=z=x;x=y=-Z后,变量x的结果是 1 。
18.若有说明:Int a[][5]={1,2,3,4,5,6,7,8,9,10),则数组第一维的大小为2 。
19.在函数定义中,若没有返回值,其类型定义为空类型。
20.c语言规定不能嵌套定义函数,但可以嵌套调用函数。
21.程序中出现的/*…...*/表示注释,可以出现在程序的任何地方。
22.c语言的数据结构是以数据类型的形式描述出来的。
23.%运算符的运算对象就为整数。
24.getchar()函数只能出现在表达式的位置,接收该函数的值时可以用字符型或整型变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016年4月高等教育自学考试《计算机软件基础(一)》试题
课程代码:02243
一、单项选择题
1.下列选项中,不合法的变量名称是
A.a23 B.6a
C ptr_5 D.min
2.C语言中,已知inti=10,j;,下列语句中错误的是
A.j=i++;B.i=++i;
C.j=i+1;D.j=10++;
3.下列程序中while循环体执行的循环次数是
#include < stdio. h >
void main( )
{ int i=l,j=O,k=1;
while(i>0 ‖j<O && k<0)
j--; k--;
}
A.0 B.1 C.2 D.无穷次
4.对于语句char a[]={'0','0','0'};,则strlen(a)返回的结果是
A.0 B. 1 C.2 D.3
5.有下列程序:
#include < stdio, h >
void fun (int i, int j )
t
printf("%d,%d\n", ++i,j++ );
}
void main( )
{
int i=5,j=8;
fun(i,j);
printf( "% d,% d\n" ,i,j);
}
其执行后的输出结果是
A.6,8 B.6,8 C.6,9 D.6,9
5,8 6,9 5,8 6,9
6.执行下列语句后,i的值等于
int i=10,*p=&i;
*p+=2;
A.2 B.10 C.12 D.存在语法错误
7.对于下列代码片段:
struct date
{
intyear,month,day;
}birthday;
下列语句正确的是
A.date.year=2016;B.birthday.year=2016;
C.date—>year=2016;D.birthday—>year=2016;
8.下列程序段中算法的时间复杂度是
for(int i=0;i <n;i++)
a[i]=i*2;
A. 0(1)
B. O(n)
C. O(n2)
D. O(2n)
9.线性表在采用链表结构存储时其地址
A.必须是连续的B.部分地址是连续的
C.必须是不连续的D.可以连续,也可以不连续
10.在长度为n的顺序表的表尾插入一个元素时,其算法的时间复杂度是
A. O(1)
B. O(n)
C. O(n+1)
D. O(n2)
11.链表不具有的特点是
A.可随机访问任一元素B.插入、删除时不需要移动元素
C.不必事先分配存储空间D.所需空间与线性表的长度有关
12.循环队列Q可容纳的最多元素数为m,其队头和队尾指针分别是front和rear,则循环队列中现有的元素个数是
A. Q.rear-Q.front
B.Q.rear-Q.front-1
C. (Q.rear-Q.front+m)%m
D.Q.rear-Q.front+1
13.一棵二叉树的先序遍历序列是A、B、C,该二叉树的树型种类有
A.1种B.3种
C.5种D.7种
14.在一个具有n个顶点的完全有向图中,任一个顶点的度等于
A.n-1 B.n+1
C.2(n-1) D.2(n+1)
15.下列工作中,不属于软件维护范畴的是
A.改正程序中的错误和缺陷B.改进设计,以适应新的软、硬件环境
C.增加新的应用范围D.测试软件的功能是否达到预期要求
二、填空题
16.C语言提供的选择结构语句是if语句和语句。
17.调用函数在被调用函数之时,一般需要提前声明被调用函数。
18.C语言规定,(能/不能)在一个函数内部再定义其他函数。
19.C语言函数数据传递方式中,除利用参数传递外,还可以使用返回值和传递方式。
20.下面程序执行后,其输出是。
#include < stdio, h >
void fun (int n)
{
static int k=1;
k=k*n;
printf("%d,",k);
}
void main( )
{
fun(10);
fun(10);
}
21.C语言中专门的指针运算符有两个:&和*,前者是取地址运算符,后者是运算符。
22.在一个单链表中,要在p指针所指结点之后插入s结点,其操作是s—>next=p—>next和。
23.在一棵二叉树中,度为2的结点数是3,度为1的结点数是2,该树中总的结点数是。
24.有向图的邻接矩阵表示中,各行的非零元素个数为该行对应顶点的出度,各列的非零元素个数为该列对应顶点的度。
25.软件测试的目的是尽可能多地找出程序中的潜在错误。
在完全不了解程序内部结构和处理过程的情况下,对程序的每项功能进行测试,这种测试方法是测试。
三、简答题
26.简述break语句和continue语句在循环体内的作用。
27.指针变量自加1后,该变量的值一定增加1个字节吗?为什么?
28.如果对一个线性表的操作主要是以插入、删除为主,该线性表应采用什么存储结构?请说明理由。
题29图
四、程序分析题
30.下面程序的功能是把一维数组a内的元素逆序排列。
请在程序中的处填上正确的内容,完成该程序。
#include < stdio, h >
void main( )
{
int a[5]: {1,2,3,4,5} ,k;
for(int i:0, j=4; i<j; ){
k:a[i]; a[i]=a[j];a[j]=k;
}
}
31.请说明下面函数fun的功能。
double fun (int * a, int n)
{
double sum =0.0;
int * p = a;
while ( p < a + n)
{
sum=sum+ *p;
p++;
}
sum: sum/n;
return sum;
}
fun函数的功能是:。
32.下面函数采用设置监视哨方法在已具有n个元素的一维数组x内查找值为k的元素。
请在程序中的处填上正确的内容,完成该程序。
int seek( int x[], int k, int n)
{
int i;
i=n;
①
while(x[i]!=k)
②
return i;
}
33.下面函数采用直接插入排序方法对一维数组x内的n个元素进行排序,请在程序中的处填上正确的内容,完成该函数的功能。
void fun( int x[],int n)
int i ,j;
for(i=2;i<=n;i++ ) {
x[O] =x[i];
j=i-1;
while(①) {
x[j+1]=x[j];
j--;
}
②
}
五、程序设计题
34.请编写一算法,对具有n个元素的一维数组x实现折半查找,数组内的元素已按升序排列。
35.请编写一个函数,从带表头结点的单链表中删除第i个元素(需要给出链表结点的结构定义)。