东北大学C语言期末考试题及答案(4)

2020-04-03 13:07

整型常量 整型变量 整型表达式 以上均可

15、 已知:int a[5]={0,1,2,3,4}; int *p=a; 下面的表达式不能用来表示a[3]的是_____ 正确答案是:C *(a+3) *(p+3) *p+3 p[3]

16、 已知:char str[10],*p=str; 下面的语句中正确的是_____ 正确答案是:B str=\ p=\ *str=\ *p=\

17、对于下面语句描述不正确的为_____ struct Student { unsigned long id; char name[30]; char calss[30]; }oStu1; 正确答案是:B

struct Student为用户自定义类型 Student为用户自定义类型 name为结构体成员变量 oStu1为结构体变量名称

18、一个c程序的执行是从________ 正确答案是:A

本程序的main函数开始,到main函数结束

本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 本程序的main函数开始,到本程序文件的最后一个函数结束 本程序文件的第一个函数开始,到本程序main函数结束

19、若x、i、j和k都是int型变量,则计算下面表达式后,x的值为 ________ x=(i=4,j=16,k=32) 正确答案是:C

4 16 32 52

20、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是________ 正确答案是:A 2.500000 2.750000 3.500000 0.000000

21、以下叙述中正确的是( ) 正确答案是:D

输入项可以是一个实型常量,如scanf(“%f”,3.5);

只有格式控制,没有输入项也能正确输入数据到内存,例如:scanf(“a=%d,b=%d”);

当输入实型数据时,格式控制部分可以规定小数位数,例如:scanf(“%4.2f”,&f);

当输入数据时,必须指明变量地址,例如:scanf(“%f”,&f); 22、以下程序输出结果是( )。 void main( ) { int m=5; if(m++>5)printf(“%d\\n”,m); else printf(“%d\\n”,m--); } 正确答案是:B 7 6 5 4

23、当执行以下程序段时( )。 x=-1; do { x=x*x;} while(!x); 正确答案是:A

循环体将执行一次 循环体将执行两次 循环体将执行无限次 系统将提示有语法错误

24、执行以下程序后,输出的结果是( )。 void main() { int y=10; do {y--;} while(--y); printf(“%d\\n”,y--); } 正确答案是:D -1 1 8 0

25、有如下程序 void main() { int x=23; do { printf(“%d”,x--);} while(!x); } 该程序的执行结果是( ) 正确答案是:B 321 23

不输出任何内容 陷入死循环

26、有如下程序 void main() { int y=3,x=3,z=1;

printf(“%d %d\\n”,(++x,y++),z+2); } 运行该程序的输出结果是( ) 正确答案是:D 3 4 4 2 4 3 3 3

27、有如下程序 void main( ) { int x=1,a=0,b=0; switch(x){ case 0: a++; case 1: b++; case 2: a++;b++; } printf(“a=%d,b=%d\\n”,a,b); } 该程序的输出结果是( ) 正确答案是:A a=1,b=2 a=1,b=1 a=1,b=0 a=2,b=2

28、若程序中定义了以下函数 double myadd(double a,double b) { return (a+b) ;} 并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是 正确答案是:A

double myadd(double a,b) ; double myadd(double,double);

double myadd(double b,double a) ; double myadd(double x,double y);

29、有以下程序 int fun(int x , int y) { if(x

30、有以下程序 void f(int v , int w) { int t; t=v;v=w;w=t; } main( ) { int x=1,y=3,z=2; if(x>y) f(x,y); else if(y>z) f(y,z); else f(x,z); printf(“%d,%d,%d\\n”,x,y,z); } 执行后输出结果是 正确答案是:A 1,2,3 3,1,2 1,33,1 2,3,1

31、以下列一维整型数组a的正确说明是________ 正确答案是:D

int a(10);

int n=10,a[n];

int n; scanf(\#define SIZE 10 int a[SIZE];

32、若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为________。(假设a[0][0]位于数组的第1个位置上) 正确答案是:D i*m+j j*m+i i*m+j-1 i*m+j+1

33、下面程序的运行结果是________。 #include \a[]=\int i,j=0; for(i=1;i<7;i++) if(a[j]

mogninr mo

morning mornin

34、执行下面程序段的结果是_____ main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++ } printf(\正确答案是:B a=1,b=1 a=2,b=1 a=1,b=0 a=2,b=2

35、若有以下程序段: for(m=1;m<=100;m++) { scanf(“%d”,&y); if(y<0) continue; printf(“=”,m); }正确的描述是_____ 正确答案是:D

当y<0时整个循环结束 当y>=0时什么也不输出 printf 函数永远也不执行 最多允许输出100个非负整数

36、.以下关于switch语句和break语句的描述正确的是_____ 正确答案是:D

在switch语句中必须使用break语句 break语句只能用于switch语句体中 break语句只能用于循环语句中

在switch语句中可以使用break语句 37、下列描述中,正确的是_____ 正确答案是:A

所有的输入/输出都是通过调用库函数处理的 所有的输入/输出都是通过输入/输出语句实现的 getchar和putchar可以省略#include

在输入/输出格式中的*表示跳过数据的含义

38、若给定表达式(x)?(a++):(a--),则表达式x_____ 正确答案是:C 和(x==0)等价 和(x!=1)等价


东北大学C语言期末考试题及答案(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2012注册安全工程师考试题及答案(整理版)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: