C语言考试必备习题集&答案(5)

2019-06-02 17:03

{ int a[ 【1】11或者大于11的任何整

数]={1,10,20,30,40,50,60,70,80,90},x,i,p;

scanf(\%d\,&x);

for(i=0,p=10;i<10;i++)

if(x=p;i--) a[i+1]=a[i]; 【3】a[p]=x或者a[i+1]=x ;

for(i=0;i<=10;i++) printf(\]\\n\,a[i]); printf(\\\n\); }

4 以下程序的功能是:将t数组的内容连接到s数组内容的后面,使s数组保存连接后的新字符串。 main()

{ static char s[30]=\abcdefg\,t[]=\abcd\; int i=0,j=0; while(s[i]!='\\0') 【1】i++ ;

while(t[j]!='\\0') { s[i+j]=t[j]; j++; } 【2】s[i+j]='\\0' ; printf(\%s\\n\,s); }

函数

一 单项选择题(每题2分,共40分) 1 以下正确的函数定义是_D__。

A double fun(int x,int y) B double fun(int x,y) { z=x+y; return z; } { int z; return z; } C fun (x,y) D double fun(int x,int y) { int x,y; double z ; { double z; z=x+y; return z; } return z; }

2 以下正确的说法是_D__。

A 实参和与其对应的形参各占用独立的存储单元 B 实参和与其对应的形参共占用一个存储单元

C 有当实参和与其对应的形参同名时才共占用相同的存储单元 D 形参是虚拟的,不占用存储单元

3 若调用一个函数,且此函数中没有return语句,则正确的说法是_A__。 A 该函数没有返回值 B 该函数返回若干个系统默认值 C 能返回一个用户所希望的函数值 D 返回一个不确定的值 4 以下正确的描述是_B__。

A 函数的定义可以嵌套,但函数的调用不可以嵌套 B 函数的定义不可以嵌套,但函数的调用可以嵌套 C 函数的定义和函数的调用均不可以嵌套 D 函数的定义和函数的调用均可以嵌套

5 若用数组名作为函数调用的实参,传递给形参的是_A__。

A 数组的首地址 B 数组中第一个元素的值

20

C 数组中的全部元素的值 D 数组元素的个数 6 以下不正确的说法是_D__。

A 在不同函数中可以使用相同名字的变量 B 形式参数是局部变量

C 在函数内定义的变量只在本函数范围内有定义

D 在函数内的复合语句中定义的变量在本函数范围内有定义 7 已知一个函数的定义如下:

double fun(int x, double y) { ?? } 则该函数正确的函数原型声明为__C_。

A double fun(int x,double y) B fun(int x,double y) C double fun(int,double); D fun(x,y); 8 关于函数声明,以下不正确的说法是_C__。

A 如果函数定义出现在函数调用之前,可以不必加函数原型声明 B 如果在所有函数定义之前,在函数外部已做了声明,则各个主调函数不必再做函数原型声明

C 函数在调用之前,一定要声明函数原型,保证编译系统进行全面的调用检查 D 标准库不需要函数原型声明

9 调用函数的实参与被调用函数的形参应有如下关系_D__。

A 只要求实参与形参个数相等 B 只要求实参与形参顺序相同 C 只要求实参与形参数据类型相同 D 上述三点均需具备 10 凡在函数中未指定存储类别的变量,其隐含的存储类别是_A__。

A 自动 B 静态 C 外部 D 寄存器 11 在源程序的一个文件中定义的全局变量的作用域是_D__。

A 在本文件的全部范围 B 该程序的全部范围

C 一个函数的范围 D 从定义该变量的位置开始至该文件的结束 12 下列程序运行后的输出的数据是_C__。

int sum(int n) { int p=1,s=0,i;

for(i=1;i<=n;i++) s+=(p*=i); return s; }

main()

{ printf(\sum(5)=%d\\n\,sum(5)); }

A sum(5)=151 B sum(5)=152 C sum(5)=153 D sum(5)=155 13 下列程序运行后的输出结果是__A_。

int c=1; main()

