洛谷-数字反转-循环!循环!循环!

题目描述 Description

  给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。

输入输出格式 Input/output

输入格式:
  输入文件名为reverse.in 。 
  输入共1 行,一个整数 N。
输出格式:
  输出文件名为reverse.out 。 
  输出共1行,一个整数,表示反转后的新数。

输入输出样例 Sample input/output

样例测试点#1

输入样例:

【样例输入1】
123
【样例输入2】
-380

输出样例:

【样例输出1】
321
【样例输出2】
-83

思路:判断是否是负数,如果是负数,输出一个“-”号,再变为正数进行计算

计算过程:用一个数s来计算需要反转的数的从后往前的每一位,每次除以10求余,就得了。

代码如下:

#include<stdio.h>
int main()
{
  int x,s=0;
  scanf("%d",&x);
  if(x<0)//判断是否负数
  {
    printf("-");//是,输出一个负号
    x=x*(-1);//变为正数
  }
  while(x>0)//循环到这个数小于等于0为止
  {
    s=s*10+x%10;//计算每一位
    x=x/10;//每次要除以10
  }
  printf("%d",s);//输出即可
  return 0;
}  
时间: 2024-10-05 04:27:44

洛谷-数字反转-循环!循环!循环!的相关文章

洛谷-数字反转(升级版)-简单字符串

题目描述 Description 给定一个数,请将该数各个位上数字反转得到一个新数.    这次与NOIp2011普及组第一题不同的是:这个数可以是小数,分数,百分数,整数.整数反转是将所有数位对调:小数反转是把整数部分的数反转,再将小数部分的数反转,不交换整数部分与小数部分:分数反转是把分母的数反转,再把分子的数反转,不交换分子与分母:百分数的分子一定是整数,百分数之改变数字部分.整数新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零:小数新数的末尾不为

输入一批整数,输出其中的最大值和最小值,输入数字0就结束循环。如下所示

import java.util.Scanner; /** * 输入一批整数,输出其中的最大值和最小值,输入数字0就结束循环.如*下所示 请输入一个整数(输入0结束):20 请输入一个整数(输入0结束):35 * 请输入一个整数(输入0结束):1 请输入一个整数(输入0结束):57 请输入一个整数(输入0结束):0 最大值是:57 最小值是:1 */ public class Max { public static void main(String[] args) { Scanner sc =

『Luogu OJ』『C++』Level 1-3 循环!循环!循环!

关卡1-3,6道题  循环!循环!循环! 任务说明:计算机最不怕的就是重复.你让它做10000次同样的事它也不怕啦,但是让他做1亿亿次的话…… 要完成这个任务,请将以下的题目都AC掉(即通过这道题目): 1. 三连击 P1008 2.级数求和 P1035 3.数字反转 P1307 4.小玉在游泳 P1423 5.小鱼的航程(改进版) P1424 6.计数问题 P1980 成就达成时间:2015-07-15 21:54 什么?你问我这么水的题怎么拖了这么久? 首先今天课比较多…… 其次被strin

Java/For循环/递归函数循环

首先:java的重点和难点,命名和缓存 这次咱们的内容主要用到: 命名规则:大小写字母,下划线,美元符号$,数字,且数字不能打头 变量的声明:数据类型划分内存空间,命名,赋值 方法的声明:修饰符列表,返回值,方法名,形参列表,方法体 示例: 1, 如果让你计算1~100的奇数和,偶数和,还有1~100的和; 2, 还有1~N的和 3, 九九乘法表 第一题,1~100的奇数和,偶数和,和 先用for循环写一个 for循环,for循环的运行规则,for(表达式1,表达式2,表达式3),先执行表达式1

Python基础之if判断,while循环,循环嵌套

if判断 判断的定义 如果条件满足,就做一件事:条件不满足,就做另一件事: 判断语句又被称为分支语句,有判断,才有分支: if判断语句基本语法 if语句格式: if 判断的条件: 条件成立后做的事 ... ... 代码缩进为一个tab键,或者四个空格,官方建议使用空格:但应注意,在python开发中,tab和空格不能混用! 判断年龄示例: # 判断是否成年,成年则可以进网吧 age = 19 if age>=18: print("你满了18岁,可以进网吧") if及其缩进代码可以

js循环(while循环,do while循环,for循环)相关知识点及练习

08.循环 1.循环! 循环的作用: 简化代码,处理重复执行的代码 遍历数组.json对象.节点集合 2.while循环 语法: while(循环的条件){ 循环体 } 3.循环的五大要素 循环变量 循环变量的初始化 循环的增值 循环的终止条件 循环体 eg:在页面中打印100句“我爱你!!”; 方法一:var i = 1;   //循环变量 以及 循环变量的初始值while (i <= 100) {    //循环的终止条件     document.write("我爱你" +

for循环和循环嵌套

通过一周对c#的学习,发现很多同学在循环这一块都有点晕,其实只要一步一步的去分析执行步骤和条件,思路清晰了,自然就理解了; 而且很多时候都会for循环里面再嵌套for循环,这样如果思路不清晰,那当然就会一脸懵逼; 下面我来用几个例子,来浅谈下for循环和循环嵌套,希望对大家有所帮助; ①.输出五行五列; 我们来分析下循环过程: 1.当i=0的时候,执行内层循环 j=0,输出一个*号,然后j++;这时候j=1,输出第二个*号,然后j++;......;j=4的时候输出第五个*号,然后j++;这时候

洛谷P1118 [USACO06FEB]数字三角形 搜索

洛谷P1118 [USACO06FEB]数字三角形Backward Digit Su-     搜索 这题我们发现每一个位置的加权就是 杨辉三角 yh[ n ][ i ] 然后我们就可以求 n! 暴力 ,但是会 TLE 额 好像是会T 因为12! 已经 4亿了然后我们加一个强力剪枝 如果当前求出来的 s 已经大于 sum了,因为没有负的加权,也就是说这一路是没有用了的,在继续搜下去也不能更新答案了,那么就直接退出 . 1 #include <cstdio> 2 #include <cma

洛谷P1118 数字三角形游戏

洛谷1118 数字三角形游戏 题目描述 有这么一个游戏: 写出一个1-N的排列a[i],然后每次将相邻两个数相加,构成新的序列,再对新序列进行这样的操作,显然每次构成的序列都比上一次的序列长度少1,直到只剩下一个数字位置.下面是一个例子:     3   1   2   4       4   3   6         7   9          16 最后得到16这样一个数字. 现在想要倒着玩这样一个游戏,如果知道N,知道最后得到的数字的大小sum,请你求出最初序列a[i],为1-N的一个