首页 > 编程语言 >C++——用指向指针的指针的方法对5个字符串排序并输出。

C++——用指向指针的指针的方法对5个字符串排序并输出。

时间:2024-11-05 14:45:57浏览次数:4  
标签:sort pstr cout temp int C++ char 排序 指针

没注释的源代码

#include <iostream>
#include<string.h>
using namespace std;
void sort(char **p);
int main()
{
    const int m=20;
    char **p,*pstr[5],str[5][m];
    for(int i=0;i<5;i++)
        pstr[i]=str[i];
    cout<<"please input 5 strings:"<<endl;
    for(int i=0;i<5;i++)
        cin>>pstr[i];
    p=pstr;
    sort(p);
    cout<<"strings sorted:"<<endl;
    for(int i=0;i<5;i++)
        cout<<pstr[i]<<endl;
    return 0;
}
void sort(char **p)
{
    char *temp;
    for(int i=0;i<5;i++)
    {
        for(int j=i+1;j<5;j++)
        {
            if(strcmp(*(p+i),*(p+j))>0)
            {
                temp=*(p+i);
                *(p+i)=*(p+j);
                *(p+j)=temp;
            }
        }
    }
}
 

标签:sort,pstr,cout,temp,int,C++,char,排序,指针
From: https://blog.csdn.net/2303_80770781/article/details/143472360

相关文章

  • 计算机毕业设计项目推荐,高校学生社团管理系统 00498(开题答辩+程序定制+全套文案 )上万
    摘要随着计算机科学技术的日渐成熟,人们已经深刻地认识到了计算机在各个领域中发挥的功能的强大,计算机已经进入到了人类社会发展的各个领域,并且发挥着十分重要的作用。目前学校学生社团的管理是一项系统而复杂的工作,它需要一个团队互相配合、分工协作。在该领域,传统的手工存取......
  • C++——用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个团数,整数
    没注释的源代码#include<iostream>usingnamespacestd;voidsortNumbers(int**arr,intn);intmain(){  intn;  cout<<"enterthenumberofintegers:";  cin>>n;  int**arr=newint*[n];  for(inti=0;i<n;i++)  {......
  • C++——输入一个字符串,内有数字和非数字字符,如a123x456_ 17960?302tab5876将其中连续
    没注释的源代码#include<iostream>#include<stdio.h>usingnamespacestd;intmain(){  charstr[50],*pstr;  inti,j,k,m,e10,digit,ndigit,a[10],*pa;  cout<<"pleaseinputstring:"<<endl;  gets(str);  pstr=&str[......
  • C++中类的三的特性是什么?什么是构造函数和析构函数?它们的作用是什么?
    1)C++中类的三大特性是什么?请简要解释。C++中类的三大特性是封装、继承和多态。一、封装封装是将数据和操作数据的方法封装在类中,对外部隐藏类的内部实现细节。通过将数据成员设为私有(private),并提供公有的(public)成员函数来访问和修改这些数据,从而实现对数据的保护和控......
  • 每天两个知识点 拷贝构造函数和赋值运算符重载的作用&C++模板及其类型
    1)拷贝构造函数和赋值运算符重载的作用拷贝构造函数(CopyConstructor)和赋值运算符重载(AssignmentOperatorOverload)是C++中处理对象复制和赋值的两个重要机制。拷贝构造函数:拷贝构造函数是一个特殊的构造函数,它用于创建一个新对象,并将其初始化为另一个同类型对象的副本。......
  • 大话C++:第27篇 Lambda表达式
    1Lambda表达式介绍在C++中,lambda表达式(也称为闭包)是一种可以定义匿名函数对象的便捷方式。它们能够捕获所在作用域中的局部变量,并且可以在需要函数对象的地方使用。Lambda表达式为C++提供了更简洁、更灵活的函数式编程方式。Lambda表达式的基本语法如下:[capture](parameter......
  • 冒泡排序与选择排序超详细讲解
    冒泡排序与选择排序冒泡排序condition:输入5个数字,冒泡排序,逆序输出#include<stdio.h>intmain(){ intuserInput,tmp,i,j,arr[6],flag; flag=0; for(inti=0;i<5;i++){ scanf("%d",&userInput); arr[i]=userInput; }//依次输入五个数字 for(inti=0;i<4;i++){//......
  • C++ OpenCv二值化找圆心坐标
    思路:图像转为灰度图,然后二值化得到只有0或255的点坐标,此处圆是黑点,所以添加所有像素值为0的坐标。在这些坐标中找到圆上最左边、最顶端、最右边、最底端的四个点,这时可求出圆心坐标。 .cpp文件#include<opencv2/opencv.hpp>#include<iostream>#include<cstdlib>#include......
  • 条件语句中同时检查指针空检查和解引用,安全么
    答案是安全的。 条件语句中同时进行空指针检查和解引用,但要确保解引用发生在检查之后,并且需要注意运算符的优先级。//例如,在C++中使用逻辑与运算符if(p!=nullptr&&*p==someValue){//这里是安全的,因为p的空指针检查在前//可以安全地访问*p} 在......