从键盘输入一个字符串,从该字符串中找出最小的字符并输出。
最好用上strcmp
该题目不需要用到strcmp字符串比较函数。对于问题中的题目,解题代码如下:
#include<stdio.h>
void main()
{
char a[20] = {0}, min;
int i;
printf("please input string:");
scanf("%s", a);
min = a[0];
for (i = 1; i < 20; i++)
{
if(a[i] == '\0')
break;
if(min > a[i])
min = a[i];
}
printf("the min char is:%c\n", min);
}
strcmp是用来比较2个字符串的
你这是要逐个字符互相比较,用不到这玩意
strcmp是两个字符串比较,
从左往右逐个字符比较
完全相同返回0,左小于右返回负数,右小于左返回正数.
你想要找到字符串中最小字符的话,其实和比较整数数组是完全一样的,因为字符在c语言中的储存方法就是ascII码,也就是数字.
比如字符a是97,字符b是98,于是a<b
供参考:
#include<stdio.h>
int main()
{
char a[80], min;
int i;
printf("请输入字符串:");
scanf("%s", a);
min = a[0];
for (i = 1; a[i] != '\0'; i++)
{
if (min > a[i])
min = a[i];
}
printf("字符串 %s 中最小字符是: %c", a, min);
return 0;
}