C/C++教程

【C++编程题1】数组指针之字符串排序

本文主要是介绍【C++编程题1】数组指针之字符串排序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目

用数组指针处理50个不等长字符串。写一个函数对字符串按降序排序,然后在主函数输入这50个字符串,调用函数后,再输出这50个已经排好序的字符串。

代码

子函数:

#include <iostream>
using namespace std;
#define N 50
void sort_str(char* p[],int n)
{
	int i ,j,k;
	for (i = 0; i < n-1; i++)
	{
		k = i;
		for (j = i + 1; j < n; j++)
		{
			if (strcmp(p[j], p[k]) > 0)
				k = j;
			char*s = p[i];
			p[i] = p[k];
			p[k] = s;
		}
	}
}

主程序:

int main(void)
{
	char* p[N] = { 0 };
	int i;
	for (i = 0; i < N; i++)
	{
		p[i] = new char[100];
		cin >> p[i];
	}
	sort_str(p,N);
	for (i = 0; i < N; i++)
	{
		cout << p[i] << endl;
		delete[]p[i];
	}
}
这篇关于【C++编程题1】数组指针之字符串排序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!