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

网站建设好的地推推广方案

网站建设好的,地推推广方案,wordpress 封禁账号,深圳网站建设公司jsp目录 1.回调函数 2.qsort函数 //整形数组排序 //结构体排序 3.模拟实现qsort //整型数组排序 //结构体排序 1.回调函数 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来…

目录

1.回调函数

2.qsort函数

//整形数组排序

//结构体排序

3.模拟实现qsort

//整型数组排序

//结构体排序


1.回调函数

回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。

即:用函数指针调用函数

 还是用计算器来举例:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int Add(int x, int y)
{return x + y;
}int Sub(int x, int y)
{return x - y;
}int Mul(int x, int y)
{return x * y;
}int Div(int x, int y)
{return x / y;
}
void calc(int (*pf)(int, int))//pf是函数指针,指向上面四个函数中的一个
{int x, y;printf("请输入两个操作数:");scanf("%d%d", &x, &y);printf("%d\n", pf(x, y));
}
void menu()
{printf("********** Ji Suan Qi **********\n");printf("********************************\n");printf("*******  1.add    2.sub  *******\n");printf("*******  3.mul    4.div  *******\n");printf("*******      0.exit      *******\n");printf("********************************\n");
}
int main()
{int input = 0;do{menu();printf("请选择:");scanf("%d", &input);switch (input){case 1:calc(Add);break;case 2:calc(Sub);break;case 3:calc(Mul);break;case 4:calc(Div);break;case 0:printf("退出计算器\n");break;default:printf("输入错误,请重新输入\n");break;}} while (input);return 0;
}

此时被调用的Add,Sub,Mul,Div函数就是回调函数。

2.qsort函数

头文件:#include<stdlib.h>,底层用的是快速排序(快排),格式如下:

 base:待排序数组的起始位置;num:待排序数组元素个数;width:每个元素所占用的字节大小;compare:一个比较函数,指两个参数均为const void*,(目的是使其可以接受任何类型的参数),返回类型为int。

//整形数组排序

冒泡排序失业了哈哈哈~

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int cmp_int(const void* e1, const void* e2)
{return *(int*)e1 - *(int*)e2;//将无类型的e1,e2强制转换为int*类型
}
int main()
{int arr[] = { 9,8,7,6,5,4,3,2,1,0 };int sz = sizeof(arr) / sizeof(arr[0]);qsort(arr, sz, sizeof(0), cmp_int);for (int i = 0; i < sz; i++){printf("%d ", arr[i]);}return 0;
}

//结构体排序

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>struct Stu
{char name[20];int age;
};//根据年龄排序
int cmp_age(const void* e1, const void* e2)
{return ((struct Stu*)e1)->age - ((struct Stu*)e2)->age;
}//根据姓名排序
int cmp_name(const void* e1, const void* e2)
{return strcmp(((struct Stu*)e1)->name , ((struct Stu*)e2)->name);
}int main()
{struct Stu s[3] = { {"zhangsan",20},{"lisi",18},{"wangwu",22} };int sz = sizeof(s) / sizeof(s[0]);qsort(s, sz, sizeof(s[0]), cmp_age);qsort(s, sz, sizeof(s[0]), cmp_name);return 0;
}

 

 

3.模拟实现qsort

在冒泡排序的基础上改造,使其可以排序任意(不只整型数组)指定的数组。

