8-2比较三个字符串大小(指针)

c 复制代码
#include<stdio.h>
#include<string.h>

int main(){
	char str1[20], str2[20], str3[59];
	//相当于 int a,b,c;
	printf("please input three str:\n");
	gets(str1);//sacnf("%s",str1);这里str1是数组名,表示数组空间的起始地址,读入,直到该数组结束为止
	gets(str2);
	gets(str3);
	//比较是  1跟2比较,1跟3比较,2跟3比较
	if(strcmp(str1,str2)>0 ){//返回值大于0,则表示str1大于str2
		char t[20];
		strcpy(t,str1);
		strcpy(str1,str2);
		strcpy(str2,t);
	}
	if(strcmp(str1,str3)>0 ){
		char t[20];
		strcpy(t,str1);
		strcpy(str1,str3);
		strcpy(str3,t);
	}
	if(strcmp(str2,str3)>0 ){
		char t[20];
		strcpy(t,str2);
		strcpy(str2,str3);
		strcpy(str3,t);
	}
	printf("输出的字符串为:\n");	
	printf("%s\n%s\n%s\n",str1,str2,str3);
	return 0;
}
c 复制代码
#include<stdio.h>
#include<string.h>
/*
int main(){
	char str1[20], str2[20], str3[59];
	//相当于 int a,b,c;
	printf("please input three str:\n");
	gets(str1);//sacnf("%s",str1);这里str1是数组名,表示数组空间的起始地址,读入,直到该数组结束为止
	gets(str2);
	gets(str3);
	//比较是  1跟2比较,1跟3比较,2跟3比较
	if(strcmp(str1,str2)>0 ){//返回值大于0,则表示str1大于str2
		char t[20];
		strcpy(t,str1);
		strcpy(str1,str2);
		strcpy(str2,t);
	}
	if(strcmp(str1,str3)>0 ){
		char t[20];
		strcpy(t,str1);
		strcpy(str1,str3);
		strcpy(str3,t);
	}
	if(strcmp(str2,str3)>0 ){
		char t[20];
		strcpy(t,str2);
		strcpy(str2,str3);
		strcpy(str3,t);
	}
	printf("输出的字符串为:\n");	
	printf("%s\n%s\n%s\n",str1,str2,str3);
	return 0;
}

*/

int main(){
	void swap(char*,char*);
	char str1[20], str2[20], str3[20];
	char* p1=str1;
	char* p2=str2;
	char* p3=str3;
	
	//相当于 int a,b,c;
	printf("please input three str:\n");
	gets(str1);//sacnf("%s",str1);这里str1是数组名,表示数组空间的起始地址,读入,直到该数组结束为止
	gets(str2);
	gets(str3);
	//比较是  1跟2比较,1跟3比较,2跟3比较
	if(strcmp(str1,str2)>0 )  swap(str1,str2);
	if(strcmp(str1,str3)>0 )  swap(str1,str3);
	if(strcmp(str2,str3)>0 )  swap(str2,str3);
	printf("输出的字符串为:\n");	
	printf("%s\n%s\n%s\n",str1,str2,str3);
	return 0;
}
 void swap(char* p1,char *p2){
 char t[20];
strcpy(t,p1);
strcpy(p1,p2);
strcpy(p2,t);
}

	
相关推荐
小小龙学IT4 分钟前
Day 26-27 项目实战:从零构建一个高并发聊天室(epoll + 线程池)
linux·服务器·c语言·开发语言·网络
c238561 小时前
MySQL 基础用法(下):查询进阶与核心特性
android·c语言·c++·mysql
0566461 小时前
Python高级——迭代器
开发语言·python·学习
math_hongfan1 小时前
鸿蒙Agent高级技能自定义开发:自定义意图服务/能力注册/Agent技能编排/服务插件开发实战
android·学习·华为·harmonyos·鸿蒙
way_hj1 小时前
Flask笔记(2)快速web项目
笔记·flask·vue·web
duhong20261 小时前
Linux刷题记录第一套
学习
十月的皮皮2 小时前
STM32从零到量产开发:四路继电器工业控制模块开发 - 上位机操作说明书
c语言·stm32·单片机·stm32cubemx
AI 小老六2 小时前
Agent Runtime 如何用 Session、Memory、User Profile 和 Skill 实现外部学习
服务器·人工智能·学习·ai·架构·自动化
又折桃枝换酒钱2 小时前
CycleChart:一个统一的基于一致性学习的双向图表理解与生成框架(翻译与解读)
人工智能·深度学习·学习