2004年秋上机试卷04.doc

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

2004年秋上机试卷04 改错题: 以下程序的功能是:求一个字符串在另一个字符串中第num次出现的位置。例如,第一个字符串为“abcde-abcd-abc”,第二个字符串为“abc”在第一个字符串中第一次出现的位置为1(不是0),第二次出现的位置为7,第三次出现的位置为12。 含有错误的源程序如下: #includeiostream.h #includestring.h char at(char *s1,char *s2) //求s2在s1中第一次出现的指针,若不出现,返回空指针 { for(int i=0;s1[i];i++) { for(int j=0;s2[j];j++) { if(s1[i+j]==\0) break; if(s1[i+j]!=s2[j]) break; } if(s2[j]) return s1+i; } return NULL; } void main() { char *str1=abcde-abcd-abc,*str2=abc; int num; //num指定str2在str1中第几次出现 char *ptr=str,*p2; coutstr1endl; coutstr2endl; coutPlease input num:; cinnum; //可输入1、2或3进行验证 do { p2=at(*ptr,*str2); if(!p2) break; ptr=p2+strlen(str2); num--; } while(num=0); if(ptr!=str1 p2) coutStart position:p2-str1+1endl; else coutNot found!\n; } 编程题: 将二维数组中值最大的元素与左上角元素对调,然后将值最小的元素与右下角元素对调。 例如,数组初值为 ,对调后数组为 。试定义一个 类Mat,并完成测试工作。 具体要求如下: 私有数据成员。 int a[M][N]:存入二维数组的值,M、N为预定义的符号常量。 公有成员函数。 Mat(int b[M][N]):构造函数,用二维数组b的值初始化数组a。 void process():完成元素的调换工作。 void show():输出二维数组a。 在主函数中完成对该类的测试。注意:在程序的开头,定义符号常数M和N的值分别为3和4,表示二维数组的行数和列数。在主函数中定义整形数组b[M][N],b的初值如上述示例中的初值。定义一个Mat类的对象ma,并用数组b初始化对象ma。通过ma调用成员函数完成元素对调工作。最后输出调换值后的二维数组的值。 答案: 一、 #includeiostream.h #includestring.h char at(char *s1,char *s2) //char * { for(int i=0;s1[i];i++) { for(int j=0;s2[j];j++) { if(s1[i+j]==\0) break; if(s1[i+j]!=s2[j]) break; } if(s2[j]) //if(!s2[j]) return s1+i; } return NULL; } void main() { char *str1=abcde-abcd-abc,*str2=abc; int num; char *ptr=str1,*p2; coutstr1endl; coutstr2endl; coutPlease input num:; cinnum; do { p2=at(*ptr,*str2); //ptr,str if(!p2) break; ptr=p2+strlen(str2); num--; } while(num=0); //num0 if(ptr!=str1 p2) coutStart position:p2-str1+1endl; else coutNot found!\n; } 二、 #includeiostream.

文档评论(0)

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

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

1亿VIP精品文档

相关文档