第十一周OJ——趣味取小数
2016-11-13 12:30
148 查看
问题描述:编写一个程序,取第一个小数的第N(-10<=n<=16)位,当n大于0时,从小数点位置开始向右取小数部分第n位,当n小于0从小数点位置开始向左取整数部分的第n位。
文件名称:the_eleventh_week_OJ2965
作者:何知令
发表时间:2016年11月13日
输入:一个含小数的数以及所希望取到的第n位数字
输出:该位置上的数
代码:
程序运行结果展示:
取整数:
知识点总结:循环以及简单函数
学习心得:OJ提交上去是编译错误,老贺的也是
问题描述:编写一个程序,取第一个小数的第N(-10<=n<=16)位,当n大于0时,从小数点位置开始向右取小数部分第n位,当n小于0从小数点位置开始向左取整数部分的第n位。
文件名称:the_eleventh_week_OJ2965
作者:何知令
发表时间:2016年11月13日
输入:一个含小数的数以及所希望取到的第n位数字
输出:该位置上的数
代码:
/*问题描述:编写一个程序,取第一个小数的第N(-10<=n<=16)位,当n大于0时,从小数点位置开始向右取小数部分第n位,当n小于0从小数点位置开始向左取整数部分的第n位。 文件名称:the_eleventh_week_OJ2965 作者:何知令 发表时间:2016年11月13日 输入:一个含小数的数以及所希望取到的第n位数字 输出:该位置上的数*/ #include <stdio.h> #include <string.h> int get_one_digit(double num,int n); /*函数声明*/ int main() { double number; int n; int digit; /*第n位数字*/ scanf("%lf %d",&number,&n); /*输入数据*/ digit=get_one_digit(number,n); /*调用查找第n位数字并将数字返回复制给digit*/ printf("%d\n",digit); return 0; } int get_one_digit(double num,int n) { int i; long k; if(n>0) { /*对小数部分的操作*/ for(i=1; i<=n; i++) { num=num-(int)num; num*=10; } return num; } else { /*对整数部分的操作*/ for(i=-1; i>=n; i--) { k=(int)num; k=k/10; } } return k%10; }
程序运行结果展示:
取整数:
知识点总结:循环以及简单函数
学习心得:OJ提交上去是编译错误,老贺的也是
相关文章推荐
- 第十一周—C语言 oj上机题目(趣味小数)
- 第十一周 OJ 趣味取小数
- 第十一周 oj训练 趣味取小数
- 第十一周OJ7趣味取小数
- oj第十一周训练——趣味取小数
- 第十一周 趣味取小数
- C语言OJ项目参考(2965)趣味取小数
- 第十一周—趣味取小数
- 第十一周趣味取小数
- 第11周 oj (FINAL)趣味取小数
- 第十一周 OJ总结<7>-趣味取小数
- 王朝第十一周 小数排序
- 第十一周 oj训练 判断三角形
- oj第十一周训练——日期妙算星座
- 第十一周 oj训练 求两个整数的最大公约数和最小公倍数
- 第十一周OJ(6)牛顿迭代公式
- 第十一周OJ——输出两个年份之间的所有闰年
- 第十一周 OJ 汉诺塔
- 九度OJ 1174:查找第K小数 (排序、查找)
- oj第十一周训练——求两个整数的最大公约数和最小公倍数