c语言程序设计试题2.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5 5 C语言程序设计试题2 一、单项选择题(每题2分,共40分) 1?以下叙述中正确的是 ° C语言系统以函数为单位编译源程序 main函数必须放在程序开始 用户左义的函数可以被一个或多个函数调用任意多次 在一个函数体内可以定义另外一个函数 以下选项中,不能用作c语言标识符的是 print B.FOR C.&a D._00 对于以下程序片段,描述正确的是 。 int x = -1; do }while(!x); 是死循环B.循环执行两次C.循环执行一次D.有语法错误 TOC \o "1-5" \h \z 己知有声明"int a=3,b=4,c=5;",以下表达式中值为0的是 。 A?a&&b B.a<=b C.a||b&&c D.!{!c||l) 已知有声明”longx,y;”且x中整数的十进制表示有n位数字(4<n<10),若要求去掉整数 x十进制表示中的最髙位,用剩下的数字组成一个新的整数并保存到y中,则以下表达式中能 正确实现这一功能的是 0 y=x/(10*(n-l)) B.y=x%(10*(n-l)) C.y=x%(long)pow(10/n-l) D.y=x%(10A(n-l)) 已知有声明"intx,y;",若要求编写一段程序实现”当x大于等于0时y取值1,否则Y取 值则以下程序段中错误的是 ° if(x>=0) y=l;else y=-l; B.y=x>=0?l:-l; D.switch(x-abs(x)){ case O:y=l;break; default:y=-l; D.switch(x-abs(x)) { case O:y=l;break; default:y=-l; } { case x>=0: y=l;break; default:y=-l; } 7?已知有声明%t m[]={5432“匸0二下列对m数组元素的引用中,错误是 A.m[++i] B.m[5] C.m[2*2] D.m[m[4]] 8.已知有声明“chars[80];“,若需要将键盘输入的一个不含空格的字符串保存到组中侧 下列语句中正确的是 ° A.scanf「%s 蔦 s); B.scanf「%s;[O]); C.s=gets(); D.s=getchar(); 9 ?若函数调用时的实参为变量,则以下关于函数形参和实参的叙述中正确的是. 实参和苴对应的形参占用同一存储单元 形参不占用存储单元 同名的实参和形参占用同一存储单元 形参和实参占用不同的存储单元 已知有声明"int i,a[20],*p=a;",现需要将1-10保存到a[0卜a[9冲,以下程序段中不能 实现这一功能的是 。 A.for(i=0;i<10;i++) a[ij=i+l; B.for(i=0;i<10;i++) p[ij=i+l; C.i=l;while(p<a+10) *p++=i++; D.i=l;while(p<a+10) *a++=i++; 以下关于预处理命令的叙述中错误的是 。 预处理命令由预处理程序解释 程序中的预处理命令是以#开始的 若在程序的一行中出现多条预处理命令,这些命令都是有效的 预处理命令既可以出现在函数立义的外部,也可以岀现在函数体内部 有如下程序段: char pl[80]=M Ganzhou,,/p2[20]= uYoung,,/*p32=M Olympic"; strcpy(pl/strcat(p2/p3)); printf( "%s\n" zpl); 执行该程序段后的输出是 A. GanzhouYoungOlympic B? YoungOlympic C? Olympic D? Ganzhou 已知有声明” intx[2][3]={0},*p=x[0];”,以下表达式中有语法错误的是 ? A? x[0]=l B? p[0]=l C? *p=l D?刈0][0]=l 程序中已有预处理命令八#include <math.h> "和声明"charx=4/y;n,以下表达式中 能通过编译且无警告信息的是 A? y=sqrt(x)%2 B? y二 “x" C? y=‘ x‘ +1 D.y二&' x‘ 对于以下程序片段,描述正确的是 o int x = -1; do x = x * x; }while(!x); A.是死循环B.循环执行两次C.循环执行一次D.有语法错误 已有声明” intx,a=3,b=2;”,则执行赋值语句” x=a>b++?a++: b++;”后茂量x、a、 b的值分别为 。 A? 343 B? 3 34 C? 333 D? 434 下面选项中可用作变量轲的是 A? Case B? a-b C? $cd D? 2ab 执行以下程序后的结果是 。 #include<stdio? h> void main(

您可能关注的文档

文档评论(0)

497721292 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档