基于visual Studio2013解决C语言竞赛题之1051数的顺序
来源:互联网 发布:java验证码实现 编辑:程序博客网 时间:2024/05/23 15:37
题目
解决代码及点评
/*功能:自然数N一般写成如下形式: N=d[k]d[k-1]d[1] (d[1]~d[k] 均是十进制数字) 如果d[i+1]>d[i] (i=k-1,k-2,...,1),则称N是严格降序数;如果d[i+1]<d[i] (i=k-1,k-2,...,1), 则称N是严格升序数;如果d[i+1]=d[i] (i=k-1,k-2,...,1),则称N是等序数;此外,则称N是无序数。 例如, 4321是严格降序数,1234是严格升序数,2222是等序数,1243是无序数。从键盘上输入一个大于9的整数N,判它属于上述哪一类。 时间:0:20 2013/10/26*/#include<stdio.h>#include<stdlib.h>int getBit51(int);//判断一个数的位数int judgIt(int a[],int n){//a[]中的数为原数的逆序int upNum=1;for(int i=0;i<n-1;i++)//a[]如果为升序,则原数逆序{if(a[i]<=a[i+1])upNum=0;}int downNum=1;//如果a为降序,则原数升序for (int i=0;i<n-1;i++){if(a[i]>=a[i+1])downNum=0;}if(upNum==1)return 1;else if(downNum==1)return 2;else return 3;}void main(){int num;scanf_s("%d",&num);if (num<9)//判断num是否〉9{puts("Cannot judges it!");} else{int bit=getBit51(num);//获得位数int a[10]={-1};int t=num;//创建数组for (int i=0;i<bit;i++)//将num每一位数逆序输入a[n]中。以-1结束{a[i]=t%10;t/=10;}int flag=judgIt(a,bit);//1为降序数,2为升序数,3为其他switch(flag){case 1: printf("The number in ascending order");break;case 2: printf("The number in descending order");break;default:printf("This is a disorders number!");break;}}system("pause");}int getBit51(int n){int bit=0;while (n>0){bit++;n/=10;}return bit;}
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果
代码下载
http://download.csdn.net/detail/yincheng01/6681845
解压密码:c.itcast.cn
- 基于visual Studio2013解决C语言竞赛题之1051数的顺序
- 基于visual Studio2013解决C语言竞赛题之1022最大数最小数
- 基于visual Studio2013解决C语言竞赛题之前言
- 基于visual Studio2013解决C语言竞赛题之0401阶乘
- 基于visual Studio2013解决C语言竞赛题之0408素数
- 基于visual Studio2013解决C语言竞赛题之0516人来人往
- 基于visual Studio2013解决C语言竞赛题之0517矩阵
- 基于visual Studio2013解决C语言竞赛题之0519最大值
- 基于visual Studio2013解决C语言竞赛题之0605strcat
- 基于visual Studio2013解决C语言竞赛题之0607strcpy
- 基于visual Studio2013解决C语言竞赛题之0612递归
- 基于visual Studio2013解决C语言竞赛题之0803报数
- 基于visual Studio2013解决C语言竞赛题之0810链表去重
- 基于visual Studio2013解决C语言竞赛题之1004平均值
- 基于visual Studio2013解决C语言竞赛题之1006填空
- 基于visual Studio2013解决C语言竞赛题之1010计算
- 基于visual Studio2013解决C语言竞赛题之1011对称
- 基于visual Studio2013解决C语言竞赛题之1017次数
- 用Python登陆人人网并发状态(在已有基础上进行了修改)
- makefile的详细介绍
- ios 线程多种创建方式
- java web中将中文乱码转化的方法
- 编译器基本过程
- 基于visual Studio2013解决C语言竞赛题之1051数的顺序
- Gridview中几个Button的应用
- 一个20年web架构师的20条编程经验
- 向量点乘与叉乘
- 用VC++6.0编译调试汇编程序
- MySQL修改root密码的各种方法整理
- 初学者有关二维数组的疑问
- 霓虹灯2
- Linux下高并发socket最大连接数所受的各种限制