整数移位
来源:互联网 发布:python sha.new 编辑:程序博客网 时间:2024/06/05 16:30
题目:整数N的尾数是a,把尾数a移到其前面(成为最高位)后所得的数为原整数N的k倍,原整数N至少为多大?
没有考虑限定尾数的情况:
#include <stdio.h>#include <math.h>int main(){ int k;//倍数 printf("请输入倍数:\n"); scanf("%d",&k); while(k<=0) { printf("倍数输入有误,请重新输入:"); scanf("%d",&k); } int num = 1;//整数初始化从1开始 int a;//整数最后一位 int count = 0;//整数的位数 int temp;//存放整数的临时变量 while(1) { temp = num; while(temp > 0)//计算整数位数 { temp /= 10; count++; } a = num % 10;//计算整数最后一位 if(((a*(int)pow(10,count-1) + num/10) / num ) == k)//判断移位后的整数是否是原来的整数K倍 { printf("最小整数:%d\n",num); break; } num++;//整数加1 count = 0;//整数位数清零 } return 0;}
考虑限定尾数的情况:
#include <stdio.h>#include <math.h>int main(){ int k;//倍数int a;//整数最后一位 printf("请输入倍数:\n"); scanf("%d",&k); while(k<=0) { printf("倍数输入有误,请重新输入:"); scanf("%d",&k); }printf("请输入整数尾数:\n");scanf("%d",&a);while(a<0 || a>9){printf("整数尾数输入有误,请重新输入:");scanf("%d",&a);} int num = a;//整数初始化从a开始 int count = 0;//整数的位数 int temp;//存放整数的临时变量 while(1) { temp = num; while(temp > 0)//计算整数位数 { temp /= 10; count++; } if(((a*(int)pow(10,count-1) + num/10) / num ) == k)//判断移位后的整数是否是原来的整数K倍 { printf("最小整数:%d\n",num); break; } num+=10;//整数加10 count = 0;//整数位数清零 } return 0;}
- 整数移位
- 整数移位
- 整数二进制移位
- 整数移位代替法处理浮点
- 关于负整数的移位问题
- 用移位实现两个整数的除法
- 整数的按位非~运算与移位运算
- 有符号整数的移位运算
- 用移位和加减运算实现无符号整数除法
- 使用移位操作符实现无符号整数位反转
- 移位
- 移位
- 移位
- 移位
- 移位
- 移位
- 移位
- 移位
- JDK 7 中的 Fork/Join 模式
- Js中的window.parent ,window.top,window.self 详解
- 有关静态lib编译的注意点
- SMRAM
- java wsdl反向生成源码,并使用CXF实现客户端调用代码
- 整数移位
- NSDate 北京时间
- 算法时间复杂度分析
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- log4j处理tomcat日志
- CentOS无线网络配置
- android 笨鸟到菜鸟学习进阶篇,不错学习一下
- VC得到选择的文件夹的路径
- 变长参数函数(转载)