广东专插本2014年本科插班生考试专业科高级语言程序设计试卷
2015-11-15 09:31
感兴趣的有:
人
广东专插本2014年本科插班生考试试卷
计算机科学与技术 专业 高级语言程序设计 试卷(A卷)
一、填空题(每空1分,共10分)
1.C程序是由_________构成的,它包括___________和__________两部分。
2.一个C文件是一个字节流或_____________流。
3. 在C语言中,&运算符作为单目运算符时表示的是__________运算,作为双目运算符时表示的是__________运算。
4. 在16位PC机环境下,字符常量‘a’在内存中应占_____个字节,字符串“a”应占________个字节。
5. 数组在内存中占用一段连续的存储空间,它的首地址由___________表示。
6. 当a=9,b=40,c=3时,表达式 a>b!= c的值是 _______。
二、单项选择题(每题1.5分,共30分)
题号 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
答案 |
|
|
|
|
|
|
|
|
|
|
题号 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
答案 |
|
|
|
|
|
|
|
|
|
|
1.下述程序段的输出结果是( )。
int x=11;
int y=x++;
printf(″%d,%d″,(x++,y),y++);
A、11,10 B、11,11
C、10,10 D、10,11
2.下面各选项中,均是C语言标识符的选项组是( )。
A、for china to B、long_123 short56 _do
C、void union _342 D、text.txt _023 _3ew
3.有以下程序,执行后输出结果是( )。
main()
{ int a[][3]={{1,2,3},{4,5,0}},(*pa)[3],i;
pa=a;
for(i=0; i<3; i++)
if(i<2) pa[1][i] = pa[1][i]-1;
else pa[1][i]=1;
printf("%d\n",a[0][1]+a[1][1]+a[1][2]);
}
A、7 B、6 C、8 D、无确定值
4. 算法是指为解决某个特定问题而采取的正确且有限的步骤,下面不属于算法的5个特性的是( )。
A、有零个输入或多个输入 B、高效性 C、有穷性 D、确定性
5.在位运算中,操作数每右移一位,其结果相当于()。
A、操作数除以16 B、操作数乘以16
C、操作数除以2 D、操作数乘以2
6. 下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是( )。
A、*pz B、a C、px D、&a
7. 以下描述错误的是( )。
A、C程序中,函数可以直接或间接的调用自己
B、函数调用时,函数名必须与所调用的函数名字完全一致
C、函数说明语句中的类型必须与返回值的类型一致
D、实参数可以与形参个数不一致
8.整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的表达式是( )。
A、 x||y B、 x|y C、x&y D、x^y
9.若int k=10;则执行下列程序后,变量k的正确结果是( )。
main( )
{ int k=10;
switch(k)
{ case 9;k+=1;
case 10 ;k+=1;
case 11; k+=1;break;
default;k+=1
}
printf(″%d\n″,k);
}
A、12 B、1 C、10 D、9
10.下面有关for循环的正确描述是( )
A、 for循环只能用于循环次数已经确定的情况
B、 for循环是先执行循环体语句,后判定表达式
C、 在for循环中,不能用break语句跳出循环体
D、 for循环体语句中,可以包含多条语句,但要用花括号括起来
11.阅读下面程序,则程序的输出结果为( )。
#include ″stdio.h″
main ( )
{ int c[ ]= {1, 2, 3, 1, 5, 2};
int *p;
p=c;
printf(″%d ″,*p);
printf(″%d\n″,*++p);
}
A、1,2 B、2,1 C、1,1 D、2,2
12.当a=2, b=3, c=6, d=4时,执行下面一段程序后,x的值为( )。
if (a<b)
if(c<d) x=5;
else if(a<c)
if(b<d) x=2;
else x=3;
else x=6;
else x=7;
A、1 B、2 C、3 D、6
13.若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)
s=a;
for(b=1;b<=c;b++) s=s+1;
则与上述程序段功能等价的赋值语句是( )。
A、s=a+b; B、s=a+c; C、s=s+c; D、s=b+c;
14.下面的程序运行后,全局量t.x和t.s的正确结果为( )。
struct tree
{ int x;
char *s;
}t;
func(struct tree t)
{ t.x=5;
t.s="car";
return(0);
}
main()
{ t.x=3;
t.s="minicar";
func(t);
printf("%d, %s", t.x, t.s);
}
A、5, car B、1, car C、3, minicar D、5, minicar
15.以下能对二维数组C进行正确的初始化的语句是( )。
A、int c[3][]={{3},{3},{4}}; B、int c[][3]={{3},{3},{4}};
C、int c[3][]={{3},{3},{4},{5}}; D、int c[][3]={{3},{},{3}};
16. 阅读如下程序段,则程序在先后输入blue和sky后,输出结果是( )。
main ( )
{ char a [30], b [30];
int k;
gets (a);
gets (b);
k=strcmp(a, b);
if (k>0) puts (a);
else if (k<0) puts (b) ;
}
A、bluesky B、sky C、blue D、没有输出结果
17. 有以下程序
char *scmp(char *s1, char *s2)
{ if(strcmp(s1,s2)<0)
return(s1);
else return(s2);
}
main()
{ int i; char string[20], str[3][20];
for(i=0;i<3;i++) gets(str[i]);
strcpy(string,scmp(str[0],str[1]));
strcpy(string,scmp(string,str[2]));
printf("%s\n",string);
}
若运行时依次输入:abc、abcd和abba三个字符串,则输出结果为( )。
A、abcd B、abca C、abc D、abba
18.若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是( )。
for(i=5;i>0;i--)
for(j=0;j<4;j++){…}
A、20 B、24 C、25 D、30
19. 若已定义了如下的共用体类型变量x,则x所占用的内存字节数为( )。
union data
{ int i;
char ch;
double f;
}x;
A、7 B、11 C、8 D、10
20. 如果文件1包含文件2,文件2中要用到文件3的内容,而文件3中要用到文件4的内容,则可在文件1中用三个#include命令分别包含文件2、文件3和文件4。在下列关于这几个文件包含顺序的叙述中,正确的一条是( )。
A、文件4应出现在文件3之前,文件3应出现在文件2之前
B、文件2应出现在文件3之前,文件3应出现在文件4之前
C、文件3应出现在文件2之前,文件2应出现在文件4之前
D、出现的先后顺序可以任意
三、阅读程序,将运行结果写到各题右侧的空白处(每题4分,共20分)
1.
#define MCRA(m) 3*m
#define MCRB(n,m) 4*MCRA(n)+m
main()
{ int i=3,j=2;
printf("%d\n",MCRB(j,MCRA(i)));
}
2.
struct s
{ int x,y;
} data[2]={100,10,20,200};
main()
{ struct s *p=data;
printf("%d\n",++(p->x));
}
3.
#include <stdio.h>
main()
{int number,digit,s=0;
scanf(“%d”,&number);/*假若运行时,输入number的值为12123*/
do
{digit=number%10;
number/=10;
s+=digit;
}while(number!=0);
printf(“%d\n”,s);
}
4.
#include<stdio.h>
main()
{
int i,j;
for(i=4;i>=1;i--)
{printf("* ");
for(j=1;j<=4-i;j++)
printf("* ");
printf("\n");
}
}
5.
void fun(int *n)
{ while((*n)--);
printf("%d",++(*n));
}
main()
{ int a=100;
fun(&a);
}
四、阅读程序或程序段,填空(每题4分,共20分)
1. 用以下程序计算1到100的整数的累加和。
main()
{int i,sum=0;
i=1;
for(___________________________)
{sum+=i;
i++;
}
printf(″sum=%d\n″,______________);
}
2.下面程序的功能是用“辗转相除法”求两个正整数的最大公约数。
#include <stdio.h>
main( )
{ int r,m,n;
scanf(″%d%d″,&m,&n);
if (m<n) (_________________________);
r=m%n;
while(r) {m=n ;n=r;r=_________;}
printf(″%d\n″,n) ;
}
3.512个瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天能卖完。
#include ″stdio.h″
main( )
{int day,x1,x2;
day=0;x1=512;
while (____________________)
{x2=___________;x1=x2;day++;}
printf(″day=%d\n″,day);
}
4. 下面程序用变量count统计文件中字符的个数。
#include “stdio.h”
main()
{ FILE *fp;long count=0;
if((fp=fopen(″letter.dat″, ______________))==NULL)
{printf(″ cannot open file\n″);exit(0)}
while(!feof(fp)) {__________________________________;count++;}
printf(″count=%ld\n″;count);
fclose(fp);
}
5. 以下函数的功能是删除字符串s中的所有数字字符。
void dele (char *s)
{ int n=0,i;
for(i=0; s[i]; i++)
if(_______________________)
s[n++]=s[i];
s[n]=___________________;
}
五、编程题(每题10分,共20分)
1.求1+1/2+1/4+……+1/50的值, 并输出结果。
2.从键盘输入20个学生的学号和一门课程成绩,统计计算出全班平均成绩,并输出低于平均分的学生学号和成绩。
2016年广东专插本华师上课辅导班招生简章
11月28开新的周末班,还有寒假班和冲刺班,有需要住宿的,可以提供校内宿舍,35元/晚,有热水器,空调等
分享到:
报名方式
1.直接来我校参观、报名。报名时带好身份证及正反面复印件2张、1寸蓝底彩照4张2寸蓝底彩照4张 。 (专升本在校生由学校开具证明,毕业生应交毕业证复印件)
2.学生选择网上或电话报名,学员可以电话、QQ、电子邮件报名或者索取招生简章,在指定时间内来校报到入学。
3.业余自考学生准备好个人资料和第一年学费,直接过来学校报名。
4.电话:020-85517608 或 13316047870 李老师(微信同号)
5.QQ:
6.广州招生网在线报名地址:点击进入网上报名系统
7.报名地址:广州天河中山大道西8号天河商贸大厦2203招生办(地铁3号线岗顶站;公交站师大暨大站)
(特别提醒:我校没有在各车站路口设立接待点,请广大考生自行来校,严防路人以指路带领为名上当受骗,中途勿受陌生人接待,以免误导,造成不必要的财产损失。)