《2018年韩山师范学院本科插班生考试试题《高级语言程序设计》A卷(共11页).doc》由会员分享,可在线阅读,更多相关《2018年韩山师范学院本科插班生考试试题《高级语言程序设计》A卷(共11页).doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上韩山师范学院2018年本科插班生考试试卷计算机科学与技术专业 高级语言程序设计试卷(A卷)题号一二三四五总分评卷人得分得分评卷人一、填空题(每空2分,共10分)1C程序源文件的后缀名是 .C 。2设变量a的值是1,则表达式(2+a)(3)的值是_ _ 。3. fgetc函数的作用是从指定文件读入一个 字符 。4. C语言程序至少必须包含一个 main 函数。5. 若有定义:int a35;则数组a中共有_15_个元素。得分评卷人二、单项选择题(每题2分,共30分)题号12345678910答案题号1112131415答案1C语言程序编译时,程序中的注释部分_B_。A不
2、参加编译,但会出现在目标程序中B不参加编译,也不会出现在目标程序中C参加编译,但不会出现在目标程序中D参加编译,并会出现在目标程序中2以下程序执行后sum的值是_A_。A15 B不确定 C14 D0main() int i , sum=0;for(i=1;i6;i+) sum+=i;printf(%dn,sum); 3下列程序段的输出结果是_A_。A2 1 4 3 B1 2 1 2 C1 2 3 4 D2 1 1 2void fun(int *x, int *y) printf(%d %d , *x, *y); *x=3; *y=4;main() int x=1,y=2;fun(&y,&x);
3、printf(%d %d,x, y);/解析:本题中函数传递的是变量的地址,如果形参在函数中发生改变,相对应的实参也就有了改变4以下程序的输出结果是_D_。main() char c=a;printf(%c,c+25);AA B a Ca+25 Dz5. 以下能正确定义,且赋初值的语句是_B_A. int n1=n2=10; B. char c=32; C. Float f=f+1; D. double x=12.3E2.56. 以下程序的输出结果是_B_main() char ch35=AAAA,BBB,CC;printf(%sn,ch1); /指的是第二个元素AAAAA BBBB CBBB
4、CC DCC7. 设有定义:int a=3,b,*p=&a;则下列使b不为3的语句是_D_A.b=*&a B.b=*pC.b=a D.b=*a8. 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是_A_。Ascanf(%d%d%d,&a,&b,d); Bscanf(%d%d%d,&a,&b,&d);Cscanf(%d%d%d,a,b,d); Dscanf(%d%d%d,a,b,*d);9.有定义语句:int x, y;若要通过scanf(%d,%d,&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是_
5、C_。A11, 12 B11 12C11,12 D11,1210有以下程序的输出结果是 _ D_ char ch;int k;ch=a;k=12;printf(%c,%d,ch,ch,k);printf(k=%d,k); A.因为变量类型与格式描述符的类型不匹配输出无定值 B.输出项与格式描述符个数不符,输出为零值或不定值 C.a,97,12k=12 D.a,97k=1211有以下程序,输出是_B_ #include void main() int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3; printf(“%d, %d, %d, %d”,a,b,c
6、,d);A. 0,1,2,0 B. 0,0,0,3 C. 1,1,2,0 D.编译有错 12. 判断char型变量c1是否为小写字母的正确表达式为_D_A. a=c1=a)&(c1z) C.( a=c1) D.(c1= a)&(c1=z)13. 设有以下结构类型说明和变量定义,则变量a在内存所占字节数是_ struct stud char num6; double ave; a;A14 B. 18 C26 D2214. 下面表达式中_C_的值等于0。(设:int a=1;b=0;) A.!a=!b B.!a|b C.!(a=b) D.a&!b15. 在位运算中,操作数每左移一位,其结果相当于_
7、C_。A、操作数除以2 B、操作数乘以16C、操作数乘以2 D、操作数除以16 /左移乘二,右移除以2得分评卷人三、阅读程序,将运行结果写到各题右侧的空白处(每题4分,共20分)1. main() int i=0,s=0; do if(i%2)i+;continue; i+; s+=i; while(iy) f(x,y); else if(yz) f(y,z); else f(x,z); printf(%d,%d,%d,x,y,z);得分评卷人四、阅读程序或程序段,填空(每题4分,共20分)1.以下程序完成对一维数组Array进行冒泡排序(从大到小),请填空。main( )int array1
8、1;int j, k, temp;for(j=1;j11;j+)scanf(“%d”,&arrayj);for(j = 1; j 10; j+) for(k = 1; ;k+) if( ) temp = arrayk; arrayk=arrayk+1; arrayk+1=temp; 2将一个43的二维数组a行和列互换,存到另一个34的二维数组b中,并将两个数组的数据输出,请填空。main() int a43=1,2,3,4,5,6,7,8,9,10,11,12; int b34,i,j; printf(narray a:nn); for(i=0; ;i+) for(j=0;j3;j+) pri
9、ntf(%5d,aij); printf(n); printf(narray b:nn); for(i=0;i3;i+) for(j=0;j4;j+) printf(%5d,bij); printf(n); 3编写一个程序将用户输入的由数字字符和非数字字符组成的字符串中的数字提取出来,请填空。main() char str20,*p; p=str; gets(str); for(; ;p+) if( ) printf(%c,*p); 4以下程序的功能是:在N行M列的二维数组中,找出最小值,以及最小值所在的行下标,请填空。#define N 3#define M 3main() int aNM
10、=21,11,23,6,1,15,9,17,20;int i,j,row=0,min=a00; for(i=0;iN;i+) for(j=0;jM;j+) if(aijmin) printf(min=%d,line=%dn,min,row); 5以下程序的功能是:输出a,b,c三个变量中的最大值,请填空。#includevoid main() int a,b,c,t1,t2; scanf(%d%d%d,&a,&b,&c); t1=ab? ; t2=ct1? ; printf(%dn,t2);得分评卷人五、编程题(每题10分,共20分)1输入三个字符串,按由小到大的顺序输出,利用指针实现。2求100至200间的全部素数。专心-专注-专业