当前位置:首页 > 2013年《C语言程序设计基础》期末考试试卷‘A’及答案
程序设计基础
一、单选题 (每小题2分,共30分) 答案填入下表
1.以下不合法的C语言标识符是( )。
A、_1 B、Int C、a_b D、a--b
2.设a和b均为float型变量,且a=5.5、b=2.5,则表达式(int)a+b
/b的值是( )。
A、6.500000 B、6 C、5.500000 D、6.000000 3.以下叙述错误的是( )。
A、一个C程序可以包含多个不同名的函数 B、一个C程序只能有一个主函数
C、C程序在书写时,有严格的缩进要求,否则不能编译通过 D、C程序的主函数必须用main作为函数名
4.若a 是数值类型,则逻辑表达式(a==1)||(a!=1)的值是:
( )。
A、1 B、0 C、2 D、不知道a 的值,不能确定 5.巳知字母A的ASCII码是65,以下程序的执行结果是 ( )
#include
{ char c1='A',c2='Y';
printf(\
A、A,Y B、65,89 C、65,90 D、65, 65 6.以下一维数组初始化语句中,正确的是( )。
A、int a[5]={1,2}; B、int a[5]={};
C、int a[5]={5*2} D、int a[]=(1,2,0,0,0);
7.若有char c[5]={'c','d','\\0','e','\\0'};则执行语句
printf(\结果是( )。
A、cd\\0e B、'c''d' C、cd D、cd e
8.设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是( )。
A、x++; printf(“%d\\n”,x); B、n=++x; printf(“%d\\n”,n);
第 1 页 共 8 页
程序设计基础
C、++x; printf(“%d\\n”,x); D、n=x++; printf(“%d\\n”,n); 9.下面程序的输出结果是( )。
main( )
{ int i, x[3][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<4;i+=2) printf(″%d″, x[i][1]); } A、 5 C、 8
1 2
B、 5 D、 9
2 3
10.若k是int类型变量,且有以下for语句 for(k=-1;k<0;k++) printf(“****\\n\);
下面关于语句执行情况的叙述中正确的是( )。 A、循环体执行一次 B、循环体执行两次 C、循环体一次也不执行 D、构成无限循环
11.若有定义语句: int k1=10, k2=20;,执行表达式(k1=k1>k2)
&& (k2=k2>k1)后,k1和k2的值分别为( )。 A、0和1 B、0和20 C、10和1 D、10和20 12.下列表达式的值为0的是( )。
A、 3﹪5 B、 3/5.0 C、3<5 D、3/5 13.以下程序段的输出结果是( )。 int a=10,b=50,c=30; if(a>b) a=b; b=c; c=a;
printf(“a=%d b=%d c=%d\\n”,a,b,c);
A、a=10 b=50 c=10 B、a=10 b=30 c=10
C、a=50 b=30 c=10 D、a=50 b=30 c=50 14.下面结构体的定义语句中,错误的是( )。
A、struct ord {int x; int y; int z;}; struct ord a; B、struct ord {int x; int y; int z;}a;
C、struct ord {int x; int y; int z;} struct ord a; D、struct {int x; int y; int z;} a;
15.已知:int a,*p=&a; 则为了得到变量a的值,下列错误的表达
第 2 页 共 8 页
程序设计基础
式为( )。
A、p[0] B、*p C、&*a D、*&a
二、填空题(每空2分,共20分)
16.字符串\的占内存长度是 字节。 17. strlen(“apple”)的值为 。
18.根据变量的作用域可将变量分为局部变量和全局变量,定义在
函数内部的变量和函数的形参都是_______ 变量。 19.已知定义:int a[10];
则VC编译器中数组a占用内存的字节数是___________。 20.设 int a=7,b=9,t;执行完表达式t=(a>b)?a:b后,t的值是
___________。
21.表达式sqrt(16)和pow(6,3)的值分别为_________和___________。 22.在格式输入语句scanf中,用于double输入的格式是%_________。 23.设有int y[3][2]={5,4,6,7,8,9};则y[1][1]的值为___________。 24.假定指针p所指对象的值为25,p+1所指对象的值为42,则*p++的值为___________。
三、程序分析题(每小题5分,共10分)
25.阅读程序,写出运行结果 。
func(int x) { x=20; } main() { int x=10; func(x); printf(“%d”,x);
第 3 页 共 8 页
程序设计基础
}
26.阅读程序,写出运行结果 。 int *f(int *x,int *y) {
if(*x<*y) return x; else return y; }
main( ) {
int a=7,b=8,*p,*q,*r; p=&a; q=&b; r=f(p,q);
printf(\
}
四、程序填空题(每小题10分,共20分)
27.用数组处理Fibonacci数列问题1,1,2,3,5,8,13,……。 main() { int i; int f[20];
(1) /*给数列赋初值*/ for(i=2;i<20;i++)
f[i]= f[i-1]+ f[i-2]; /* 计算后继元素值*/ for( (2) ;i<20;i++) printf(“d”,f[i]);} /* 打印输出数列前20个数*/ (1) (2)
28.补齐程序,程序功能为:输出100之内的素数。
#include
main() { int n,i;
for (n = 1; n <= 100; n++)
第 4 页 共 8 页
共分享92篇相关文档