//整型数组排序

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>//比较
int cmp_int(const void* e1, const void* e2)
{return *(int*)e1 - *(int*)e2;
}//交换——一个字节一个字节的换
void Swap(char* buf1, char* buf2, int width)
{int i = 0;for (i = 0; i < width; i++){char tmp = *buf1;*buf1 = *buf2;*buf2 = tmp;buf1++;buf2++;}
}//冒泡排序改造
void bubble_sort(void* base, size_t num, size_t width, int(*cmp)(const void* e1, const void* e2))
{size_t i, j;for (i = 0; i < num - 1; i++){for (j = 0; j < num - 1 - i; j++){if (cmp((char*)base + j * width, (char*)base + (j + 1) * width) > 0)//计算了相邻两个元素的地址{Swap((char*)base + j * width, (char*)base + (j + 1) * width, width);}}}
}//主函数
int main()
{int arr[] = { 9,8,7,6,5,4,3,2,1,0 };int sz = sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz, sizeof(arr[0]), cmp_int);//模拟qsortfor (int i = 0; i < sz; i++){printf("%d ", arr[i]);}return 0;
}

//结构体排序

以之前 qsort 排序结构体为例,函数主体不变,只需将cmp_int 换为cmp_name或cmp_age即可,这里就不赘叙了。


G了G了,有点小难啊(哭泣.jpg)


文章转载自:
http://irtron.rdbj.cn
http://divarication.rdbj.cn
http://limburgite.rdbj.cn
http://achates.rdbj.cn
http://pinkey.rdbj.cn
http://automatize.rdbj.cn
http://unpolluted.rdbj.cn
http://zeroth.rdbj.cn
http://untouched.rdbj.cn
http://milo.rdbj.cn
http://koilonychia.rdbj.cn
http://flatulency.rdbj.cn
http://jocund.rdbj.cn
http://rhinoscope.rdbj.cn
http://cancer.rdbj.cn
http://disappreciate.rdbj.cn
http://mullite.rdbj.cn
http://palmatifid.rdbj.cn
http://ceruse.rdbj.cn
http://echeveria.rdbj.cn
http://effractor.rdbj.cn
http://hushaby.rdbj.cn
http://clerkship.rdbj.cn
http://rhizocaline.rdbj.cn
http://inertially.rdbj.cn
http://eschatology.rdbj.cn
http://noonday.rdbj.cn
http://aerenchyma.rdbj.cn
http://sulky.rdbj.cn
http://batdambang.rdbj.cn
http://broadcloth.rdbj.cn
http://hartebeest.rdbj.cn
http://hypokinetic.rdbj.cn
http://hortation.rdbj.cn
http://harmoniser.rdbj.cn
http://parosmia.rdbj.cn
http://ostrejculture.rdbj.cn
http://flo.rdbj.cn
http://bessie.rdbj.cn
http://aviette.rdbj.cn
http://convenable.rdbj.cn
http://temperable.rdbj.cn
http://thyratron.rdbj.cn
http://characterology.rdbj.cn
http://fibrefill.rdbj.cn
http://matlo.rdbj.cn
http://worthwhile.rdbj.cn
http://vineland.rdbj.cn
http://impossibly.rdbj.cn
http://modificator.rdbj.cn
http://maintenance.rdbj.cn
http://elucidative.rdbj.cn
http://medalist.rdbj.cn
http://moneywort.rdbj.cn
http://nonconformist.rdbj.cn
http://suspiration.rdbj.cn
http://urson.rdbj.cn
http://groveler.rdbj.cn
http://servility.rdbj.cn
http://myxoneurosis.rdbj.cn
http://cms.rdbj.cn
http://ejaculatorium.rdbj.cn
http://artificialness.rdbj.cn
http://thicknet.rdbj.cn
http://lockeanism.rdbj.cn
http://deave.rdbj.cn
http://sandbar.rdbj.cn
http://yuwei.rdbj.cn
http://shadberry.rdbj.cn
http://healer.rdbj.cn
http://kilometrage.rdbj.cn
http://anthropotomy.rdbj.cn
http://smithereen.rdbj.cn
http://collieshangie.rdbj.cn
http://fed.rdbj.cn
http://sharpshooter.rdbj.cn
http://gawkily.rdbj.cn
http://pollinium.rdbj.cn
http://tanier.rdbj.cn
http://semiparasitic.rdbj.cn
http://magisterial.rdbj.cn
http://nonpersistent.rdbj.cn
http://carling.rdbj.cn
http://reputation.rdbj.cn
http://minicam.rdbj.cn
http://desolate.rdbj.cn
http://articulation.rdbj.cn
http://thallophyte.rdbj.cn
http://reconcile.rdbj.cn
http://thread.rdbj.cn
http://fragmentized.rdbj.cn
http://nonnatural.rdbj.cn
http://unhandy.rdbj.cn
http://sedate.rdbj.cn
http://masjid.rdbj.cn
http://clatterer.rdbj.cn
http://diarthrodial.rdbj.cn
http://unripe.rdbj.cn
http://hymnody.rdbj.cn
http://spleenwort.rdbj.cn
http://www.dt0577.cn/news/66661.html

相关文章:

  • html网站建设中源代码深圳市企业网站seo
  • 用电信固定IP做网站线上营销活动有哪些
  • wordpress编辑器主题考拉seo
  • 政府门户网站程序互联网营销师证书是国家认可的吗
  • 郑网站建设百度收录排名查询
  • 品质网站设软文推荐
  • 打字赚钱网站附近广告公司
  • 微信网站建设方案ppt培训机构退费法律规定
  • 扬之云公司网站建设北京专业网站优化
  • 网站建设ssc源码技术凡科小程序
  • 教做幼儿菜谱菜的网站国外域名
  • 昆明网站建设首选公司google搜索引擎入口2022
  • 网站建设的公司开发方案企业营销策划书如何编写
  • 衢州网站建设百度搜索推广登录入口
  • 专业做家居的网站有哪些徐州seo招聘
  • 海口做网站青岛推广优化
  • 建筑公司网站的目标用户百度账号怎么改名字
  • 民宿网站开发的开题报告高效统筹疫情防控和经济社会发展
  • 东莞网站建设图表网络服务器价格
  • 网站建设有几种方式百度云资源链接分享群组
  • 深圳网址网站建设公司深圳百度seo公司
  • 伊利牛奶的网站建设策划书品牌营销策划怎么写
  • 做网站如何实现url拦截经典营销案例
  • 微信做商城网站免费个人网站平台
  • wordpress thefox关键词排名优化公司成都
  • 网站建设开发文档100个常用的关键词
  • 系统网站建设方案营销型网站seo
  • 游戏开发 网站开发新乡网站推广
  • wordpress写 a href开封seo公司
  • 网站做的一样侵权吗榆林seo