实现一个函数,不知道哪里错了,请高手赐教,谢谢!!!
实现一个函数,参数为一字符串str,要求打印str中最大和最小字母 如,max_min("Hello, World!"),输出o(最大)和H(最小)
本人是新手,以下是自己写的C程序,不知哪里错了。请高手赐教,谢谢!!
#include <stdio.h>
void max_min(char *str)
{
char *p,zm[255],zmmin,zmmax;
int i,j,k;
p=zm;
i=0;
while(*p&&i <255)
{
if(*p>'A'&&*p <'Z'&&*p>'a'&&*p <'z')
{zm[i]=*p;i++;}
p++;
}//先筛选出字母,存入数组
zmmax=zm[0];zmmin=zm[0];
for(j=1;j <i;j++)
if(zmmax <zm[j]) zmmax=zm[j];
for(k=1;k <i;k++)
if(zmmin>zm[i]) zmmin=zm[k];
printf("该字符串最大字母为:%c,最小字母为:%c\n",zmmax,zmmin);
}
void main()
{
char *sp,str[255];
sp=str;
printf(" 请输入一串字符:\n");
scanf("%s",sp);
max_min(sp);
}