2009年7月贵州省高等教育自学考试
C语言程序设计 试卷
一、单项选择题(本大题共20小题,每小题2分,共40分)。
1、 结构化程序由三种基本结构组成,以下选项中不属于结构化程序的选项是( ) A、顺序结果 B、过程结构 C、分支结构 D、循环结构 2、下列选项中不正确的实型常量是( ) A、3.17 B、0.34e C、0.345e+2 D、4e-3 3、以下选项中合法的用户标识符是( ) A、2ab B、main C、abc D、-AB
4、若有定义int y=2;则表达式4.5+1/2+y++的运行结果是( ) A、6 B、7 C、8 D、9
5、若以下选项中的变量已正确定义,则不正确的赋值语句是( ) A、a=b=c=10; B、d++;
C、c+b; D、d=(c=12)-(b++);
6、若有以下变量说明和数据的输入方式,则正确的输入语句是( ) 变量说明:float x1,x2;
数据输入方式:4.5 <回车> 3.5 <回车>
A、 scanf(“%f ,%f”,&x1,&x2); B、scanf(“%f%f “,&x1,&x2);
C、 scanf(“%3.2f,%f “,&x1,&2); D、scanf(“%3.2f , %f “,&x1,&x2); 7、以下程序运行后的输出结果是 ( ) main()
{ int a1=10,a2=20,a3=30;
printf(“a1+a2+a3=%d\\n”,a1,a2,a3); }
A、a1+a2+a3=60 B、a1+a2+a3=30 C、a1+a2+a3=20 D、a1+a2+a3=10
8、设有定义语句int a=2,b=3,c=4;则以下表达式中,值为0的表达式是( ) A、a&&b B、a<=b
C、a||b+c&&b-c D、!((a
{ int x=5,y=4;
if(x>6) printf(“%d\\n”,--y);
else printf(“%d\\n”,++y); }
A、4 B、5 C、6 D、3
10、以下程序运行后的输出结果是( ) main() { int i=5; switch(i)
{ case 0: printf(“%d\\n”,i); case 1: printf(“%d\\n”,i+1); default : printf(“%d\\n”,i+2); } }
A、4 B、5 C、6 D、 7 11、以下程序运行后的结果是( ) main()
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i;
printf(“%d\\n”,s); }
A、 自然数1~9的累计和 B、自然数1~10的累加和
C、 自然数 1~9的奇数之和 D、自然数1~10中的偶数之和 12、设有以下程序段:
int x=5;
while(x==0) x=x+1; 则以下描述正确的是
A、while循环执行5次 B、死循环
C、 循环体语句一句都不执行 D、循环体语句只执行一次 13、以下程序运行后的输出结果是( ) main() { int x=2;
do{ printf(“%d”,x-1);} while(!(--x)); }
A、3 B、30 C、1 D、死循环
14、在以下给出的表达式中,于语句while(E);中的E不等价的表达式是(A、(!E==0) B、(E>0||E<0) C、(E==0) D、(E!=0) 15、C语言中的简单数据类型有( )
A、整形、实型、逻辑型 B、整型、逻辑型、实型、字符型 C、 整型、逻辑型、字符型 D、整形、实型、字符型 16、以下函数调用语句中,含有的实际参个数是( ) fun((a1,a2),(a3,a4,a5));
A、1 B、3 C、2 D、4
) 17、以下程序运行后输出结果是( ) fun(int a,int b) { int c; c=a+b; retuen(c); }
main()
{ int x=1,y=2;
printf(“%d\\n”,fun(x,y); }
A、1 B、3 C、4 D、2 18、以下正确的说法是( )
A、函数的定义可以嵌套,但是函数的调用不可以嵌套 B、函数的定义不可以嵌套,但函数的调用可以嵌套 C、函数的定义和函数的调用均不可以嵌套 D、函数的定义和函数的调用均可以嵌套
19、设有定义:int n=10,*p=&n,*q;则以下选项中正确的赋值语句是( ) A、 p=1; B、q=2; C、 q=n; D、*p=6;
20、以下程序运行后的输出结果是( ) main()
{ int a[5]={1,2,3,4,5},*p=&a[2],b; b=*p;
printf(“%d\\n”,b); }
A、2 B、3 C、4 D、5
二、填空题(本大题共15小题,每小题2分,共30分)。 21、C语言程序的扩展名是 。
22、turbo c中float变量所占字节树是 。 23、表达式2*3+16/(3+5)+6%2的运行结果是 。 24、复合语句在语法上被认为是 。
25、以下程序运行后的输出结果是 。 main()
{ int a=‘A’,b=65;
printf(“%c,%d\\n”,a,b); } 26、在C语言中没有专门的“逻辑值”,而是用零值表示“假”,用 值表示“真”。 27、以下程序段运行后变量C的值为 。 int a=3,b=1,c=5; if(a>c) b=c; a=c;
c=b;
28、以下程序运行后的输出结果是 。 main()
{ int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2;
printf(“%d\\n”,x); }
29、以下程序段中,do-while语句中循环体的执行次数是 。 int a=6; int b=0;
do{ b+=2;a-=2;} while(a>=0);
30、设a、b、c均为int 类型变量,则执行以下for语句后,C的值为 。 31、以下程序运行后的输出结果是 。 main() { int k,m=0;
for(k=3;k<=19;k+=5;) m++;
printf(“%d\\n”,m); }
32、以下程序运行后的输出结果是 。
main()
{ char ch1=’A’; ch=ch+3;
printf(“%c\\n”,ch); }
33、以下程序运行后输出结果是 。 max(int a,int b)
{ int k
if(a>b)k=a+1; else k=b+1; return(k); }
main() { int i=6,j=8;
printf(“%d\\n”,max(i,j)); }
34、函数的参数分为形参和实参两种,实参出现在函数调用中,形参出现在 中,当发生函数调用时,将把实参的值传递给形参。 35、以下程序运行后的输出结果是 。 main()
{ int a=1,b=2,c=5;
int *p1=&a,*p2=&b,*p=&c;
*p=*p+(*p2); printf(“%d\\n”,c);
}
三、编程题(本大题共3小题,每小题10分,共30分)
36、输入两个整数,比较这两个整数的大小,然后输出其中较多大的数。 37、编程计算1到100之间所有的偶数之和。
38、已知整形数组中值在0至9的范围内,统计每个整数的个数。
2009年7月贵州省高等教育自学考试C语言



