首页 > 编程知识 正文

字符串数组定义(c语言定义一个字符串数组)

时间:2023-05-05 23:31:28 阅读:76166 作者:1693

要对几个字符串进行排序并输出,请执行以下操作:

两个程序只是数组的定义不同,第一个定义的是指针数组,第二个正确的定义是字符串数组,但错了。 指针数组的v[i]和字符串数组的v[i]不是都指向字符串的一级指针吗? 两者有什么区别? 为什么第二个是错的?

程序1 :

#包含

要对几个字符串进行排序并输出,请执行以下操作:

两个程序只是数组的定义不同,第一个定义的是指针数组,第二个正确的定义是字符串数组,但错了。 指针数组的v[i]和字符串数组的v[i]不是都指向字符串的一级指针吗? 两者有什么区别? 为什么第二个是错的?

程序1 :

#include 'stdio.h '

主() )

{char *line[]={'C ',' Fortran ',' Basic ',' Pascal ',' Foxbase'};

int n=5;

壳快照(line,n );

写入行(行,n );

}

壳快照(v,n ) ) )。

char *v[];

int n;

{char *t;

int i,j;

for(I=0; I

{for(j=n-1; ji; j----)

if(strcmp ) v[j],v[j] )0) )

{t=v[j]; v[j]=v[j-1]; v[j-1]=t; }

}

}

writeline(linp,n ) ) ) ) ) ) )。

char *linp[];

int n;

{int i;

for(I=0; I

printf(%s(n ),linp[i];

}

程序2 :

#include 'stdio.h '

主() )

{char line[][10]={'C ',' Fortran ',' Basic ',' Pascal ',' Foxbase'};

int n=5;

壳快照(line,n );

写入行(行,n );

}

壳快照(v,n ) ) )。

char v[][10];

int n;

{char *t;

int i,j;

for(I=0; I

{for(j=n-1; ji; j----)

if(strcmp ) v[j],v[j] )0) )

{t=v[j]; v[j]=v[j-1]; v[j-1]=t; }

}

}

writeline(linp,n ) ) ) ) ) ) )。

char linp[][10];

int n;

{int i;

for(I=0; I

printf(%s(n ),linp[i];

}

展开

一切都是

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。