指针数组与指针变量

1、指针数组

int *p[4]    每个元素都要存放一个地址

2、指针变量

in(*p)[4]   指针变量p指向包含4个整型元素的一维数组,可存4个地址

3、比较字符串的大小

#include<stdio.h>
#include<string.h>
int main()
{void sort(char *name[],int n);
void print(char *name[],int n);
char *name[]={"bHBUYj","HKUBjhbk","hvk","dBGGF","abcd"};
int n=5;
sort(name,n);
print(name,n);
return 0;
}
void sort(char *name[],int n)
{char *t;
int i,j,k;
for(i=0;i<n-1;i++)        //选择法排序
{k=i;
for(j=i+1;j<n;j++)
    if(strcmp(name[k],name[j])>0)k=j;
if(k!=i)
{t=name[i];name[i]=name[k];name[k]=t;}
}
}
void print(char *name[],int n)
{int i;
for(i=0;i<n;i++)
    printf("%s",name[i]);
}

4、写一函数,求一个字符串的长度,要求函数形参用指针变量,在main函数中输入字符串,并输出其长度

 1 #include<stdio.h>
 2 int main()
 3 {   int lengh(char *p);
 4     int len;
 5     char str[20];
 6     scanf("%s",str);
 7     len=length(str);
 8     printf("%d",len);
 9     return 0;
10 }
11 int length(char *p)
12 {   int n=0;
13     for(n=0;*p!='\0';p++,n++)
14 return(n); 15 }

输入China,运行结果为0  运行出错

需将第13行改为for(n=0;*p!='\0';p++)n++;运行结果为5

猜你喜欢

转载自www.cnblogs.com/hongjiamin/p/10182735.html