聊城大学2004—2005学年第一学期期末考试《计算方法》试题。
第 1 页共 2 页。
一、 选择题(每小题2分,共50分)
1)下列不正确的转义字符是 ( c )
abc) '074' d) '0'
2)若有以下定义: char a; int b; float c; double d; 则表达式a*b+d-c值的类型为( d )
a) float b) int c) char d) double
3)表示关系x<=y<=z的c语言表达式为 ( a )
a) (x<=y)&&y<=z)
b) (x<=y)and(y<=z)
c) (x<=y<=z)
d) (x<=y)&(y<=z)
4)设a=1,b=2,c=3,d=4,整个表达式的值为: (d )
a) 4 b) 3 c) 2 d) 1
5)设x为int型变量,则执行 x=10; x+=x; 后, x的值为 ( b )
a) 10 b) 20 c) 40 d) 30
6)设x,y,z,t均为int型变量,则执行 x=y=z=1; t=++x||+y&&+z; 语句后,t的值为 ( c )
a) 不定值 b) 2 c) 1 d) 0
7)设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);
为了把100和765.12分别赋给i和f,则正确的输入为( b )
a) 100765.12 b) i=100,f=765.12
c) 100,765.12 d) i=100f=765.12
8)设x和y均为int型变量,则执行下列的循环后,y值为 ( c )
for(y=1,x=1;y<=50;y++)
if(x= =10)} break;
if (x%2==1)
x+=5; continue;}
x-=3;a) 2 b) 4 c) 6 d) 8
9) 设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是。
a)把x和y按从大到小排列
b)把x和y按从小到大排列
c)无确定结果。
d)交换x和y中的值。
10)给出以下定义: (c )
char x[ ]abcdefg";
char y[ ]
则正确的叙述为。
a) 数组x和数组y等价。
b) 数组x和数组y的长度相同。
c) 数组x的长度大于数组y的长度。
d) 数组x的长度小于数组y的长度。
11)以下叙述中不正确的是( d )
a) 在不同的函数中可以使用相同名字的变量。
b) 函数中的形式参数是局部变量。
c) 函数内定义的变量只在本函数范围内有效。
d) 在一个函数内的复合语句中定义的变量在本函数范围内有效。
12) 假定a和b为int型变量,则执行以下语句后b的值为( d )
a=1; b=10; do while (b--<0);
a) 9 b) -2 c) -1 d) 8
13) 在函数调用过程中,如果函数funa调用了函数 funb,函数funb又调用了函数funa,则。
a) 称为函数的直接递归调用。
b) 称为函数的间接递归调用。
c) 称为函数的循环调用。
d) c语言中不允许这样的递归调用。
14)设有以下宏定义: (c )
#define n 3
#define y(n) (n+1)*n)
则执行语句:z=2 * n+y(5+1));后,z的值为。
a) 出错 b) 42 c) 48 d)54
15)设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是( b )
a) k=*p1+*p2; b) p2=k;
c) p1=p2; d) k=*p1 * p2);
16)设有如下定义: (d )
int arr=
int *ptr;
则下列程序段的输出结果为。
ptr=arr;
(ptr+2)+=2;
printf ("d,%d",*ptr,*(ptr+2));
a) 8,10 b) 6,8 c) 7,9 d) 6,10
17)以下程序的输出结果是( b )
main()
int i,k,a[10],p[3]:
k=5;for (i=0;i<10;i++)a[i]=i;
for (i=0;i<3;i++)p[i]=a[i*(i+1)];
for (i=0;i<3;i++)k+=p[i]*2;
printf("%d",k);
a) 20 b) 21 c) 22 d)23
18)执行以下程序段后,m的值为( a )
int a[2][3]=,
int m,*p;
p=&a[0][0];
m=(*p)*(p+2))*p+4));
a) 15 b) 14 c) 13 d) 12
19) c语言规定,函数返回值的类型是由。
a) return语句中的表达式类型所决定。
b) 调用函数时的主调函数类型所决定。
c) 调用该函数时系统临时决定。
d) 在定义该函数时所指定的函数类型所决定。
20)有以下程序输出结果是( a )
#include “
main()
int a,b,c=246;
a=c/100%9;
b=(-1)&&1);
printf("%d,%d",a,b);
a) 2,1 b) 3,2 c) 4,3 d) 2,-1
21) 以下程序输出结果是( d )
main()
char a=programming", b=language";
char *p1,*p2;
int i;
p1=a; p2=b;
for(i=0;i<7;i++)
if(*(p1+i)==p2+i)) printf("%c",*p1+i));
a) gm b) rg c) or d) ga
22) 以下程序输出结果是( a )
viod fun (int a,int b,int c)
a=456; b=567; c=678;}
main()
int a=10, b=20,c=30;
fun (a,b,c);
printf("%d,/%d",a,b,c);
a) 30,20,10 b) 10,20,30
c) 456,567,678 d) 678,567,456
23) 以下程序输出结果是( c )
int fun(int x,int y,int *cp,int *dp)
*cp=x+y; *dp=x-y; }
main()
int a, b, c, d;
a=30; b=50;
fun(a,b,&c,&d);
printf("%d,%d", c, d);
a)50,30 b)30,j50 c)80,-20 d)80,20
24) 在c语言中,数组内的各元素:
a) 必须是同一类型 (b) 不必是同一类型。
c) 必须不相等 (d) 必须按数值大小排列。
25)当说明一个共用体变量时系统分配给它的内存是 (
(a)各成员所需内存量的总和
b) 结构中第一个成员所需内存量。
c)成员中占内存量最大者所需容量。
d) 结构中最后一个成员所需内存量。
二、 判断题(每小题1分,共9分)
1、c语言程序的三种基本结构是顺序结构、选择结构和循环结构。(
2、在c语言中整数只能表示为十进制数的形式。(
3、在c程序中,无论多大的整数还是实数,都能准确无误的表示。(
4、turbo-c语言中,字符类型数据占1个字节。(
5、空语句是合法的c语句。(
6、while语句的循环体不能是复合语句。(
7、for( ;s中的语句s必执行无穷多次。 (
8、break语句只能用于for循环。(
9、在main函数中定义的变量称为全局变量。(
三、 写程序运行结果(每小题4分,共20分)
1. abc(int a,int b)
int temp;
temp=a;
a=b;b=temp;
main()
printf(“%d”,m);
若输入89,则输出结果是:
void main()
int a
int y,*p=&a[1];
y=(*p)++
printf(“%d ”,y);
printf(“%d”,a[0]);
C语言试卷一
试卷 一 学号姓名成绩。一 填空题。1.一个c源程序户至少应包括一个函数。2.c语言程序中,一个char数据在内存中所占的字节数 一个int数据在内存中所占的字节数为 3.若有以下定义,则执行表达式y十 y一 m y后的y值 int m 5,y 2 4.若s是int型变量,且s 6,则表达式s 2十...
c语言试卷c
a.p q c.p n1 10 若有说明语句 int a,b,c,d c 则能从键盘读入三个整数分别赋给变量a b c的语句是。a.scanf d d d a,b,d b.scanf d d d a,b,d c.scanf d d d a,b,dd.scanf d d d a,b,d 11 c语言标...
C语言模拟试卷一
模拟试卷一。1.一个c语言源程序,main函数的位置 c a 必须在最开始。b 必须在自定义函数的前面。c 可以放在某一用户函数定义之前,也可以放在某一用户函数定义之后d 必须在自定义函数的后面。2.在c语言中,不正确的实型常量 a a 123e 3.0b 123c 1.23e 1d 0.123 3...