C语言 判断给定自然数n是否为降序数

来源:百度知道 编辑:UC知道 时间:2024/05/05 09:15:47
要完整的C程序,不是c++注意!!!

降序数是 n=abcdef... a>=b>=c>=...

#include<stdio.h>
void main()
{
int i,flag=1;
char number[20];
for(;;)
{
printf("请输入任意一个2位及2位以上的整数:\n");
gets(number);/*该整数是以字符型存放的,即字符的ascII码*/
if(number[1]=='\0')
{
printf("输入错误,请重新输入:\n");
flag=2;
}
else
for(i=0;(number[i+1])!='\0';i++)
{
if(number[i]<number[i+1])
{
flag=0;
break;
}
}

if(flag==0) printf("%s 不是降序数\n",number);
if(flag==1)printf("%s 是降序数\n",number);
flag=1;
}
}

思路:通过除10求余可以得到一个数的倒序,如果倒序是升序则自然数n就是降序。

参考代码:
#include<stdio.h> 
int fun(int n){
int t=-1,p;
while(n){
p=n%10;
if(t>p) return 0;
t=p;
n/=10;

}
return 1;
}
int main()
{