解题思路:
判断输入的三个字符的大小与判断输入三个数字的大小的方法相同。
首先需要定义三个字符变量数组str1[100],str2[100],str3[100]用来保存三个字符串,然后使用if判断句进行两两比较。
1.先将字符串数组str1[100]和str2[100]进行比较,把较小的字符串保存在数组str1[100]中,较大的保存在str2[100]中;
2.然后再将str1[100]和str3[100]进行比较,把较小的字符串保存在str1[100]中,较大保存在str3[100]中,确保str1[100]中保存的是最小的字符串;
3.最后将str2[100]和str3[100]进行比较,str2[100]中保存较小的,str3[100]保存较大的。
说明:
C语言中字符串的比较规则是 将两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到'\0'为止。
所用到的字符串处理函数:
strcmp函数-----字符串比较函数
其一般形式为:strcmp(字符串1,字符串2)
比较结果由函数值带回
(1)如果字符串1=字符串2,则函数值为0。
(2)如果字符串1>字符串2,则函数值为一个正整数。
(3)如果字符串1<字符串2,则函数值为一个负整数。
strcpy函数-----字符串复制函数
其一般形式为:strcpy(字符串1,字符串2)
作用是将字符串2复制到字符串1中去。
注意事项:
C语言中,对字符串进行操作时,可以使用C函数库提供的专门对字符串进行处理的函数,若要使用这些处理函数时,应当在程序开头用#include<string.h>把string.h文件包含到本文件中。
参考代码:
#include<stdio.h> #include<string.h> int main() { //定义三个字符数组用来保存三个字符串 char str1[100]; char str2[100]; char str3[100]; //定义字符数组str用来保存临时字符串 char str[100]; //从键盘接受三个字符串 gets(str1); gets(str2); gets(str3); //以下if语句用来判断三个字符串的大小 if(strcmp(str1,str2)>0) { strcpy(str,str1); strcpy(str1,str2); strcpy(str2,str); } if(strcmp(str1,str3)>0) { strcpy(str,str1); strcpy(str1,str3); strcpy(str3,str); } if(strcmp(str2,str3)) { strcpy(str,str2); strcpy(str2,str3); strcpy(str3,str); } //用puts语句输出三个字符串 puts(str1); puts(str2); puts(str3); return 0; }
0.0分
7 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复