当前位置: 首页 > news >正文

课工场网站建设培训太原做网站公司运营

课工场网站建设培训,太原做网站公司运营,wordpress 图片 优化,如何做慕课网站C程序设计语言 (第二版) 练习 5-14 练习 5-14 修改排序程序,使它能处理-r标记。该标记表明,以逆序(递减)方式排序。要保证-r和-n能够组合在一起使用。 注意:代码在win32控制台运行&#xff0c…

C程序设计语言 (第二版) 练习 5-14

练习 5-14 修改排序程序,使它能处理-r标记。该标记表明,以逆序(递减)方式排序。要保证-r和-n能够组合在一起使用。

注意:代码在win32控制台运行,在不同的IDE环境下,有部分可能需要变更。
IDE工具:Visual Studio 2010

 

代码块:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>#define MAXLINES 5000
#define MAXLEN 1000
#define ALLOCSIZE 10000static char allocbuf[ALLOCSIZE];
static char *allocp = allocbuf;char *alloc(int n){if(allocbuf + ALLOCSIZE - allocp >= n){allocp += n;return allocp - n;}else{return 0;}
}void afree(char *p){if(p >= allocbuf && p < allocbuf + ALLOCSIZE){allocp = p;}
}char *lineptr[MAXLINES];int getline(char *s, int lim){int c;char *t = s;while(--lim > 0 && (c = getchar()) != EOF && c != '\n'){*s++= c;}if(c == '\n'){*s++ = c;}*s = '\0';return s - t;
}int readlines(char *lineptr[], int maxlines){int len, nlines;char *p, line[MAXLEN];nlines = 0;while((len = getline(line, MAXLEN)) > 0){if(nlines >= maxlines || (p = alloc(len)) == NULL){return -1;}else{line[len-1] = '\0';strcpy(p, line);lineptr[nlines++] = p;}}return nlines;
}void writelines(char *lineptr[], int nlines){while(nlines-- > 0){printf("%s\n", *lineptr++);}
}void swap(void *v[], int i, int j){void *temp;temp = v[i];v[i] = v[j];v[j] = temp;
}int numcmp(const void *s1, const void *s2){double v1, v2;v1 = atof(*(const char **)s1);v2 = atof(*(const char **)s2);if(v1 < v2){return -1;}else if(v1 > v2){return 1;}else{return 0;}
}void qsort(void *v[], int left, int right, int(*comp)(const void*, const void*), int sign){int i, last;if(left >= right){return;}swap(v, left, (left + right) / 2);last = left;for(i = left + 1; i <= right; i++){if(sign == 0){if((*comp)(v[i], v[left]) < 0){swap(v, ++last, i);}}if(sign == 1){if((*comp)(v[i], v[left]) > 0){swap(v, ++last, i);}}}swap(v, left, last);qsort(v, left, last - 1, comp, sign);qsort(v, last + 1, right, comp, sign);
}int main(int argc, char *argv[]){int nlines;int numeric = 0;int sign = 0;if(argc > 1){if(strcmp(argv[1], "-n") == 0){numeric = 1;sign = 0;}if(strcmp(argv[1], "-n") == 0 && strcmp(argv[2], "-r") == 0){numeric = 1;sign = 1;}}if((nlines = readlines(lineptr, MAXLINES)) >= 0){qsort((void**)lineptr, 0, nlines - 1, (numeric ? numcmp : (int (*)(const void *,const void *))strcmp), sign);writelines(lineptr, nlines);system("pause");return 0;}else{printf("Error: input too big to sort!\n");system("pause");return 1;}system("pause");return 0;
}
http://www.yayakq.cn/news/475396/

相关文章:

  • 手机微网站怎么制作聚合广告联盟
  • 网站颜色 字体嘉兴网站关键词
  • 网站建设的入门书籍简历模板word
  • 先域名 还是先做网站泉州网页制作企业
  • 阳江网站建设 公司html网页模板代码下载
  • 单位门户网站功能Wordpress编辑主页页面
  • 专做会议发布的网站如何设置标签wordpress
  • 商洛网站建设电话建网站专业
  • 石家庄建站好搭建网站建设
  • 做装修网站多少钱wordpress wp-content 权限
  • 汕尾招聘 网站建设合伙人京东网站开发费用
  • 有哪些网站可以用怎么创建网站后台
  • 韶关营销型网站建设3d网站怎么做
  • 自己做的网站被攻击了学校网站建设规范
  • 用vs做网站后台长沙微信交流群
  • 长沙建网站培训机构廊坊北京网站建设
  • 图片展示网站模板中企动力电话号码
  • 济南网站建设新风向wordpress 留言板插件
  • 有什么好网站做浏览器主页如何通过国外社交网站做外销
  • 桑福生物科技网站开发知名网站域名被抢注
  • qq恢复官方网站wordpress少儿主题
  • 做网站建设出路在哪里做网站需要用什麼服务器
  • 怎么做百度自己的网站空间宜昌视频网站建设
  • 教育机构电商网站建设加盟兰州新增94个高风险区
  • 网站开发需求分析郑州高端网站建设公司
  • 网站生成静态页面江苏建设厅老网站
  • 自适应网站内容区做多大合适WordPress扫码
  • wordpress中英文网站模板wordpress淘宝优惠券插件
  • wordpress网站怎么打开很慢备案的网站名
  • 电商网站设计内容在线制作logo免费下载