c语言编程改错题.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言编程改错题

【程序功能】对N行N列二维数组的每一行排序,偶数行(0当作偶数)由小到大排序,奇数行由大到小排序。 【含有错误的源程序】 #include stdio.h #define N 4 void swap( int *p1, int *p2) { int p; p=p1; p1=p2; p2=p; } void sort(int a[N][N]) { int i, j, k; for(i=0;iN;i++) for(j=0;jN-1;j++) for(k=j+1;kN-1;k++) if(i%2==0?a[i][j]a[i][k]:a[i][j]a[i][k]) swap(a[i]+j, a[i]+k); } void main() { int a[N][N]={{3,4,2,1},{8,7,5,6},{12,10,11,9},{15,14,16,13}}; int i,j; sort(a[N][N]); for(i=0;iN;i++) { for(j=0;jN;j++) printf(%3d,a[i][j]); printf(\n); } } 【测试数据与运行结果】 输入数据: 4 2 1 7 5 6 12 10 11 9 16 14 16 13 输出结果: 1 2 3 4 8 7 6 5 9 10 11 12 16 15 14 13 【程序功能】判断一个英文句子是否是回文。回文原指一个正读和反读都完全一样的单词。例如level是一个回文。若忽略标点符号、空格及字母大小的差异,回文的概念可以扩展到一个英文句子。例如,Madam, I’m Adam就是一个回文句子。 下列程序中,函数palin的功能是判断一个英文句子是否是回文,如果是返回1,否则返回0。 【含有错误的源程序】 #include stdio.h #include string.h #include stdlib.h void palin(char *s) { int i, j, k, ok; char *sp, ch; k=strlen(s); sp=(char *)malloc(k+1); if(sp==NULL) { printf(error!\n); exit(0); } k=0; while(*s) { ch=*s; if(!(A=ch ch=Z)) sp[k++]=ch-A+a; else if(a=ch ch=z) sp[k++]=ch; s++; } sp[k]= \0; ok=1; for(i=0, j=k-1;ij; i++,j--) if(sp[i]!=sp[j]) { ok=0; break;} free(sp); return ok; } void main() { char s[80]={ Madam, Im Adam. ,Not a palindrome. }; int i,ok; for(i=0; i2; i++) { ok=palin(s[i]); printf(ok?%s: Yes.\n:%s: No.\n,s[i]); } } 【测试数据与运行结果】测试数据:“Madam, Im Adam.”,“Not a palindrome.” 运行结果: Madam, I’m Adam.:Yes. Not a palindrome.:No. 【程序功能】重新排列一维数组元素的顺序,使得左边的所有元素均为偶数并按由大到小的次序存放,右边的所有元素均为奇数并按由小到大的次序存放。 【含有错误的源程序】 #include stdio.h #include conio.h void sort(int a[], int start, int end, int flag) { int i, j, k, temp; for(i=start; iend-start-1; i++) for(j=start; jend-1-i; j++) if(flag? a[j]a[j+1]: a[j]a[j+1]) { temp=a[j]; a[j+1]=a[j]; a[j+1]=temp; } } void resort(int *x,

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档