-程序填空部分试题及答案
C语言期末考试题库试题及答案

1【程序填空】————-—————————————---————--———-———————-—--——-—-———————-——题目:下面函数为二分法查找key值.数组中元素已递增排序,若找到key则返回对应的下标,否则返回—1。
-——-—---—-——--———————-—————————--————-——---————-----——-*/#include<stdio。
h〉fun(int a[],int n,int key){int low,high,mid;low=0;high=n-1;/***********SPACE***********/while(【low〈=high】){mid=(low+high)/2;/***********SPACE***********/if(key<a[mid]) 【high=mid-1】;/***********SPACE***********/else if(key〉a[mid])【low=mid+1】;/***********SPACE***********/else 【return(mid)】;}return -1;}void main(){int a[10]={1,2,3,4,5,6,7,8,9,10};int b,c;b=4;c=fun(a,10,b);if(c==—1)printf("not found");else printf(”position %d\n",c);}/*—--———-——-———--————--————---—-—-———-——-—----——------——- 2 【程序填空】-——-———————-——-—————-—---—-—--—--—————---—-—-—-—--——————-题目:求n!,n值由键盘输入。
—————————-———---————---—-—————-——————————-—-—-----—--—-*/#include<stdio。
C语言期末考试复习资料-程序填空部分试题及答案

【程序填空】-——-—----——--—————--—-—-——-—-——----—--—-—-——------———-——- 功能:下面的程序是求1!+3!+5!+……+n!的和。
--——------—-—--——-—----—---——----————-—-———-—-—-—-----—*/#include <stdio.h〉main(){long int f,s;int i,j,n;/***********SPACE***********/【?】;scanf("%d”,&n);/***********SPACE***********/for(i=1;i<=n;【?】){f=1;/***********SPACE***********/for(j=1; 【?】;j++)/***********SPACE***********/【?】;s=s+f;}printf(”n=%d,s=%ld\n",n,s);}/*-—--——-——-—-——---—-----—--——--—-—--—----—---—-—-—--——-—【程序填空】----—---—---—--—-—————-—————-——---—--—----————-—--—--——-—功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出其和。
--———-—--——-—--——-——--—--———--—————-——--—--—-———--—--——*/ #include <stdio.h〉#include <conio.h〉main(){int i,n,sum;sum=0;/***********SPACE***********/【?】;/***********SPACE***********/for(i=1; 【?】;i++)/***********SPACE***********/if(【?】)if(i%2==0){sum=sum+i;n++;printf("%6d",i);/***********SPACE***********/if(【?】)printf(”\n");}printf(”\ntotal=%d”,sum);}/*———-—----———----—----—---———————--—-————----——----—---—【程序填空】——---—————-———-—————---—-—----—--——-—--—--——-—--——————-——功能:求100-999之间的水仙花数说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。
C语言程序设计选择填空习题及答案

习题一一、选择题1.C程序的基本单位是(A)。
A.函数B.文件C.语句D.字符2.C程序中的变量(B)。
A.不用说明B.先说明后引用C.先引用后说明D.引用和说明顺序无关3.变量的说明在(B)。
A.执行语句之后B.执行语句之前C.执行语句当中D.位置无关4.C语言是一种(C)。
A.机器语言B.符号语言C.高级语言D.面向对象的语言二、填空题1.一个C程序总是从主函数开始执行。
2.结构化程序由顺序、选择、循环三种基本结构构成。
3.一个C程序只有一个名为main的主函数。
4.C程序中的每个语句以分号结束。
5.C程序中,函数由函数首部和函数体组成。
6.每个基本结构有一个入口和一个出口,没有死循环和死语句。
7.算法是计算机解决问题所依据的步骤。
习题二一、选择题1.下列数据中属于字符串常量的是( B)。
A.ABC B."ABC" C.'abc' D.'A'2.在计算机内存中,'\n'占用的字节数是( C)。
A.4 B.3 C.1 D.23.字符串"ABC"在内存中占用的字节数是( D)。
A.6 B.8 C.3 D.44.在C语言中,合法的长整型常数是( B)。
A.568701400 B.0L C.0.03546287 D.2.654e115.char型常量在内存中存放的是( A)。
A.ASCII代码值B.BCD代码值C.十进制代码值D.内码值6.下列各项中正确的标识符是( D)。
A.?bb B.a=8 C. b.βD.b_47.下列不正确的转义字符是( D)。
A.\\ B.\ 0 C.\" D.0x48.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。
A.0 B.1 C.2 D.39.设a的值为5,执行下列语句后,b的值不为2的是( C)。
A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/210.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( C)。
《C语言程序设计》试题九及答案

《C语言程序设计》试题九 (1)一、选择题 (1)二、填空题 (2)三、程序填空与算法题 (3)四、编程题 (5)《C语言程序设计》试题九答案 (6)《C语言程序设计》试题九一、选择题1.一个C语言程序是由()构成。
A.语句 B.行号 C.数据 D.函数2.下面标识符中正确的是()。
A.d&ef B.6a C.z4x5c D.a3/b43.在C语言中,存储一个字符型、整型、单精度实型变量所需的空间是()。
型、单精度实型变量所需的空间是()。
A.1、2、4 B.1、1、4 C.1、2、8 D.2、2、84.为了避免嵌套的条件分支语句 if--else中的else总是与()组成成对关系。
A. 缩排位置相同的B. 在其之前未配对的C. 在其之前未配对的最近的ifD. 在同一行上的if5.下列表达式的结果正确的是()。
int aa,bb,cc,dd;aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;(aa+1==2)?bb=aa+2:aa+3A.2 B.3 C. 1 D.56.设有int x=11 ;则表达式(x+1/3)的值是()。
A.3 B. 4 C. 11 D.127.设有字符串A=“He has 钱!”,则该字符串的长度为()。
A. 9B. 10C. 11D. 88.有如下程序段,则正确的执行结果是()int m=3;while(m<=5){ printf(“%d”,m-3); m++;}A. 0 0 0 B.0 1 2 C.1 2 3 D.无结果9.执行语句:printf("%d",(a=2)&&(b= -2);后,输出结果是()。
A.无输出 B.结果不确定 C.-1 D. 110.有如下定义类型语句,若从键盘输入数据,正确的输入语句是()。
int x; char y; char z[20];A. scanf("%d%c%c",&x,&y,&z);B. scanf("%d%c%s",&x,&y,&z);C. scanf("%d%c%c",&x,&y,z);D. scanf("%d%c%s",&x,&y,z);11. struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是()。
程序设计基础试题一及答案

程序设计基础试题一及答案一、填空题(每空1分,共10分)(1)__________语言是计算机唯一能够识别并直接执行的语言。
(2)算法的复杂度包含两方面:和。
(3)__ 函数是C语言程序启动时惟一的入口。
(4)逗号表达式(a=3*4,a*5),则a的值为。
(5)数据的存储结构有两种:一种是顺序存储结构,另一种是______________。
(6)图的遍历有两种:_________________和广度优先搜索。
(7)对栈中元素的操作是按照“______________”的原则进行的。
(8)从是否关心软件内部结构和具体实现的角度,把软件测试分为__________________和_______________两类。
二、单选题(每题1分,共30分)(1)世界上第一台电子计算机的英文名字为()。
A) EDVAC B)EDSAC C)ENIAC D) UNIVAC(2)计算机的软件系统可分为()。
A)程序和数据 B)操作系统和语言处理系统C)程序、数据和文档 D)系统软件和应用软件(3)与十进制数100等值的二进制数是()。
A)0010011 B)1100010 C)1100100 D)1100110(4)一个算法除了能对合法的输入数据得到正确的结果外,还应对非法的或者不合乎要求的输入数据作出正确合理的处理,这体现了算法的()。
A)正确性 B)健壮性 C)可读性 D)高效率(5)程序设计应该遵守()的设计原则。
A) 自顶向下,逐步细化B) 自底向上,逐步细化C) 自底向上,同步扩展D) 自顶向下,同步扩展(6)下列关于注释的说法哪个是错误的()。
A)注释不是程序中的可执行语句B)注释对于程序的执行有很重要的意义C)注释将在程序的编译阶段被编译器剔除D)编程时在程序中添加适当的注释是一个良好的编程风格(7)下面四个选项中,不合法的用户标识符是()。
A)sum B)stu_name C)a>b D)_total(8)设c是字符变量,以下语句中错误的是()。
C语言试题及答案解析(二)

