1、(A 卷)第 1 页 共 11 页1韩山师范学院专升本插班生考试样卷计算机科学与技术 专业 高级语言程序设计 样卷题号 一 二 三 四 五 六 七 八 九 十 总分 评卷人得分一、填空题(每空 1 分,共 10 分)1. C 语言的数据类型中,构造类型包括:数组、 和 。2. 在 C 程序中,指针变量能够赋 值或 值。3. C 目标程序经 后生成扩展名为 exe 的可执行程序文件。4. 设有定义语句 static char s5 ; 则 s4的值是 。5. 设 x 为 int 型变量。与逻辑表达式!x 等价的关系表达式是 。6. 若一全局变量只允许本程序文件中的函数使用,则该变量需要使用的存储
2、类别是 。7. 磁盘文件按文件读写方式分类可以为顺序存取文件和 。8. 设有下列结构体变量 xx 的定义,则表达式 sizeof(xx)的值是_。struct long num;char name20;unionfloat y; short z; yz; xx;二、单项选择题(每小题 1.5 分,共 30 分)题号 1 2 3 4 5 6 7 8 9 10(A 卷)第 2 页 共 11 页2答案题号 11 12 13 14 15 16 17 18 19 20答案1. 设有定义 int x=8, y, z; 则执行 y=z=x+, x=y= =z; 语句后,变量 x值是( )A、0 B、1 C、
3、8 D、92. 有以下程序main( ) int i=1,j=1,k=2;if(j+k+)执行后输出结果是( )A、 1,1,2 B、2,2,1 C、 2,2,2 D、2,2,33. 已知 i、j、k 为 int 型变量,若从键盘输入:1,2,3,使 i 的值为 1、j 的值为 2、k 的值为 3,以下选项中正确的输入语句是( )A、 scanf( “%2d%2d%2d”,B、 scanf( “%d %d %d”,C、 scanf( “%d,%d,%d”,D、 scanf( “i=%d,j=%d,k=%d”,4. 有以下程序 main() int a=5,b=4,c=3,d=2; if(abc
4、) printf(“%dn“,d); else if(c-1=d)= =1) printf(“%dn“,d+1); else printf(“%dn“,d+2); 执行后输出结果是 ( )A、2 B、3 C、 4 D、 编译时有错,无结果5. 以下程序段 ( )(A 卷)第 3 页 共 11 页3x=1;do x=x*x; while (!x); A、 是死循环 B、 循环执行二次C、 循环执行一次 D、 有语法错误6. 以下不能正确定义二维数组的选项是( )A、 int a22=1,2; B、 int a2=1,2,3,4;C、 int a22=1,2,3; D、 int a2=1,2,3,
5、4;7. 有以下程序main() int aa44=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6;int i,s=0;for(i=0;imain() char str=“1234567“;int i;for(i=0; imain()(A 卷)第 7 页 共 11 页7 int i; for(i=0;imain()int i;for (i=1;iint b=1;func (int p)static int d=5;(A 卷)第 8 页 共 11 页8d+=p;printf (“%d,“,d);return (d );main ()int a=3;printf(“%dn“,fu
6、nc(a+func(b);5#include struct stu int num; char name10; int age;void py(struct stu *p)printf(“%sn“, (*p).name);main()struct stu student3=1001,“Sun“,25,1002,“Ling“,23,1003,“Shen“,22;py(student+2);四、阅读程序或程序段,填空(每小题 4 分,共 20 分)1下面程序的功能是调用 fun 函数以删除字符串中指定的字符,请填空。void fun(char s,int c) int i,j;for(i=0,j=
7、0;si!=0;i+)if ( ) (A 卷)第 9 页 共 11 页9sj=0;main() char str=“abcdefgAbcd“, ch;scanf(“%c“,fun(str,ch);printf(“%sn“,str);2下面程序是按学生姓名查询其排名和平均成绩,查询可连续进行直到键入 0 时结束,请填空。#include#define NUM 4struct student int rank;char *name;float score;stu=3,”Tom”,89.3,4,”Mary”,78.2,1, ”Jack”,95.1,2, ”Jim”,90.6;main() char
8、str10; int i;do printf(“Enter a name: “);scanf(“%s“,str);for(i=0;i=NUM) printf(“Not foundn“);while(strcmp(str,”0”)!=0);3下面程序是用“顺序查找法”查找数组中的元素,请填空。main() int a8=25,57,48,37,12,92,86,33;int i, x;scanf(“%d“, for(i=0;imain( ) FILE *fp;char ch,fname10;printf(“Input name of file: n“); gets(fname);if(fp=fopen(fname, “w“)= =NULL)printf(“cannot open n“);exit(0);printf(“Enter data:n“);while ( ) fputc ( );fclose(fp);