上册知识点-指针

自己简直太菜了,今天看到一道用指针来实现字符串的排序,对指针的用法都快忘了!!!!!!
想呼呼自己两大巴掌

#include <stdio.h>


#define LINEMAX 20            /*定义字符串的最大长度*/
int n;
int main()
{
	int i;
 	char **p,*pstr[100],str[100][LINEMAX];
 	scanf("%d",&n);
	for (i=0;i<n;i++)
   		pstr[i]=str[i];   /*将第i个字符串的首地址赋予指针数组 pstr 的第i个元素*/
  	
 	printf("input strings:
");
 	for (i=0;i<n;i++)
    	scanf("%s",pstr[i]);
 	p=pstr;
 	sort(p);
 	printf("strings sorted:
");
 	for (i=0;i<n;i++)
    	printf("%s
",pstr[i]);
}
void sort(char **p)            /*对5个字符串排序函数*/
{	
	int i,j;
	char *temp;
 	for (i=0;i<n;i++)
  	{
	  	for (j=i+1;j<n;j++)
    		{
			if (strcmp(*(p+i),*(p+j))>0)      /*比较后交换字符串地址*/
     			{
				temp=*(p+i);
       				*(p+i)=*(p+j);
      				*(p+j)=temp;
      			}
     		}
  	}
 	return;
}

作者:Better又
出处:https://www.cnblogs.com/lwyy1223-/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/lwyy1223-/p/12693509.html