C语言试题及答案解析(二)班级姓名学号____________一、选择题(20分)1.1966年,Bohra和Jacopini提出的三种基本程序设计结构是:________A.if、while和for; B. switch、do-while和for;C.while、do-while和for;D.顺序结构、分支结构和循环结构。
2.算法的特征不包括:______。
A.有穷性 B.可行性 C.确定性 D.有1个或者多个输入。
3.C语言源程序的基本组成单位是______。
A.函数 B. 语句 C. 声明和语句 D. 文件4.下列标识符中,只有______是合法的。
A.if B. 3ab C. Int D. A-45.下列常量中,只有______是合法的。
A.3e-0.3 B. ‘abc’ C. 02a1 D. ‘\377’6.下列说法中正确的是:______。
A.C语言中的for语句的三个表达式都可以省略,而且分号也可以省略。
B.宏替换比函数调用的执行速度慢。
C.实质上,C语言中的指针就是一个变量的地址。
D.C语言中的任何函数都可以由程序员命名。
7.C语言中,运算对象必须是整型的运算符是_______。
A./ B. % C. + D. -8.以下叙述中错误的是_______。
A.C语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句9.以下叙述中正确的是_______。
A.调用printf函数时,必须要有输出项B.使用putchar函数时,必须在之前包含头文件stdio.hC.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10.以下关于函数的叙述中正确的是_______。
A.每个函数都可以被其它函数调用(包括main函数)B.每个函数都可以被单独编译C.每个函数都可以单独运行D.在一个函数内部可以定义另一个函数11.有以下程序段typedef struct NODE{int num;struct NODE *next;} OLD;以下叙述中正确的是_______。
《C语言程序设计》试题2及答案

