输入一个整数,将各位数字反转后输出



 1 #include <stdio.h>
 2 #include <stdlib.h>
 3
 4 int inversion(unsigned int num)
 5 {
 6    int ret=0;                //定义返回值
 7    int remainder;            //定义一个余数
 8
 9    while(num)        //当num除10不为零时,循环
10    {
11         remainder = num % 10;    //取余数
12         num = num / 10;
13         ret = ret*10 + remainder;    //数字反转
14    }
15    return ret;            //返回
16 }
17
18 int main()
19 {
20     int a = 17845;        //输入测试
21
22
23     int ret = inversion(a);        //调用函数
24
25     printf("%d\n",ret);    //打印测试
26     return 0;
27 }
				
时间: 2024-12-28 15:04:09

输入一个整数,将各位数字反转后输出的相关文章

24、输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变.  思路:新建一个数组先把原数组中的奇数push进去再把偶数push进去,然后用新数组数据覆盖原数组即可 复杂度O(n),用空间换时间 class Solution { public:     void reOrderArray(vector<int> &array) {         vector<int&

Java 输入一个整数,计算它各位上数字的和。(注意:是任意位的整数)

import java.util.*; /* * 输入一个整数,计算它各位上数字的和. * (注意:是任意位的整数) */ public class Sum02 { public static void main(String[] args) { System.out.print("请输入任意一个整数:"); Scanner s = new Scanner(System.in); int sum = 0; int t = s.nextInt(); while(t!=0){ sum =

输入一个整数,判断其是否是2^n,是就输出这个数,不是就输出和它最接近的为2^n的那个整数。

输入一个整数,判断其是否是2^n,若是,输出这 //个数,若不是,输出和它最接近的为2^n的那个整数. 附加源代码1: #include<stdio.h> #include<stdlib.h> #include<math.h> int main() { int input;//键盘输入一个整数input int i,j;//i,j待会儿存放input与左边和右边的为2^n的差值 int m,n;//保存左边,右边的与inout最接近的2^n printf("请

定义一个由整数组成的数组,然后输入一个整数X,如果X不在此数组中,返回小于X的最大数的位置i和大于X的最小数的位置j

//定义一个由整数组成的数组,然后输入一个整数x,如果X不在此数组中,返回小于X的最大数的位置i和大于X的最小数的位置j: //若X在此数组中,则返回数组中这个数的位置. 源代码: #include<iostream> using namespace std; void main() { int array[]={1,2,3,4,5,6,7,89,45,32,56,78,12,43,90,19};//16个数字 int x; int max=array[0]; int min=array[0]

输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数

题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数.例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次. 分析:首先最先想到的是遍历从1到n的每个数,判断每个数中包含1的个数,再相加. 时间复杂度:如果输入数字为n,n有O(logn)位,我们需要判断每个数字的每一位是不是为1,所以时间复杂度为O(n*logn).如果输入数字很大的时候,就需要大量的计算,效率不高. 接下来观察规律: 从个位到最高位,我们判断每一位1出现的次数.比如 对于数2

(四)、利用命令行参数输入一个整数,打印空心菱形

1 /*利用命令行参数输入一个整数,并判断该数字是否为奇数,如果是奇数,则用其作行数打印空心菱形 2 –PS:将字符串转换为数字的方法 3 •int num=Integer.parseInt(String number);*/ 4 5 package com.gen; 6 public class ArgumentKongLing { 7 public static void main(String args[]) 8 { 9 for (int m= 0; m < args.length;m++

c语言代码编程题汇总:输入一个整数n,输出斐波纳猰数列,采用的是递归算法——源代码

输出斐波纳猰数列,采用的是递归算法 程序代码如下: 1 /* 2 2017年3月5日11:16:02 3 功能:输入一个整数n,输出斐波纳猰数列,采用的是递归算法,源代码 4 */ 5 6 #include "stdio.h" 7 int fun(int n); //fun()函数的函数声明 8 int main (void) 9 { 10 int i, n = 0; 11 12 printf ("请输入一个整数n的数值:\n "); //此时输入的n是表示第几个数

OJ题:输入一个多位的数字,求各数位相加。

题目内容: 输入一个多位的数字,1求各数位相加. 例如输入12345,则计算1+2+3+4+5=15 输入格式: 一个整数 输出格式: 一个整数 输入样例: 1234567890 输出样例: 45 时间限制:500ms内存限制:32000kb 实现程序: #include <stdio.h> #include <stdlib.h> #include <string.h> int cnt_count(int value) { int count = 0 , cnt = 0

【微软100题】输入一个整数,求该整数的二进制表达中有多少个1

package test; /** 整数的二进制表示中1的个数 题目:输入一个整数,求该整数的二进制表达中有多少个1. 例如输入10,由于其二进制表示为1010,有两个1,因此输出2. 分析: 方法一:把十进制转换成二进制字符数组,遍历该数组,判断1的个数. 方法二:对于一个int n, n&1的结果就是n转化成二进制数后的最后一位的结果.考察了位运算 包括微软在内的很多公司都曾采用过这道题. * @author Zealot * */ public class MS_28 { private