[算法]CSDN编程挑战赛之整数取反
2013-12-21 20:59
218 查看
今天看了一下庞果网发布的编程挑战赛,我就做了一题目,结果却让我失望,没提交的上去,也不知道是网速原因还是什么,一直处于提交状态,然后我就没理它,一直耗到时间结束,但最后我发现,竟然记我一个挑战失败,好失望!关键是还没有重新挑战的机会。算了,关键是自己得到了锻炼就好!下面就共享我的算法,可能不是最优的算法,如果读者有什么好的建议或者是好的算法欢迎提出,一起交流!
题目:
以下是我做的几个版本的代码:
运行结果:
运行结果:
==================== 迂者 丁小未 CSDN博客专栏================= MyBlog:http://blog.csdn.net/dingxiaowei2013 MyQQ:1213250243 Unity QQ群:858550 cocos2dx QQ群:280818155 ====================== 相互学习,共同进步 =================== 转载请注明出处:http://blog.csdn.net/dingxiaowei2013/article/details/17471827
欢迎关注我的微博:http://weibo.com/u/2590571922
题目:
以下是我做的几个版本的代码:
C语言版本代码:
#include<stdio.h> int reverse(int x) { int yushu; int res[20]; int jieguo=0; int i=0; if (x>0) { do { yushu=x%10; res[i]=yushu; x=x/10; i++; } while (x); int ii=i-1; for (int j=0;j<i;j++,--ii) { int r=1; //printf("%d",res[j]); for (int n=0;n<ii;n++) { r*=10; } jieguo+=res[j]*r; } return jieguo; } //如果是负数 else { int jj = 0-x; int jieguo1=reverse(jj); jieguo1=0-jieguo1; return jieguo1; } } int main() { int num; printf("请输入数字:"); scanf("%d",&num); printf("你输入的数字是:%d\n",num); int n =reverse(num); printf("转置后的数字是:%d",n); return 0; }
C语言另外一版本:
#include<stdio.h> int main() { printf("题目1:整数取反\n"); char a[20],*p,*q; int i,j; p=a; q=a; for(i=0;i<20;i++) { scanf("%c",&a[i]); if(a[i]!='\n') { p++; } else break; } printf("取反后的数是:"); //如果是正数 if (*q!='-') { for(i;i>=0;i--) { printf("%c",*(--p)); } } //如果是负数 else { printf("%c",*q); for (i;i>1;i--) { printf("%c",*(--p)); } } return 0; }
运行结果:
C#版本代码:
#include<stdio.h> int main() { printf("题目1:整数取反\n"); char a[20],*p,*q; int i,j; p=a; q=a; for(i=0;i<20;i++) { scanf("%c",&a[i]); if(a[i]!='\n') { p++; } else break; } printf("取反后的数是:"); //如果是正数 if (*q!='-') { for(i;i>=0;i--) { printf("%c",*(--p)); } } //如果是负数 else { printf("%c",*q); for (i;i>1;i--) { printf("%c",*(--p)); } } return 0; }
运行结果:
==================== 迂者 丁小未 CSDN博客专栏================= MyBlog:http://blog.csdn.net/dingxiaowei2013 MyQQ:1213250243 Unity QQ群:858550 cocos2dx QQ群:280818155 ====================== 相互学习,共同进步 =================== 转载请注明出处:http://blog.csdn.net/dingxiaowei2013/article/details/17471827
欢迎关注我的微博:http://weibo.com/u/2590571922
相关文章推荐
- [算法]CSDN编程挑战赛之整数取反
- [算法]CSDN编程挑战赛之寻找直方图中面积最大的矩形
- [算法]CSDN编程挑战赛之寻找直方图中面积最大的矩形
- CSDN编程之人人code,整数取反
- 整数取反问题的算法实现(C/C++实现,极简5行代码)
- pongo(英雄会)编程挑战: 人人code,整数取反
- pongo(英雄会)编程挑战: 人人code,整数取反
- 算法、编码时间、执行效率,一个都不能少——写在参加Google编程挑战赛之后
- 在线编程挑战赛第一名:我是这么学算法的
- 整数算法训练05—一个数如果恰好等于它的因子之和,这个数被成为”完数” 例如:6=1+2+3.请编程找出1000以内的完数
- 2014年CSDN编程挑战赛 - 检查交替字符串
- 初入C语言!整数算法练习1:通过编程实现,统计1~n有多少个9 ? 提示:n通过参数传入!
- 第二次编程作业:判断一个正整数是否为质数的算法和 随机生成一个n bit位的长整数
- 今天在CSDN上看到的GOOGLE编程挑战赛练习题
- CSDN之人人code,整数取反
- 分巧克力【来源:CSDN线上编程挑战赛】——递归,费波那奇数列,迭代
- Java编程算法基础---使用大整数
- C语言编程技巧:整数开方算法
- 一个算法题(1)(来源于网易编程挑战赛)
- 一个算法题(2)(来源于网易编程挑战赛)