二一、填空题1、C语言中普通整型变量的类型说明符为,在内存中占字节,有符号普通整型的数据范围是。
2、C语言中基本的数据类型有:、、。
3、设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是。
4、共用体和结构体的定义格式类似,不同点是。
5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是。
6、有语句:char A[ ]={”I am a student”};该字符串的长度是,A[3]= 。
7、符号”a”和’a’的区别。
8、下列程序的输出结果是。
int ast(int x,int y,int * cp,int * dp){ *cp=x+y; *dp=x-y; }main(){ int a=4,b=3,c,d;ast(a,b,&c,&d);printf("%d,%d/n",c,d); }二、选择题1、以下选项中属于C语言的数据类型是(B )。
A. 复合型B. 双精度型C. 逻辑型D. 集合型2、以下说法中正确的是( C )。
A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3、选出下列标识符中不是合法的标识符的是( D )。
A. hot_doB. cat1C. _priD. 2ab4、下列描述中不正确的是( C )。
A.字符型数组中可能存放字符串。
B.可以对字符型数组进行整体输入、输出。
C.可以对整型数组进行整体输入、输出。
D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
5、若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( C )。
汇编语言试题及参考答案1

汇编1一、单项选择题(每小题1分,共10分)1、十进制数269变换为十六进制数是(C)。
(A)10B (B)10C (C)10D (D)10E2、指令mov 100[si][bp],ax目标操作数的隐含段为(B )。
(A)数据段(B)堆栈段(C)代码段(D)附加段3、以下语句汇编后,CENTH的值是(C )buf1 dw 8,19,buf2 db 6,'abc$',10 dup('5'),CENTH equ buf2—buf1A.14B.8C.4D.174、若栈顶物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为(D)。
(A)20102H (B)20101H (C)200FFH (D)200FEH5、执行下列指令后,正确的结果是(B)。
MOV AL,100。
MOV BL,-2(A)AL=100H,BL=02H (B)AL=64H,BL=0FEH(C)AL=64H,BL=82H (D)AL=100H,BL=0FEH6、假定AX的内容为-32768,在执行了指令NEG AH后,标志位(SF,OF)为(D )。
(A)0,0 (B)0,1 (C)1,0 (D)1,17、设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为(B)。
(A)OF=1,CF=0 (B)OF=1,CF=1 (C)OF=0,CF=0 (D)OF=0,CF=18、当A≥B时转移的条件转移指令为(A,B为带符号数)(D )。
(A)JA (B)JAE (C)JG (D)JGE9、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(A )。
(A)MOV AL,00H (B)AND AL,00H (C)XOR AL,AL (D)SUB AL,AL10、已知CALL BX执行前SP=100H,执行后SP的内容为(D)。
(A)100H (B)102H (C)98H (D)0FEH二、填空题(每空1分,共10分)1、(00101011)B+(13)D+(1B)H=(123 )Q2、IBM PC机内存容量最大为(1M )B,要寻找这样大的空间,需要()根地址线。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【?】;
/***********SPACE***********/
for(i=1;【?】;i++)
/***********SPACE***********/
if(【?】)
if(i%2==0)
{
sum=sum+i;
n++;
printf("%6d",i);
for(【?】;i<=n;i++)
{
/***********SPACE***********/
【?】;
while(r==0)
{
printf("*%d",i);
/***********SPACE***********/
【?】;
r=n%i;
}
}
printf("\n");
}
第9题
/*-------------------------------------------------------
下边程序能实现这种分解过程。当N=150,输出以下分解结
果:N= 1* 2* 3* 5* 5
-------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
main()
{
int n,i,r;
【程序填空】
---------------------------------------------------------
功能:对任一整数N(N≠0),它都可以分解成1(或-1)和一些质数(素
数)因子的形式。
例如:当N=150时,可分解成1×2×3×5×5;
当N=-150时,可分解为-1×2×3×5×5。
---------------------------------------------------------
功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作
为终止标记。
-------------------------------------------------------*/
#include <stdio.h>
【?】;
if (k%15==0)
{
printf("%5d",m);i++;
/***********SPACE***********/
if(i%10==0)【?】;
}
}
}
第6.题/*-------------------------------------------------------
【程序填空】
m=n;n=r;【?】;
}
/***********SPACE***********/
gcd=【?】;
lcm=p/gcd;
/***********SPACE***********/
printf("gcd=%d,lcm=%d\n",【?】);
}
第8.题/*-------------------------------------------------------
for(i=0;i<=N-1;i++)
printf("%5d",a[i]);
printf("\n");
}
第3.题./*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:统计一个字符串中的字母、数字、空格和其它字符的个数。
-------------------------------------------------------*/
#include <stdio.h>
/***********SPACE***********/
for(i=1;i<=n;【?】)
{
f=1;
/***********SPACE***********/
for(j=1;【?】;j++)
/***********SPACE***********/
【?】;
s=s+f;
}
printf("n=%d,s=%ld\n",n,s);
-------------------------------------------------------*/
#include <stdio.h>
main()
{
long int f,s;
int i,j,n;
/***********SPACE***********/
【?】;
scanf("%d",&n);
#include <stdio.h>
main()
{
int m,n,r,p,gcd,lcm;
scanf("%d%d",&m,&n);
if(m<n) {p=m,m=n;n=p;}
p=m*n;
r=m%n;
/***********SPACE***********/
while(【?】)
{
/***********SPACE***********/
【?】;
puts(s1);
for(k=0;k<4;k++)
printf("%4d",a[k]);
}
第10题/*-------------------------------------------------------
b[1]++;
/***********SPACE***********/
else if (【?】)
b[2]++;
else
b[3]++;
}
main ()
{
char s1[80];int a[4]={0};
int k;
/***********SPACE***********/
【?】;
gets(s1);
/***********SPACE***********/
/***********SPACE***********/
if(【?】)
printf("\n");
}
printf("\ntotal=%d",sum);
}
第4.题./*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
#include <stdio.h>
main()
{
int m,n,k,i=0;
for(m=100;m<=1000;m++)
{
/***********SPACE***********/
【?】;
n=m;
do
{
/***********SPACE***********/
k=k+【?】;
n=n/10;
}
/***********SPACE***********/
{ int i,j,k,m;
m=n;
/***********SPACE***********/
【?】;
for(i=1;i<*********SPACE***********/
【?】;
m=(m-j)/10;
k=k+j*j*j;
}
if(k==n)
/***********SPACE***********/
main()
{
int x,i=0,j=0;
float s1=0,s2=0,av1,av2;
scanf("%d",&x);
/***********SPACE***********/
while(【?】)
{
if(x%2==0)
{
s1=s1+x;
i++;
}
/***********SPACE***********/
功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出
其和。
-------------------------------------------------------*/
#include <stdio.h>
#include <conio.h>
main()
{
int i,n,sum;
sum=0;
【?】;
/***********SPACE***********/
for(j=i+1;【?】;j++)
if(a[j]<a[k]) k=j;
/***********SPACE***********/
if(【?】)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}