解题思路:
判断输入的三个字符的大小与判断输入三个数字的大小的方法相同。
首先需要定义三个字符变量数组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 人评分
照抄冒泡排序 #include <stdio.h> #include <string.h> int main() { char arr[3][100] = { 0 }, ar[100] = { 0 }; for (int i = 0; i < 3; i++) { gets(arr[i]); } for (int i = 0; i < 3; i++) { for (int j = 0; j < 3 - i - 1; j++) { if (strcmp(arr[j], arr[j + 1]) > 0) { strcpy(ar, arr[j]); strcpy(arr[j], arr[j + 1]); strcpy(arr[j + 1], ar); } } } for (int i = 0; i < 3; i++) puts(arr[i]); return 0; }
最后一个写上大于零行忙
【蟠桃记】 (C语言代码)浏览:648 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:748 |
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:624 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:331 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:653 |
【求[X,Y]内被除3余1并且被除5余3的整数的和】 (C语言代码)浏览:672 |
1157题解浏览:711 |
1118(求助_已解决)浏览:329 |
1052题解(链表操作)浏览:651 |
拆分位数 (C语言代码)浏览:514 |