Linux系统下C语言练习:从键盘获取五个字符串,利用指针数组实现字符串的排序,linux指针


Linux系统下C语言练习:从键盘获取五个字符串,利用指针数组实现字符串的排序

#include
#include

int main()
{
	int i, j;
	char *str[5];
	char *tmp = (char *)malloc(sizeof(char) * 20);
	char *tmp1 = tmp;
	for(i = 0; i < 5; ++i)
	{
		str[i] = (char *)malloc(sizeof(char) * 20);
		if(NULL == str[i])
		{
			printf("分配内存失败\n");
			exit(1);
		}
	}
	printf("请输入伍个字符串\n");
	for(i = 0; i < 5; ++i)
	{
		scanf("%s", str[i]);
	}
	for(i = 0; i < 5; ++i)
	{
		for(j = 0; j < 4 - i; ++j)
		{
			if(strcmp(str[j], str[j + 1]) > 0)
			{
				tmp = str[j];
				str[j] = str[j + 1];
				str[j + 1] = tmp;
			}
			tmp = tmp1;
		
		}
	}
	for(i = 0; i < 5; ++i)
	{
		printf("%s\t", str[i]);
	}
	printf("\n");
	return 0;
}

相关内容