1051: 反转数
题目描述:
给定一个整数,请将该数各个数位上的数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。
讯享网
输入
讯享网-690
输出
-96
示例
讯享网#include<iostream> #include<math.h> using namespace std; int main() { int oldNumber, newNumber = 0; cin>>oldNumber;//123 while(oldNumber != 0) { newNumber *= 10;//0 30 newNumber += oldNumber % 10;//3 oldNumber /= 10;//12 } cout<<newNumber<<endl; return 0; }
1052: 礼物数目
题目描述:
小明买了许多圣诞礼物准备用于班级活动,回家后感觉太累了,便让机器人小灵帮忙数一下礼物一共有多少份。但是小灵不喜欢数字4,因此每次数到4时便跨过该数。例,若小灵数到339时,下一份礼物小灵就会数350。
输入
55
输出
40
示例
#include<iostream> #include<math.h> using namespace std; int main() { int num,nump,p,i,total=0; cin>>num;//小灵给出的礼物的份数 if(num<1 && num>1000) return 0; nump=num; while(true) { p = nump % 10; if(p == 4) { return 0; } if(p == 0) { break; } nump/=10; } for(i=0; i<num; i++) { if((i%10 == 4)||(i/10%10 == 4)||(i/100 == 4)) { continue; } total++; } cout<<total<<endl;//输出实际数字 return 0; }
1053: 分解质因数
题目描述:
分解质因数。
输入
36
输出
2*2*3*3
示例
#include<iostream> #include<math.h> using namespace std; int main() { int num,i=2; cin>>num; for(i=2; i<=num; i++) { while(num!=i) { if(num%i==0) { printf("%d*",i); num/=i; } else break; } } printf("%d\n",num);//最后一个数必是除后的本身 return 0; }
1054: 求a+aa+aaa+…aa…a(n个a)
题目描述:
输入n和a,求a+aa+aaa+…aa…a(n个a),如当n=3,a=2时,2+22+222=246。
输入
3 2
输出
246
示例
#include<iostream> #include<math.h> using namespace std; int main() { int n,a,i,sum=0,aa; cin>>n>>a; if((n>10&&n<=0) ||(a>10&&a<=0)) return 0; aa=a; for(i=1; i<=n; i++) { sum+=a; a=a*10+aa; } cout<<sum<<endl; return 0; }
1055: 零花钱
题目描述:
妈妈给了小明m元零花钱,为了鼓励小明节约,说如果小明每天只消费1元,每花k元就可以得到1元额外奖励,如果听妈妈的话小明最多可以花多少天?
输入
4 3
输出
5
示例

#include<iostream> #include<math.h> using namespace std; int main() { int m,k,total=0 ; cin>>m>>k; if (k<2 || k>m || m>1000) return 0; while(m--) { total++; if(total % k==0) m++; } cout<<total<<endl; return 0; }
1056: n!的最高位
题目描述:
输入一个正整数n。输出n!的最高位上的数字。
输入
1000
输出
4
示例
#include<iostream> #include<math.h> using namespace std; int main() { int m,k,total=0 ; cin>>m>>k; if (k<2 || k>m || m>1000) return 0; while(m--) { total++; if(total % k==0) m++; } cout<<total<<endl; return 0; }
1057: 小车位置
题目描述:
有一辆智能小车,最初(时间为0)的位置为(0,0),我们想知道它最后的位置。小车以每小时10公里的速度向北移动(北为y轴正向,东为x轴正向)。小车会收到一系列依照时间戳记排序的命令,1表示“向左转”,2表示“向右转”,3表示“停止”。每个命令的前面有一个时间戳记,所以知道该命令是何时发出的。最后一个命令一定是“停止”。另外假设,这辆小车非常灵活,它可以在瞬间转弯。 例,小车在时间为5时收到一个“向左转”的命令1,在时间10收到一个“向右转”的命令2,在时间15收到一个“停止”的命令3。那么在最后时间15时,小车的位置将在(-50,100)。程序只要求输出小车最后的位置,第一个整数是x坐标,第二个整数是y坐标。
输入
5 1 10 2 15 3
输出
-50 100
示例
#include<iostream> #include<math.h> using namespace std; int main() { int x=0,y=0;//初始化小车位置(0,0) int time,command,w=0,n=0;//command为命令,time是时间 //n为决定车头朝向,0为北,1为东,2为南,3为西; //w为计时器,记录上次的时间,以此计算间隔时长 while(scanf("%d %d",&time,&command),command!=0) { //键盘输入时间以及命令 //要保证n始终在0-3之间 switch(n) { case 0: y+=10*(time-w); break; case 1: x+=10*(time-w); break; case 2: y-=10*(time-w); break; case 3: x-=10*(time-w); break; } if(command==3) break;//如果命令是3,停止 else if(command==1) n=n-1; //如果命令是1,向左转,n-1 else if(command==2) n=n+1; //如果命令是2,向右转,n+1 n=(n+4)%4;//对4取模改变方向,确保范围0~3 w=time;//w记录上次的时间 } printf("%d %d",x,y);//输出小车的横坐标和纵坐标 return 0; }
1058: 乘积计算
题目描述:
做作业的时候,邻座的小朋友问你:“五乘以七等于多少?”你应该不失礼貌地微笑着告诉他:“五十三”。本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。【注意前导0不要输出。】
输入
50 7
输出
53
示例
#include<iostream> #include<math.h> using namespace std; int main() { int a ,b,sum=0; while(scanf("%d %d",&a,&b),a<1000,b<1000) { sum= a*b*10; while(sum>0) { sum=sum/10; int g=sum%10; if(g==0) { continue; } cout<<g; } break; } return 0; }
1059: 两个数的最大公约数
题目描述:
输入2个正整数a,b,求a与b的最大公约数。
输入
6 15
输出
3
示例
#include<iostream> #include<math.h> using namespace std; int main() { int a = 0,b = 0; cin>>a>>b; while((a-b) != 0) { if(a>b) a = a-b; else b = b-a; } printf("%d\n", b); return 0; }
1060: 两个数的最小公倍数
题目描述:
正整数a和正整数b的最小公倍数是指能被a和b整除的最小的正整数值,设计一个算法,求输入a和b的最小公倍数。
输入
5 3
输出
15
示例
#include<iostream> #include<math.h> using namespace std; int main() { int x,y,z = 0,sum; cin >> x >> y; sum = x*y; while (y != 0) { z = x % y; x = y; y = z; } cout<<sum/x<<endl; return 0; }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/41423.html