通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
第1题
若有以下程序
main() { int a=6, b=0, c=0; for(;a;) { b+=a; a-=++c; } printf("%d,%d,%d\n",a,b,c); }
则程序的输出结果是
1,14,3
0,18,3
0,14,3
0,14,6
第2题
循环队列的存储空间为Q(1:200),初始状态为front-rear=200,经过一系列正常的入队与退队操作后,front-rear-1,则循环队列中的元素个数为
0或200
1
2
199
第3题
以下叙述中正确的是
对于逻辑表达式:a++&&b++,设a的值为0,则求解表达式的值后,b的值会发生改变
对于逻辑表达式:a++||b++,设a的值为1,则求解表达式的值后,b的值会发生改变
关系运算符的结果有三种:0,1,-1
else不是一条独立的语句,它只是语句的一部分
第4题
计算机软件包括
算法和数据
程序和数据
程序和文档
程序、数据及相关文档
第5题
若有定义语句:char*s1-"OK",*s2="ok";以下选项中,能够输出"OK"的语句是
if(strcmp(s1,s2)!=0)puts(s1);
if(strcmp(s1,s2)!=0)puts(s2);
if(strcmp(s1,s2)==1)puts(s1) ;
if(strcmp(s1,s2)==0)puts(s1);
第6题
有以下程序
#include <stdio.h> int f(int n); main() { int a=3,s; s=f(a); s=s+f(a) printf("%d\n",s); } int f(int n) { static int a=1; n+=a++; return n; }
程序运行后的输出结果是
9
8
7
10
第7题
在数据库设计中,描述数据间内在语义联系得到E-R图的过程属于
逻辑设计阶段
需求分析阶段
概念设计阶段
物理设计阶段
第8题
软件需求规格说明的内容应包括
E-R模型
算法详细设计
软件的主要功能
软件总体结构
第9题
在黑盒测试方法中,设计测试用例的根据是
数据结构
程序调用规则
模块间的逻辑关系
软件要完成的功能
第10题
某二叉树共有13个结点,其中有4个度为1的结点,则叶子结点数为
5
4
3
第11题
下列结构中属于线性结构链式存储的是
双向链表
循环队列
二叉链表
二维数组
第12题
#include <stdio.h> main() { int a[]={10,20,30,40}; *p=a,i; for (i=0;i<=3;i++) { a[i]=*p; p++; } printf("%d\n",a[2]; }
20
30
40
第13题
某系统结构图如下图所示,则该系统结构图的宽度是
n
第14题
某系统总体结构如下图所示,该系统结构图的最大扇出数是
第15题
下列函数的功能是void fun(char*a,char*b){while((*b=*a)!='\0'){a++;b++;}}
使指针b指向a所指字符串
将a所指字符串和b所指字符串进行比较
将a所指字符串赋给b所指空间
检查a和b所指字符串中是否有'\0'
第16题
某二叉树共有399个结点,其中有199个度为2的结点,则该二叉树中的叶子结点数为
不存在这样的二叉树
200
198
第17题
以下不合法的数值常量是
1e1
011
Oxabcd
8.0E0.5
第18题
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
一条C语句可能会被转换成多条机器指令
一条C语句对应转换成一条机器指令
一条C语句可能会被转换成零条机器指令
某种类型和格式的C语句被转换成机器指令的条数是固定的
第19题
有三个关系R,S和T如下图所示,则由关系R和S得到关系T的操作是
选择
投影
交
并
第20题
void fun (chars) { char a[10]; strcpy(a,"STRING"); s=a; } main() { char*p="PROGRAM"; fun(p); printf("%s\n",p); }
程序运行后的输出结果是(此处口代表空格)
STRING口口口口
PROGRAM
STRING口口口
STRING
第21题
第三范式是在第二范式的基础上消除了
非主属性对键的传递函数依赖
非主属性对键的部分函数依赖
多值依赖
以上三项
第22题
下列叙述中错误的是
循环链表是循环队列的存储结构
二叉链表是二叉树的存储结构
栈是线性结构
循环队列是队列的存储结构
第23题
有以下结构体说明、变量定义和赋值语句struct STD{char name[10];int age;char sex;}s[5].*ps;ps=&s[0];则以下scanf函数调用语句有错误的是
scanf("%d",&s[0].age);
scanf("%c",&(ps->sex));
scanf("%s",s[0].name);
scanf("%d",ps->age);
第24题
#include <stdio.h> int f(int x, int y) { return((y-x)*x);} main() { int a=3,b=4,c=5,d; d=f (f(a,b), f(a,c)); printf("%d\n",d); }
第25题
函数的返回值不能是结构体类型
函数的返回值不能是结构体指针类型
在调用函数时,可以将结构体变量作为实参传给函数
结构体数组不能作为参数传给函数
第26题
某图书集团数据库中有关系模式R,其中要求①每个书店的每种书籍只在该书店的一个部门销售;②每个书店的每个部门只有一个负责人;③每个书店的每种书籍只有一个库存数量。则关系模式R最高是
1NF
2NF
3NF
BCNF
第27题
下列叙述中正确的是
在C程序中main函数的位置是固定的
C程序中所有函数之间都可以相互调用
每个C程序文件中都必须要有一个main函数
在C程序的函数中不能定义另一个函数
第28题
在C语言程序设计中,所有函数必须保存在一个源文件中
在算法设计时,可以把复杂任务分解成一些简单的子任务
只要包含了三种基本结构的算法就是结构化程序
结构化程序必须包含所有的三种基本结构,缺一不可
第29题
有两个关系R和S如下图所示,则由关系R得到关系S的操作是
插入
连接
第30题
#include <stdio.h> main() { int y=10; while(y--); printf("y=%d\n",y); }
程序执行后的输出结果是
y=0
y=-1
y=1
while构成无限循环
第31题
顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的
顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
顺序存储结构能存储有序表,链式存储结构不能存储有序表
链式存储结构比顺序存储结构节省存储空间
第32题
若变量已正确定义,以下选项中非法的表达式是
a!=4||'b'
'a'%4
'a'=1/2*(x=y=20,x*3)
'A'+ 32
第33题
算法的空间复杂度是指
算法在执行过程中所需要的计算机存储空间
算法所处理的数据量
算法程序中的语句或指令条数
算法在执行过程中所需要的临时工作单元数
第34题
软件需求规格说明书的作用不包括
软件验收的依据
用户与开发人员对软件“做什么"的共同理解
软件设计的依据
软件可行性研究的依据
第35题
#include <stdio.h> void main() { char b,c; int i; b='a';c='A'; for(i=0;i<6;i++) { if(i%2) putchar(i+b); else putchar(i+c); } printf("\n"); }
ABCDEF
aBcDeF
abcdef
AbCdEf
第36题
#include <stdio.h> void fun(char **p) { ++p; printf("%s\n",*p); } main() { char *a[]=("Morning","Afternoon","Evening","Night"); fun(a); }
程序的运行结果是
fternoon
Morning
orning
Afternoon
第37题
对于变量而言,"定义"和“说明"这两个词实际上是同一个意思
在复合语句中不能定义变量
全局变量的存储类别可以是静态类
函数的形式参数不属于局部变量
第38题
设栈的存储空间为S(1:50),初始状态为top-0,现经过一系列正常的入栈与退栈操作后,top=51,则栈中的元素个数为
不可能
50
0
第39题
结构化程序包括的基本控制结构是
程序与子程序
选择结构、循环结构与层次结构
顺序结构、选择结构与循环结构
模块结构、选择结构与层次结构
第40题
#include <stdio.h> int fun (int a,int b) { if (b==0) return a; else return (fun(--a,--b)); } main() { printf("%d\n",fun(4,2)); }
第41题
给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正确时,程序输出:
x1=5.000000,x2=3.000000,x1*x1 +x1*x2=40.000000
不得增行或删行,也不得更改程序的结构!
#include <stdio.h> #include <stdlib.h> double f1(double x) { return x*x; } double f2(double x, double y) { return x*y; } /**********found**********/ __(1)__ fun(int i, double x, double y) { if(i==1) { /**********found**********/ return __(2)__(x); } else { /**********found**********/ return __(3)__(x,y); } } main() { double x1=5, x2=3, r; r = fun(1, x1, x2); r += fun(2, x1, x2); printf("\nx1=%f, x2=%f, x1*x1+x1*x2=%f\n",x1, x2, r); system("pause"); }
第42题
给定程序函数fun的功能是:比较两个字符串,将长的那个字符串的首地址作为函数值返回。
请改正程序中的错误,使它能得出正确的结果。
不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include <conio.h> #include <stdio.h> /**********found**********/ char fun(char *s, char *t) { int s1=0, t1=0; char *ss, *tt; ss=s; tt=t; while(*ss) { s1++; /**********found**********/ (*ss)++; } while(*tt) { t1++; tt++; } if (t1>s1) { return t; } else { return s; } } main() { char a[80],b[80]; printf("\nEnter a string:"); gets(a); printf("\nEnter a string again:"); gets(b); printf("\n\nThe longer is:\n\n%s\n",fun(a,b)); system("pause"); }
第43题
请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO,回文是指顺读和倒读都一样的字符串。
例如,字符串LEVEL是回文,而字符串123312就不是回文。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun中填入你编写的若干语句。
#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 80 int fun(char *str) { int i,n=0,fg=1; char *p=str; while(①) { ② ③ } for(i=0;i<n/2;i++) { if(④) { ⑤ ⑥ } } return fg; } main() { char s[N]; void NONO(); printf("Enter a string:"); gets(s); printf("\n"); puts(s); if(fun(s)) { printf("YES\n"); } else { printf("NO\n"); } NONO(); system("pause"); } void NONO() {/* 请在此函数内打开文件,输入测试数据, 调用函数,输出数据,关闭文件。 */ FILE *rf, *wf; int i; char s[N]; rf=fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0; i<8; i++) { fscanf(rf, "%s", s); if(fun(s)) { fprintf(wf, "%s YES\n", s); } else { fprintf(wf, "%s NO\n", s); } } fclose(rf); fclose(wf); }
选择题(0 - 40题,共计40分) 填空题(包括程序填空题,程序修改题,程序设计题)(41-43题 共计60分)