{ static int a=5;int b=6;

printf(\a=%d,b=%d,c=%d\\n\,a,b,c); func();

printf(\a=%d,b=%d,c=%d\\n\,a,b,c); func(); }

func()

21

{ static int a=4;int b=10; a+=2;c+=10;b+=c;

printf(\a=%d,b=%d,c=%d\\n\,a,b,c); }

A a=5,b=6,c=1 B a=5,b=6,c=11 C a=5,b=6,c=1 D a=5,b=6,c=1 a=6,b=21,c=11 a=5,b=21,c=11 a=5,b=21,c=11 a=6,b=21,c=11 a=5,b=6,c=11 a=5,b=6,c=11 a=5,b=6,c=11 a=5,b=6,c=11 a=8,b=31,c=21 a=8,b=31,c=21 a=8,b=31,c=21 a=5,b=31,c=21 14 运行下面的程序后,其输出结果是_A__。

main()

{ int a=6,b=2,c; c=f(a)/f(b);

printf(\%d\\n\,c); }

int f(int x) { int y; y=x++*x++; return y; }

A 9 B 6 C 36 D 18 15 下列程序输出结果是_D__。

#include my()

{ static int x=3; x++;

return(x); }

main()

{ int i,x;

for(i=0;i<=2;i++) x=my(); printf(\%d\\n\,x); }

A 3 B 4 C 5 D 6 16 下列程序的输出结果是_A__。

#include int abc(int u,int v) { int w;

while(v) { w=u%v; u=v; v=w; } return u; }

main()

{ int a=24,b=16,c; c=abc(a,b);

printf(\%d\\n\,c);

22

}

A 8 B 6 C 5 D 4 17 下列程序运行后的输出结果是__B_。

main()

{ static char s[]=\abcdefgca\; p(s); printf(\s[]=%s\\n\,s); }

p(char s[]) { int i,j;

for(i=j=0;s[i]!= '\\0';i++) if(s[i]!='a'+2) s[j++]=s[i]; s[j]= '\\0'; }

A s[]=abcdefgca B s[]=abdefga C s[]=bcdefgc D 程序有错 18 下列程序运行后的输出结果是_C__。

void main()

{ int m=4,n=2,k;

k=fun(m,n); printf(\%d\\n\,k); k=fun(m,n); printf(\%d\\n\,k); }

int fun(int x,int y) { static int n=3,i=2; i+=n+1; n=i+x+y; return(n); }

A 12 B 12 C 12 D 12 12 23 25 16 19 下列程序运行后的输出结果是_D__。

int x=1; main()

{ int i=5; fun(i);

printf(\%d,%d\\n\,i,x); }

fun(m) int m; { m+=x; x+=m;

{ char x='A'; printf(\%d\\n\,x); } printf(\%d,%d\\n\,m,x); }

A 65 B A C A D 65 6,1 6,1 6,7 6,7 6,1 6,1 6,7 5,7 20 下列程序运行后,若从键盘输入ABC!四个字符后,程序输出是_C__。

23

#include main()

{ void receiv(); receiv(); }

void receiv() { char c;

c=getchar(); putchar(c);

if(c!='!') receiv(); putchar(c); }

A ABC!! B ABC!ABC! C ABC!!CBA D ABCABC

二 填空题(每空3分,共30分)

1 函数调用语句:fun((a,b),(c,d,e));,实参个数为_2__。

2 凡在函数中未指定存储类别的局部变量,其默认的存储类别为_自动__。

3 在一个C程序中,若要定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量需要定义的存储类别为_静态外部变量__。

4 C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递方式是_值传递__。

5 运行下面程序,其输出结果是_15,35__。

#include int x,y; one()

{ int a,b; a=25,b=10; x=a-b;y=a+b; }

main()

{ int a,b; a=9,b=5; x=a+b;y=a-b; one();

printf(\%d,%d\\n\,x,y): }

6 运行下面程序,其输出结果是_321__。

#include main()

{ void printd() int n=123; printd(n); }

void printd(int n)

24


C语言考试必备习题集&答案(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:机关作风建设存在主要问题及其对策

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

马上注册会员

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