资源下载资源下载价格1元立即支付
购买问题请提交工单
2009年1月高等教育自学考试全国统一命题考试
C语言程序设计 试卷
(课程代码 2600)
一、填空题(本大题共10题,每题1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
1.在定义变量的同时给变量赋予初值,称为变量的______________。
2.表达式10%3的结果是___________。
3.逗号表达式的形式如下:
表达式1,表达式2
则逗号表达式的结果是___________的值。
4.若有赋值语句x=x+3;则其含义是__________。
5.若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是__________。
int b,c;
flot a;
scanf (“%f, %d, c=%db”, &a,&b,&c);
6.在C语言中,对于if语句,else子句的配对预定是__________。
7.C程序有三种结构化程序设计方法,分别是顺序结构,选择结构和__________结构。
8.break语句只能用于switch-case语句和__________语句中。
9.int doom〔8〕数组doom的长度为_________。
10.Float pci〔4〕〔2〕;数组pic的长度为_________。
二、单项选择题(本大题共30小题,每小题1分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
11.以下说法正确的是 【 】
A.C语言程序总是从第一个定义的函数开始执行
B.在c语言程序中,要调用的函数必须在main()函数中定义
C.语言程序总是从main()函数开始执行。
D.C语言程序中的main()函数必须放在程序的开始部分
12.下列符号中,可以作为变量名的是 【 】
A.+a B.12345e C.a3B D.5e+0
13.在c语言中,下列类型属于构造类型的是 【 】
A.整型 B.指针类型 C.实型 D.结构体类型
14.设d为字符变量,下列表达式正确的是 【 】
A.d=678 B.d=’a’ C.d=”d” D.d=’gikl’
15.C语言中,运算对象必须是整型数的运算符是 【 】
% B. \ C. %和\ D. *
16.下列符号中用来表示C语言中的回车换行的是 【 】
\r B.\ n C. \b D. \t
17.以下能正确定义一维数组的是 【 】
A.int a〔5〕={0,1,2,3,4,5}; B.int a〔5〕=”012345”;
C.char.〔 〕=”012345”; D.char a〔5〕={0,1,2,3,4,5};
18.表达式(double)(20/3)的值为 【 】
A.2 B.3 C.6 D.6.0
19.若已知a=10,b=20,则表达!a
A.0 B. 1 C.10 D.20
20.在scanf()函数的格式说明符中,长整型数的输人格式说明符是 【 】
A.%d B.%ld C.%If D.%x
21.printf函数中用到格式符”%4s”,其中数字4表示输出的字符串占用4列。如果字符串长度大于4,则按原字符串长从左向右全部输出;如果字符串长度小于4,则输出方式为 【 】
A.从左起输出该字符串,右补空格
B.按原字符长从左向右全部输出
C.右对齐输出该字符,左补空格
D.输出错误信息
22.为了表示关系x>=y>=z,应使用C语言表达式 【 】
A.(x>=y)&&(y>=z) B.(x>=y)AND(y>=z)
(x>=y>=z) D.(x>=y)&(y>=z)
23.逻辑运算符的运算对象的数据类型 【 】
A.只能是0或1 B.只能是.T.或.F.
C.只能是整型或字符型 D.任何类型的数据
24.以下关于运算符优先顺序的描述正确的是 【 】
A.关系运算符
B.逻辑运算符
C.赋值运算符
D.算术运算符
25.以下不正确的if语句形式是 【 】
A.if()(x>y&&x!=y);
if(x==y)x+=y;
if(x!=y)scanf(”%d”,&x)else scanf(”%d”,&y);
D.if(x
26.判断char型变量ch是否为大写字母的正确表达式是 【 】
A.’A’ <=ch< Z
B.(ch>=’A’)&(ch<=’Z’)
C.(’A’ <=ch)AND(’Z’>=ch)
D.(ch>=’A’)&&(ch<=’Z’)
27.写出下面程序的执行结果 【 】
main()
{int X,y=1;
if(y!=o) x=5;
printf(”%d\t”,x);
if(y==0) x=3;
else x=5;
printf(“%d\t\n”,x);}
1 3 B. 1 5 C. 5 3 D.5 5
28.在c语言中,多分支选择结构语句为
switch(c)
{case常量表达式1:语句1 ;
……
case常量表达式n—l:语句n—l;
default: 语句n;}
其中括号内表达式c的类型 【 】
A.可以是任意类型 B.只能为整型
C.可以是整型或字符型 D.可以为整型或实型
29.程序段如下
int k=1
while(!k= =O){k=k+1;printf(“%d\n”,k);}
说法正确的是 【 】
A.while循环执行2次 B.循环是无限循环
C.循环体语句一次也不执行 D.循环体语句执行一次
30.循环语句中的for语句,其一般形式如下:
for(表达式1;表达式2;表达式3)语句
其中表示循环条件的是 【 】
A.表达式l B.表达式2 C.表达式3 D.语句
31.下列循环语句中,执行循环体的次数是 【 】
int i,j;
while(10)printf(”ABC”);
A.0次 B.1次 C.10次 D.无限次
32.若i.J已定义为int类型,则以下程序段中的内循环体的执行次数是 【 】
for(i=4;i;i一一)
for(j=0;j<5;j++){……}
A.10 B.15 C.20 D. 25
33.设有char str〔10〕,下列语句正确的是 【 】
scanf(”%s”,&str); B. print[(”%c”,str);
C.printf(”%s”,str〔0〕);D.printf(”%s”,str);
34.下列说法正确的是 【 】
break语句仅能使用在switch结构中
B.执行continue语句可以结束包含它的整个循环结构
C.执行循环体中的break语句可以结束本次循环
D.执行break语句可以结束包含它的循环结构
35.下面程序段的执行结果是 【 】
int x=100:
while(x>120)
x+=1;
printf(”%d”,x);
A.100 B. 101 C.120 D.121
36.已知:char c〔3〕〔3〕={”howareyou”];
int i;
for(i=0:i<3;i++)
printf(”%d”,c〔i〕〔2-i〕;
则执行结果是 【 】
A.h r u B.o r o C.w r y D.a r e
37.C语言程序中,当函数调用时 【 】
A.实参和形参各占一个独立的存储单元
B.实参和形参共用一个存储单元
C.可以由用户指定是否共用存储单元
D.计算机系统自动确定是否共用存储单元
38.有如下程序:
int func(int a,int b)
{return(a+b);)
main()
{
int x=2,y=5,z=8,r;
r=func(fune(x,y),z);
printf(”%d\n”,r);}
该程序的输出的结果是 【 】
A.12 B.13 C.14 D.15
39.若有以下定义
int a〔 〕={1,2,3,4,5,6,7,8,9,10),*p=a;
则值为3的表达式是 【 】
A p+=2,*(p++) B.p+=2,*++p
C.p+=3,*p++ D.p+=2,++*P
40.下面程序的输出结果是 【 】
main()
{int a〔 〕={1,2,3},s,b,*p;
S=l:
P=a:
for(b=0;b<3.b++)
s*=*(p+b);
printf(”s=%d\n”,s);}
A.s=l B.s=2 C.s= D. s=6
三、阅读程序。写出下面程序的执行结果 (本大题共10小题,每小题3分,共30分)请将正确答案填写在题后的空格内。错填、不填均无分。
41.Main()
{int x;
x=-3+4*5-6;printf(”%d”,x);
x= 3+4%5-6;printf(”%d”,x);
x=-3*4%6/5;printf(”%d”,x);
x=(7+6)%5/2;printf(”%d”,x);
}
该程序运行的结果是__________
42.#include
main()
{int x=10,y=3;
printf(”%d\n”,y=x%y);}
该程序运行的结果是__________
43.#include
main()
{int a,b;
a=2:b=3:
if(a>b)
{a=b;b=a;)
else{a++.b++;)
printf(”%d,%d\n”,a,b);}
该程序运行的结果是___________
44.#include
main()
{int i;
for(i=1;i<=5;i++)
switch(i%5)
{case 0:printf(”*”);break;
case l:printf(”#”);break;
default:printf(”\n”);
case 2:printf(”&”);break;}
}
该程序运行的结果是___________
45.main()
{int a=2,i;
for(i=0;i<3;i++)printf(”%4d”,f(a));}
f(int a)
{ int b=O,c=3;
b++;c++;return(a+b+c);)
该程序运行的结果是___________
46.#include
main()
{inti,j;
for(i=1;i<=5;i++)
{for(j=1;j
printf(””);
for(j=1;j<=5;j++)
printf(”*”);
printf(”\n”); }
该程序运行的结果是___________
47.#include
main()
{int a〔9〕={1,2,3,4,5,6,7,8,9},s=0,i;
for(i=0;i<9;i++)
if(a〔i〕%2==0)s+=a〔i〕:
printf(”s=%d\n”,s);}
该程序运行的结果是___________
48.int fl(int x,int y)
{ int sum=0;
sum=x+y;
++x:
++y; }
main()
{int a=10,b=20;
fl(a,b);
printf(”%d,%d\n”,a,b);}
该程序运行的结果是__________
49.main()
{char*s=”go_home”;
s=s+3:
printf(”%s”,s);}
该程序运行的结果是__________
50.main()
{ int i=5;printf(”%d\n”,sub(i));}
Sub (int n)
{ int a;
if(n==1) a=l; else a=n+sub(n一1); return(a);)
该程序运行的结果是——
四、编程题(本大题共3小题,第51、52题各9分,.第53题
12分,共30分)
51.编写一个程序用于水果店售货员算帐:已知苹果每斤2.5元,鸭梨每斤l.8元,香蕉每斤2元,桔子每斤l.6元,要求输入各类水果的重量,打印出应付钱数,再输入顾客付款数,打印出应找的钱数。
52.编写一个函数sum,实现求两个3×4矩阵之和。要求输入在主函数内完成。
53.编一程序,从键盘输入10个整数并保存到数组.要求找出最小的数和它的下标,然后把它和数组中最前面的元素对换位置。
资源下载资源下载价格1元立即支付
购买问题请提交工单
复制顶部推广链接,销售有收入30%分成。