My_C_tests1.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:2 大小:41KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

My_C_tests1.doc

My_C_tests1.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

程序恒久远,好的永流传PageofNUMPAGES2“我出的C语言测试题”姓名(中文&英文):王华HarleyWangManager:DanielXia第一道C语言测试题:题目分值10分题目考点,及建议用时本题考察基本数据类型之间的转换规则;建议用时10分钟题目描述voidfoo(void){unsignedinta=6;intb=-20;if((b+a)>6){printf(">6\n");}else{printf("<=6\n");}return;}写出程序输出结果,并给出原因。提示及注意事项去年UMTS才上Cingular时,有一个timerwraparound的问题,原因就是数据类型的匹配问题,所以我认为此类问题值得注意。答案及评分标准输出结果:>6原因:Integer和unsignedint类型的操作数在一起时,一律按unsignedint处理。给出结果3分,指出原因7分。第二道C语言测试题:题目分值10分题目考点,及建议用时本题考察循环边界和字符串方面的知识;建议用时10分钟题目描述这是转换字符大小写的程序,请找出程序中的问题:intmain(){charinputStr[]="abcdefghiABCDEFGHIJK123";unsignedintcount=strlen(inputStr);printf("Inputstringis%s\n",inputStr);while(count>=0){if(inputStr[count]>='A'&&inputStr[count]<='Z'){inputStr[count]+=0x20;}elseif(inputStr[count]>='a'&&inputStr[count]<='z'){inputStr[count]-=0x20;}count--;}printf("Outputstringis%s\n",inputStr);return0;}提示及注意事项答案及评分标准答案:1、使用unsignedintcount做循环变量,并且循环条件是count>=0,这会死循环或者SEGV。------5分2.字符串的最后一个元素是‘\0’,使用strlen()而不是strlen()-1,导致有一个字符没有处理。------5分