C语言程序设计的试题Word格式.docx

上传人:b****2 文档编号:14878393 上传时间:2022-10-25 格式:DOCX 页数:14 大小:21.70KB
下载 相关 举报
C语言程序设计的试题Word格式.docx_第1页
第1页 / 共14页
C语言程序设计的试题Word格式.docx_第2页
第2页 / 共14页
C语言程序设计的试题Word格式.docx_第3页
第3页 / 共14页
C语言程序设计的试题Word格式.docx_第4页
第4页 / 共14页
C语言程序设计的试题Word格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

C语言程序设计的试题Word格式.docx

《C语言程序设计的试题Word格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计的试题Word格式.docx(14页珍藏版)》请在冰豆网上搜索。

C语言程序设计的试题Word格式.docx

=b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+b

  5、若变量a,i已正确定义,且i已正确赋值,合法的语句是。

  A)a==1B)++i;

C)a=a++=5;

D)a=int(i);

  6、已知:

  intt=0;

  while(t=1){...}

  则以下叙述正确的是。

  A)循环控制表达式的值为0B)循环控制表达式的值为1

  C)循环控制表达式不合法D)以上说法都不对

  7、若变量已正确说明为float型,要通过语句scanf("%f%f%f",a,b,c);

给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是。

  A)10回车22回车33回车B)10.0,22.0,33.0回车

  C)10.0回车22.033.0回车D)1022回车33回车

  [解析]遇到"%d%d%d"或"%f%f%f"不能用逗号作几个数据间的分隔符。

  8、有如下程序:

  main()

  {

  intx=1,a=0,b=0;

  switch(x)

  case0:

b++;

  case1:

a++;

  case2:

b++;

  }

  printf("

a=%d,b=%d\n"

a,b);

}

  该程序的输出结果是

  A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2

  [解析]根据x=1,执行case1,接着并未退出switch,而是执行case2。

即找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

  9、有以下程序

  {inti=1,j=1,k=2;

  if((j++||k++)i++)

%d,%d,%d\n"

i,j,k);

  执行后输出结果是。

  A)1,1,2B)2,2,1C)2,2,2D)2,2,3

  [解析]本题关键在于k保持原值2不变,因为或运算只需要检验j++是否为真即可判断整个表达式j++||k++为真,相当于没有执行k++。

  10、有如下程序

  {floatx=2.0,y;

  if(x0.0)y=0.0;

  elseif(x10.0)y=1.0/x;

  elsey=1.0;

%f\n"

y);

  该程序的输出结果是。

  A)0.000000B)0.250000C)0.500000D)1.000000

  11、有如下程序:

  {intn=9;

  while(n6){n--;

printf("

%d"

n);

  A)987B)876C)8765D)9876

  [解析]第一遍循环n=9,执行n--,输出n现值8,以此类推得到B答案。

  12、在下列选项中,没有构成死循环的是。

  A)inti=100;

  while

(1)

  {i=i%100+1;

  if(i100)break;

  B)for(;

;

);

  C)intk=10000;

  do{k++;

}while(k10000);

  D)ints=36;

  while(s)--s;

  [解析]A选项if表达式的条件是假,而while表达式是真,构成死循环;

B选项相当于while

(1),无终止的执行循环体;

C选项第一次执行循环后k=10001,自此后k10000恒为真,无终止循环;

D答案选项当s自减至0时,while表达式为假,跳出循环。

  13、设intx=1,y=1;

表达式(!

x||y--)的值是。

  A)0B)1C)2D)-1

  14、有以下程序

  floatfun(intx,inty)

  {return(x+y);

  {inta=2,b=5,c=8;

%3.0f\n"

fun((int)fun(a+c,b),a-c));

  程序运行后的输出结果是。

  A)编译出错B)9C)21D)9.0

  [解析](int)fun(a+c,b)为(int)fun(10,5),经调用后值为15;

