int fun( char *t )
{
int i = 0, k = 0;
while(t[i+1])
{
if (t[i + 1] == t[i] + 1)
{
k++;
i++;
}
else
{
k = 0;
break;
}
}
return k ;
}
t[i+1]是值下一个元素的值,如果他是字符串结尾字符空字符'\0'就会结束,如果不是,则while循环体内判断t[i+1]和它的前一元进行字母连续的判断,如此不断循环,直到达到字符串结尾。测试代码如下:
#include <stdio.h>
int fun( char *t )
{
int i = 0, k = 0;
while(t[i+1])
{
if (t[i + 1] == t[i] + 1)
{
k++;
i++;
}
else
{
k = 0;
break;
}
}
return k ;
}
int main(void){
char * str= "uvwxyz";
printf("%s是连续的字母顺序吗?%s\n" , str,(fun(str)>0?"是。":"否。"));
str= "uvxwyz";
printf("%s是连续的字母顺序吗?%s\n" , str,(fun(str)>0?"是。":"否。"));
return 0;
}