【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];
	}
}
上一篇:Linux文本处理命令


下一篇:MySQL存储过程中使用SELECT …INTO语句为变量赋值