用C语言编写程序,将多个字符串排序输出

1:有三个字符串分别是:"hello" "bit" "world".然后排序之后输出的顺序为:"bit" "hello" "world


int main()
{
	char str1[100];
	char str2[100];
	char str3[100];
	char tmp[100];
	scanf("%s", str1);
	scanf("%s", str2);
	scanf("%s", str3);
	if (strcmp(str1, str2) > 0)//如果str1大于str2交换
	{
		strcpy(tmp, str1);
		strcpy(str1, str2);
		strcpy(str2, tmp);
	}
	if (strcmp(str1, str3) > 0)
	{
		strcpy(tmp, str1);
		strcpy(str1, str3);
		strcpy(str3, tmp);
	}
	if (strcmp(str2, str3) > 0)
	{
		strcpy(tmp, str2);
		strcpy(str2, str3);
		strcpy(str3, tmp);
	}
	printf("%s\n", str1);
	printf("%s\n", str2);
	printf("%s\n", str3);
	system("pause");
	return 0;
}

用C语言编写程序,将多个字符串排序输出_第1张图片

2.输入5个字符串,将其从小到大排序后输出

int main()
{
	char arr[5][20];
	for (int i = 0; i < 5; i++)
	{
		scanf("%s", arr[i]);
	}
	for (int j = 0; j < 4; j++)//冒泡排序的趟数
	{
	
	for (int i = 0; i < 4-j; i++)//每趟
	{
		if (strcmp(arr[i], arr[i + 1])>0)
		{
			char tmp[20];
			strcpy(tmp, arr[i]);
			strcpy(arr[i], arr[i + 1]);
			strcpy(arr[i + 1], tmp);
		}
		}
	}
	for (int i = 0; i < 5; i++)
	{
		printf("%s\n", arr[i]);
	}
	system("pause");
	return 0;
}
用C语言编写程序,将多个字符串排序输出_第2张图片


你可能感兴趣的:(c语言,每日一练)