zoukankan      html  css  js  c++  java
  • 一级指针,二级指针,指向数组的指针

    对"black,green,yellow,pin,red"几个单词排序

    01

    #include <iostream.h>
    #include <string.h>
    void sort(char (*p)[20],int n)
    {
    	char *q;
    	char b[20];
    	q=b;
    	int i,j;
    	for(i=0;i<n;i++)
    	{
    		for(j=i+1;j<n;j++)
    		{
    			if(strcmp(p[i],p[j])>0)
    			{
    				strcpy(q,*(p+i));
    				strcpy(*(p+i),*(p+j));
    				strcpy(*(p+j),q);
    			}
    		}
    	}
    }
    void main()
    {
    	char a[5][20]={"black","green","yellow","pin","red"};
    	sort(a,5);
    	for(int i=0;i<5;i++)
    	{
    		cout<<a[i]<<endl;
    	}
    }
    

      02

    #include <iostream.h>
    #include <string.h>
    void sort(char *p[],int n)
    {
    	char *q;
    	int i,j;
    	for(i=0;i<n;i++)
    	{
    		for(j=i+1;j<n;j++)
    		{
    			if(strcmp(*(p+i),*(p+j))>0)
    			{
    				q=*(p+i);
    				*(p+i)=*(p+j);
    				*(p+j)=q;
    			}
    		}
    	}
    }
    void main()
    {
    	char a[5][20]={"black","green","yellow","pin","red"};
    	char *q[5];
    	for(int i=0;i<5;i++)
    	{
    		q[i]=a[i];
    	}
    	sort(q,5);
    	for(i=0;i<5;i++)
    	{
    		cout<<q[i]<<endl;
    	}
    }
    

      03

    #include <iostream.h>
    #include <string.h>
    void sort(char *p,int n)
    {
    	char *q;
    	char b[20];
    	q=b;
    	int i,j;
    	for(i=0;i<n;i++)
    	{
    		for(j=i+1;j<n;j++)
    		{
    			if(strcmp(p+i*20,p+j*20)>0)
    			{
    				strcpy(q,p+i*20);
    				strcpy(p+i*20,p+j*20);
    				strcpy(p+j*20,q);
    			}
    		}
    	}
    }
    void main()
    {
    	char a[5][20]={"black","green","yellow","pin","red"};
    	char *q;
    	q=&a[0][0];
    	sort(q,5);
    	for(int i=0;i<5;i++)
    	{
    		cout<<a[i]<<endl;
    	}
    }
    

      04

    #include <iostream.h>
    #include <string.h>
    void sort(char **p,int n)
    {
    	char *q;
    	int i,j;
    	for(i=0;i<n;i++)
    	{
    		for(j=i+1;j<n;j++)
    		{
    			if(strcmp(*(p+i),*(p+j))>0)
    			{
    				q=*(p+i);
    				*(p+i)=*(p+j);
    				*(p+j)=q;
    			}
    		}
    	}
    }
    void main()
    {
    	char a[5][20]={"black","green","yellow","pin","red"};
    	char *q[5];
    	for(int i=0;i<5;i++)
    	{
    		q[i]=a[i];
    	}
    	sort(q,5);
    	for(i=0;i<5;i++)
    	{
    		cout<<a[i]<<endl;
    	}
    }
    

      

  • 相关阅读:
    [转载]NSDistributedNotificationCenter
    protobuf在IOS中的使用
    mac 下大dmg文件分割成多部分
    IOS 后台任务、多任务的理解2
    越狱iPhone、ipad通过网页安装ipa
    Android中的几种多线程实现
    Android多线程-AsyncTask异步任务
    2----IOS、Android数据存储方式
    Andriod 页面跳转传值
    svn 分支创建 合并
  • 原文地址:https://www.cnblogs.com/wuyuewoniu/p/4064821.html
Copyright © 2011-2022 走看看