c语言自定义函数字符排序 c语言常用的排序方法

用c语言编程编写一个函数,用选择法对主函数中的一个字符数组进行从大到小的排序。

#includestdio.h

创新互联建站主要从事成都网站建设、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务确山,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

#includestring.h

void Sort(char s[][51],int n) {

char t[51];

int i,j,k;

for(i = 0; i  n - 1; ++i) {

k = i;

for(j = i + 1; j  n; ++j) {

if(strcmp(s[k],s[j])  0)

k = j;

}

if(k != i) {

strcpy(t,s[i]);

strcpy(s[i],s[k]);

strcpy(s[k],t);

}

}

}

int main() {

char s[][51] = {"continue","break","for","while","struct","swicth","edit","copy","past","please"};

int i,n = 10;

printf("排序前:\n");

for(i = 0; i  n; ++i)

printf("%s\n",s[i]);

Sort(s,10);

printf("\n排序后:\n");

for(i = 0; i  n; ++i)

printf("%s\n",s[i]);

printf("\n");

return 0;

}

c语言调用函数为字符串排序

首先你的string函数的函数类型没有指定,先定义为char*类型

同时你对str[SIZE]数组的初始化方式得到的每一个指针的类型为只读类型的指针(相当于加上了const关键字),所以初始化的时候改为如下这样的初始化方式吧。

然后main函数修改为

main(void)

{

char str[SIZE][30]=

{

{"Father"},

{"B"},

{"C"},

{"OK"},

{"Brother"}

};

for (i=0;iSIZE-1;i++)

{

printf("%s\n",string(str[i]));

}

}

c语言怎么用自定义函数排序

我做了一些修改,下面的程序可以运行!你肯定是个初学者,所以不要急慢慢来,把基础的东西一定要搞懂.

我所做的修改主要有3点:

1、自定义函数不能在函数名后加分号(除非在函数说明时)

2、自定义函数如要放在主函数之后,则在主函数中一定要说明int

opp(int

x);

否则一定要放在主函数之前定义

3、printf()是格式化的输出函数,一定要给出输出格式,你的程序中是int型的所以用“%d”

最后建议你找一本c语言的书好好看看!

#include

int

opp(x)

{

int

r;

r=x+1;

return

(r);

}

main()

{

int

a=1,b;

b=opp(a);

printf("%d",b);

}

用C语言编写一个字符串排序函数,从小到大排序。 要求:1. 函数要有返回值,参数必须是指针类型的。 2. 本

/*

排序前:

One-1 Two-2 Three-3 Four-4 Five-5 Six-6 Seven-7 Eight-8 Nine-9 Ten-10

排序后:

Two-2 Three-3 Ten-10 Six-6 Seven-7 One-1 Nine-9 Four-4 Five-5 Eight-8

Press any key to continue

*/

#include stdio.h

#include string.h

void sort(char *a[],int n) { // 选择排序

char *temp;

int i,j,k;

for(i = 0;i n - 1;i++) {

k = i;

for(j = i + 1;j n;j++)

if(strcmp(a[k],a[j]) 0) k = j;

if(k != i) { // 交换的是字符串的地址,不是字符串的内容

temp = a[i];

a[i] = a[k];

a[k] = temp;

}

}

}

int main() {

int i,n = 10;

char *s[] = {"One-1","Two-2","Three-3","Four-4","Five-5","Six-6","Seven-7","Eight-8","Nine-9","Ten-10"};

printf("排序前:\n");

for(i = 0;i n;i++) printf("%s ",s[i]);

printf("\n\n");

sort(s,n);

printf("排序后:\n");

for(i = 0;i n;i++) printf("%s ",s[i]);

printf("\n\n");

return 0;

}

C语言如何用自定义函数进行字符排序?

void fun(char a[])

{ int k=0,i,j;

char t;

while(a[k])

k++;//计算字符串长度

for(i=0;ik;i++)//冒泡排序

for(j=0;jk-1-i;j++)

if(a[j]a[j+1])

{t=a[j];

a[j]=a[j+1];

a[j+1]=t;}

}


网站名称:c语言自定义函数字符排序 c语言常用的排序方法
文章分享:http://scyanting.com/article/hjspsg.html