接着计算fun((int)fun(a+c,b),a-c)为fun(15,-6),经调用后值为9。

  15、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是。

  A)函数调用可以作为独立的语句存在B)函数调用可以作为一个函数的实参

  C)函数调用可以出现在表达式中D)函数调用可以作为一个函数的`形参

  16、若有以下调用语句,则不正确的fun函数的首部是。

  {…

  inta[50],n;

  …

  fun(n,a[9]);

  A)voidfun(intm,intx[])B)voidfun(ints,inth[41])

  C)voidfun(intp,int__s)D)voidfun(intn,inta)

  [解析]把数组a中9号元素的地址传递给fun的函数参数,本题的考点是用什么来做函数的形参。

A选项用不定长度的数组x作形参;

B选项用长度小于50的数组h作形参;

C用指针变量__s作形参;

显然D中形参变量a只是普通的整形变量,不能接收来自于实参9号元素的地址。

  17、fseek函数的正确调用形式是。

  A)fseek(文件指针,起始点,位移量)B)fseek(文件指针,位移量,起始点)

  C)fseek(位移量,起始点,文件指针)D)fseek(起始点,位移量,文件指针)

  18、若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是。

  A)EOFB)-1C)1D)NULL

  19、若有说明语句:

charc=\72;

则变量c。

  A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法,c的值不确定

  20、若有说明inta[3][4];

则a数组元素的非法引用是。

  A)a[0][2__1]B)a[1][3]C)a[4-2][0]D)a[0][4]

  21、设有以下说明语句

  structstu

  {inta;

  floatb;

  }stutype;

  则下面的叙述不正确的是。

  A)struct是结构体类型的关键字B)structstu是用户定义的结构体类型

  C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名

  22、在C语言中,引用数组元素时,其数组下标的数据类型允许是。

  A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式

  23、若运行时给变量x输入12,则以下程序的运行结果是。

  {intx,y;

  scanf("

x);

  y=x12?

x+10:

x-12;

%d\n"

  A)0B)22C)12D)10

  24、以下说法正确的是。

  A)C语言程序总是从第一个的函数开始执行

  B)在C语言程序中,要调用函数必须在main()函数中定义

  C)C语言程序总是从main()函数开始执行

  D)C语言程序中的main()函数必须放在程序的开始部分

  25、表达式0x13^0x17的值是。

  A)0x04B)0x13C)0xE8D)0x17

  26、有以下程序

  #defineF(X,Y)(X)__(Y)

  {inta=3,b=4;

F(a++,b++));

  A)12B)15C)16D)20

  27、下列程序执行后的输出结果是。

  voidfunc(int__a,intb[])

  {b[0]=__a+6;

}

  {inta,b[5];

  a=0;

b[0]=3;

  func(a,b);

b[0]);

  A)6B)7C)8D)9

  [解析]func(a,b)中两个参数分别把整形变量a的地址传递给指针变量__a、把数组b(即数组名作实参)首元素的地址传递给形参数组b[]。

因此在func()函数中,b[0]=__a+6=0+6=6。

  28、若有下面的程序段:

  chars[]="

china"

char__p;

p=s;

  则下列叙述正确的是。

  A)s和p完全相同B)数组s中的内容和指针变量p中的内容相等

  C)s数组长度和p所指向的字符串长度相等D)__p与s[0]相等

  29、有以下程序

  voidsort(inta[],intn)

  {inti,j,t;

  for(i=0;

in-1;

i++)

  for(j=i+1;

jn;

j++)

  if(a[i]a[j]){t=a[i];

a[i]=a[j];

a[j]=t;

  {intaa[10]={1,2,3,4,5,6,7,8,9,10},i;

  sort(aa[3],5);

i10;

i++)printf("

%d,"

aa[i]);

\n"

  A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,

  C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,

  [解析]sort(aa[3],5)的作用是把数组aa的第3号元素及其后续4个元素(一共5个元素)由大到小排列,其他元素原样输出。

  30、以下程序的运行结果是。

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1