#include <stdio.h>
#define M 999
int main(){
int islower(int n);
int n = 67539;
if(islower(n) == -1){
printf("%-6d不是降序数", n);
}else{
printf("%-6d是降序数", n);
}
getchar();
return 0;
}
int islower(int n){
if(n == 0) return M ;
if(n % 10 <= islower(n/10)){
return n%10;
}else{
return -1;
}
}
测试
非递归
#include <stdio.h>
int main(){
int n, tem, b, i = 0, k = 0;
int a[100];
printf("please Input n:\n");
scanf("%d", &n);
tem = n;
while(tem > 0){
a[i++] = tem % 10;
tem /= 10;
}
for( b = 0; b < i - 1; b++)
{
if(a[b] > a[b+1])
break;
}
if(b < i - 1)
printf("%d非降序数",n);
else
printf("%d降序数",n);
return 0;
}