- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
笔试部分 时间90分钟 看本部分试题都是标准化试题,分选择和填空两种类型,满分100分 选择题共40题,共70分 (1~10,21~40每题2分,11~20每题1分) 填空题共15个空,没空2分,共30分 1.一个C语言程序编写到执行出结果需要6个步骤: 编辑、 预处理、 编译(产生.obj文件)、 链接(产生.exe文件)、 装载、 执行。 例题1:int i=3;m=(++i)+(++i)+(++i) ; 则m=_____ i=______ 解析:由上面的定义可知,这里三个运算符都是前++,所以先把i的值依次加一,也可写成等效式为: int i=3; ++i;++i; ++i;m=i+i+i;每个++i都加一,所以三个++i后i=6,然后m=6+6+6; 解析:这里既有前++又有后++,一个前++两个后++。 根据定义写出等效式为:int i=3; ++i; m=i+i+i; i++; i++;所以很容易看出来在算m值时,i值自增了一次后为4.所以m=12; 算好m后i还会自增两次,所以i值还是6. 例题:设有语句:int a=5,b=7;执行语句:a+=a++||b++后,a= 7 ,b= 7 解析:这里需要考虑+=(算术复合赋值运算符)和||(逻辑或)的优先级。由于||(逻辑或)的优先级高,所以先看表达式右边的式子,右边是一个逻辑表达式,逻辑表达式的值是0或1,这里a++的值为6不为0,则||后就不要看了,所以b++就不执行了,因为表达式的值已经确定为1. 5. 逗号表达式和逗号运算符 用逗号运算符将几个表达式连接起来, 例如a=b+c,b=a*a,c=a+b,称为逗号表达式 一般形式为: 表达式1,表达式2,表达式3,…表达式n 逗号表达式的求解过程是:先求解表达式1 然后依次求解表达式2,直到表达式n的值。整个逗号表达式的值就是表达式n的值。需要注意的是,逗号运算符是所有运算符中级别最低的。 例:已知x、a为int型变量,表达式x=(a=3,a*2,a+6)的值为 9 6.字符输出函数putchar()和输入函数getchar() putchar()函数的作用是向终端输出一个字符。 如:putchar(a);它输出字符变量a的值,a也可以是字符型变量或整形变量。若a是整型变量,则输出的是ASCII码值为该变量值的那个字符。 getchar()函数的作用是从终端输入一个字符,getchar()函数没有参数,函数值就是从输入设备得到的字符。 注意与scanf的区别。scanf函数接受输入数据时,遇到以下情况结束一个数据的输入: 1).遇空格,回车,跳格 2).遇宽度结束 3).遇非法输入 例. #includestdio.h main() { char str[10]; scanf(“%s”,str); printf(“%s\n”,str); } 运行上面的程序,输入字符串HOW DO YOU DO,则程序的输出结果是(B) A.HOW DO YOU DO B.HOW C.HOWDOYOUDO D.how do you do 解析:因为当从键盘输入字符串HOW DO YOU DO时,由于scanf()函数输入时遇到空格结束,只将HOW3个字符送到字符数组str中,并在其后自动加上结束符‘\0’. 7.break语句和continue语句 (1)break语句: break语句只能出现在循环体内及switch语句内,不能用于其他语句。 当break出现在循环体中的switch语句体内,其作用只是跳出该switch语句体。当break出现在循环体中,但并不在switch语句体内时,则在执行break后,跳出本层循环,当然也不再去进行条件判断。 (2)continue语句: 一般形式为:continue;其作用是结束本次循环,即跳过循环体中下面尚未执行的语句,而转去重新判定循环条件是否成立,从而确定下一次循环是否继续执行。 continue语句和break语句的区别是: continue语句只结束本次循环,而不是终止整个循环的执行;而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。 例题:假设i已经定义为整数变量,以下程序段中,while循环的循环次数是( ) i=0; While(i10) { if(i%2)continue; if(i==5)break; i++; }
文档评论(0)