福建专升本计算机科学类真题
- 格式:docx
- 大小:63.30 KB
- 文档页数:19
精品文档
机密★启用前 C01
2007 年福建省高职高专升本科入学考试
软件工程 专业知识试卷
考试时间 150 分钟,满分 300 分,共三部分)
答题说明:答案卸载答题纸相应的位置上,写在试卷上一律不给分。 第一部 C语言程序设计( 100 分) 、单项选择题(本大题共 30小题,每小题 2 分,共 60分) 在每小题列出的四个备选项中只有一个符合题目要求,请将正确答案代码 填写在答题纸相应的位置上。写在试卷上不得分。
下列选项中合法的 C 语言关键字
A.VAR
若a为 int
A.-3
设 x 、y、 r
值为
A.不定值 有以下程序段 int k=0; while(k=1)k++;
while 循环的次数是
A.无限次 B. 语法错误
以下程序执行后 sum的值是
main()
{int I,sum;
for(i=1;i<6;i++)sum+=I;
printf("%d\n",sum);
}
A.15
若变量 a 是 int
字符 C
C.不允许字符型和浮点型相加 D.a 的值是字符 'A'的 ASCⅡ值加上 1
7. 下列字符中, ASCⅡ码值最小的是
A.A B.a C.Z 1.
2.
3.
4.
5.
6.
是 B.char C.integer
类型,且其值为 3,则执行完表达式
B.9
均为 int 型变量, C.-12 则执行完语句: D.default
a+=a-=a*a 后,a 的值是
D.6
x=y=3;t=++x||++y; 后, y 的
B.4 C.3 D.1
C.一次也不执行 D.执行 1 次
B.14 类型,并执行了语句:
B.a 的值是浮点型 C.不确定
a='A'+1.6; D.0 ,则正确叙述
A.a
的值
D.z 精品文档
8. 不能把字符串: Hello! 赋给数组 b 的语句是
A. charb[10]={ 'H', 'e', 'l ', 'l ', 'o', '! '} B.charb[10];b="Hello! " C.char
b[10];strepy(b, "Hello! "); D.char b[10]= "Hello! ";
9. C语言中运算对象必须是整型的运算符是
A. %= B./ C.= D.<=
10. 若变量已正确定义并赋值,下面符合 C 语言语法的表达式是
A. a:=b+1 B.a=b=c+2 C.int 18.5%3 D.a=a+7=c+b
11. 若已定义 x 和 y 为 double 类型,则表达式 x=1,y=x+3/2 的值是
A. 1 B.2 C.2.0 D.2.5
12. 能正确表示逻辑关系: "a ≥ 10或a≤10"的 C语言表达是
13. 有如下程序,运行该程序的输出结果是
void main() { int y=3,x=3,z=1;
printf("%d %d\n",(++x,y++),z+2);
}
A. 3 4 B.4 2 C.4 3 D.3 3
14. 有数组定义 int a[2][2]={{1},{2,3}}; 则 a[1][1] 的值为
A.1 B.2 C.3 D.0
15. 有如下程序段
int a=14,b=15,x; char c= 'e' x=(a&&b)&&(c<'B');
执行完这段程序后, x 的值为
A.true B.false C.1 D.0
16. 有以下程序 ,程序运行后的输出结果是 void main()
{int I; for(i=0;i<3;i++) switch(i) { case 0:printf ("%d",i); case 2: printf ("%d",i);
default: printf ("%d",i);
}
}
A.022111 B.021021 C.000122 D.012 A. a>=10 or a<=10
C.a>=10&&a<=10 B. a>=10|a<=10
C. a>=10||a<=10 精品文档
17. 若变量已正确定义并赋值,则下列条件语句中,功能与其他语句不同的是
A.if(a) printf("%d\n",x);else printf("%d\n",y);
B. if(a==0) printf("%d\n ",y);else printf("%d\n",x);
C. if(a!=0) printf("%d\n",x);else printf("%d\n",y);
D. if(a==0) printf("%d\n",x);else printf("%d\n",y);
18. 若变量已正确定义, 要求程序段完成求 5!的计算, 不能完成此操作的程序 段是
A.for(i=1;i<=5;d++)p*=I;
B. for(i=1;i<=5;d++){p=1;p*=I};
C. i=1;p=1;while(i<=5){p*=i;i++};
D. i=1;p=1;do{p*=i;i++};while(i<=5);
19. 有以下程序,运行后的输出结果是 main()
{int a=7,b=8,*p,*q,*r;
p=&a;q+&b;
r=p;p=q;q=r;
printf("%d, %d, %d, %d\n",*p,*q,a,b)
}
A.8,7,8,7 B.7,8,7,8 C.8,7,7,8 D.7,8,8,7
20. 以下选项中非法的表达式是
A.0<=x<100 B.i=j==0 C.(char)(65+3) D.x+1=x+1
21. 有定义语句 :int ,xy; 。若要通过 scanf("%d,%d",&x,&y); 语句变量 x 得到 数值 11,变量 y 得到数值 12,下面四组输入形式,错误的是
A.11 12 B.11,12 C.11, 12 D.11, 12
22. 有以下函数定义
void fun(int n,double x){ ⋯⋯ }
若以下选项中的变量都已经确定并赋值,则对函数 fun 的正确调用语句是
A.fun(int y,double m);
C.fun(x,n)
23. 已定义以下函数 fun(int *p)
{return *p}
该函数的返回值是
A. 不确定的值
C. 行参 p 所指存储单元中的值
24. 有以下程序
#include
#define F(x,y) (x)*(y) void main()
{int a=3,b=4; B.k=fun(10,12,5);
D.void fun(n,x)
B.行参 p 中存放的值
D.行参 p 的地址值 精品文档
printf("%d\n",F(a++,b++));
}
程序运行后的输出结果是
A.12 B.15 C.16 D.20
25. 有以下程序
void main()
{ int a[3][3],*p,I;
p=&a[0][0]
for(i=0;i<9;i++)p[i]=i+1;
printf("%d\n",a[1][2]);
}
A.3 B.6 C.9 D.2
26. 有以下程序
struct STU
{char name[10];
int num;
int Score;};
void main()
{struct STU s[5]={ {"YangSan",20041,703};
{"LiSiGuo",20042,580};
{"WangYin",20043,680};
{"SunDan",20044,550};
{"WangYin",20045,537}};*p[5],*t; int I,j;
for(i-0;i<5;i++)p[i]=&s[i];
for(i=0;i<4;i++)
for(j=i+1;j<5;j++) if(p[i]->Score>p[j]->Score) {t=p[i];p[i]=p[j];p[j]=t;}
printf("%d %d\n",s[1],Score,p[1]->Score);
}
程序运行后的输出结果是
A.550 550 B.680 680
C.580 550 D.580 680
27. 有以下程序
void sort(int a[],int n)
{int I,j,t;