2010C语言题目解答讲解.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2010C语言题目解答讲解

2010高考真题详解 第一套 【程序填空】 题目:对只包含-和字母字符的字符串str进行如下处理: 删除str中前导和尾部连续的-字符,保留串中字母字符以及字母间的-字符。 例如,str中初始字符串为----C--Language--Test----。 处理后,str中的字符串为C--Language--Test。 程序中isalpha函数功能是判断参数是否是字母,是字母,函数值为真,否则函数值为假。 #include stdio.h #include ctype.h void main(){ char str[]={---C--Language--Test---}; int i,start,end; i=0; while(str[i++]==-) ; /*该循环体为空,由前往后,不等于‘-’,则退出循环,i还多加1,实质i指向非减号的第二个字符*/ start=i-1; /*start指实非减号的第一个字符*/ while(str[i] != 【?】){ /*继续向后遍历字符串*/ if(isalpha(str[i])) /*如果是字母,则end=-1,表示不是结尾的地方*/ end=-1; else if(isalpha(str[i-1])) /*不是字母,如果前一个是字母,则结束的位置为当前的前一个,即end=i-1*/ end=i-1; /*由于由前往后的,遍历结束后,end只能保存最后一个结束的位置*/ i++; } str[end+1]=\0; /*在最后一个结束位置的字符后人工补\0,相当于去除尾部减号*/ for(i=start;i=end+1;i++) /*通过循环,将从start开始到人工补的\0的所有字符前移*/ str[i-【?】] = str[i]; /*填start,这样i的初值为start,相当于第一个字符移到srt[0]*/ printf(%s\n,str); } 答案: 1). 0 或 \0 2). start 【程序改错】 题目:函数unsigned fun(long s, int w)返回长整型变量s中第w位的值,例如调用fun(216783,1) 函数返回3,调用fun(216783,3)函数返回7。main()从键盘接收一个长整数给变量s,通过调用fun()函数求s奇数位之和,例如数216783各奇数位数字为1,7和3,它们的和为11。 下面给定的程序存在错误,请改正。 #include stdio.h unsigned fun(long s, int w) { int d; while(w0) { d %= 10; /*d=s%10;取出s的最后一位*/ s /=10; /*去除s的最后一位*/ w--; } return d; } main() { unsigned tot, w; /*累加器要赋初值0,w要赋初值1*/ long s, step; printf( Enter a long integer number:); scanf(%ld, s); step = s; while (step!=0) { tot = fun( s ,w); /*进行累加tot+=fun(s,w)*/ w+=2; /*w每次加2,这样正好全为奇数*/ step /=100; } printf(tot=%d\n, tot); return 0; } 答案: 1). d = s % 10; 2). unsigned tot=0, w=1; 或 int tot=0, w=1; 或 unsigned int tot=0, w=1; 或 char tot=0, w=1; 或 unsigned char tot=0, w=1; 3). tot += fun(s,w); 或 tot = fun(s,w) + tot; 或 tot = tot + fun(s,w); 【程序设计】

文档评论(0)

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

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

1亿VIP精品文档

相关文档