2 yancola yancola 于 2016.03.09 12:49 提问

怎样设计程序将一个int数字或一组字符倒序输出,分别用java和C语言实现

如:输入 输出
123 321
abc cba

4个回答

xianfajushi
xianfajushi   2016.03.09 16:08
已采纳
    这个最快:头位=0, 尾位=数据.length-1
            static void 翻筋斗云(int[] 数据, int 头位, int 尾位=数据)
    {
        while (头位 < 尾位)
        { 
            int 交换 = 数据[头位];
            数据[头位++] = 数据[尾位];
            数据[尾位--] = 交换;
        }
    }   
ISEUWEI
ISEUWEI   2016.03.09 15:10

这个我刚好写过哎,int就用n=n+t%10;t/=10;循环一下就好了,字符串嘛,首先你要理解指针,做一个首指针和尾指针,然后将收尾对调,直到指针相遇,详细我就不写了,手机打字艰难,你要是想了解,可以加我扣扣2836084073图片说明

xzq1007918606xzq
xzq1007918606xzq   2016.03.09 13:33

这个是Java写的,如果要传入字符串的话,把参数该一下就可以了。
public void reverse(int n)
{
String s = n+"";
//转换成字符数组,倒序输出即可
char[] arr = s.toCharArray();
for(int i=arr.length-1;i>=0;i--){
System.out.print(arr[i]);
}
}

John_ToStr
John_ToStr   Rxr 2016.03.10 15:06

C/C++ code
  #include int main() { unsigned int n = 0xFF008881; unsigned int tmp; unsigned int maskl = 0x1; unsigned int maskh = 0x80000000; unsigned int rst = 0; int i,j; printf("n = %x\n",n); for(i = 0; i <= 15; i++) { tmp = n & maskl; maskl = maskl $amp;amp;$gt; 1; for(j = i + 1; j <= 31 - i; j++) { tmp = tmp $amp;>amp;$gt; 1; } rst = tmp | rst; } printf("%x\n",rst); return 0; }

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
将一个整数逆序输出,分别给出递归和非递归算法
整数的逆序输出,递归算法: #include "stdafx.h" #include using namespace std; void reverse (int x){ int t_reserved = x; //临时保存x的值,因为x的值还要递归中使用 if (x==0) return; //如果是0,则程序结束 else if (x>0&&x<10)
将一个数组逆序输出
将一个数组逆序输出: package demo40; import java.util.Scanner; /** * 将一个数组逆序输出 * @author Administrator * */ public class Demo31 { public static void main(String[] args) { test(); } public static v
C语言输入一个数,倒序输出
C语言输入一个数,倒叙输出 输入任意一个整数,倒叙输出 编译环境为vs2013,代码如下: #include<iostream> using namespace std; int main() { int input; int result=0; cout << "请输入一个数字:"<<endl; cin >> input; while (input!=0)
将一个数组逆序输出。
#include #define N 10 void fun(int* a) { int i; printf("\n倒叙输出数据:\n"); for(i=N-1;i>=0;i--) printf("%d ",a[i]); printf("\n"); } int main() { int i; int a[N]={0,1,2,3,4,5,6,7,8,9}; printf("原始
C语言简单递归实现字符串逆序输出
题目内容的 “注意” 已经侧面规定了要用递归来实现: 输入是一个可能含有空格的串说明要用gets来读入字符串,如果利用scanf的话是无法读入一段含有空格的串。
[算法]最简单的数字倒序输出
室友要去研究生面试,无奈对 C++ 打出GG,本着人道主义给他恶补一下 C++ ,顺便记录一些有意思的小代码。题目: 输入一个正整数,倒序输出 最讨巧的做法不记录最后的计算结果,直接输入到终端上。#include &lt;iostream&gt; using namespace std;int main() { int numb
C语言通过指针和数组实现字符串倒序
1.数组方式实现  (不用字符串函数)程序如下 1 void ReverseByArray(char * s) 2 { 3 int len = 0; 4 while (s[len] != '\0') 5 len++; 6 int t; 7 for (int i = 0; i 2; i++) 8 { 9
《Java程序》将数字进行倒序输出
描述: 任意给定一个数字,写一个函数,能够将数字进行倒序输出。 Write a program to reverse a number using numeric operators.不管是什么样的编程语言,刚开始接触到编程的时候都会有这样的题目。package test;/* * Write a program to reverse a number using numeric opera
java 用递归实现:输入一个整数,用字符串逆序输出,例如输入123,输出321 ,不使用全局变量
java 递归实现输入一个整数,用字符串输出,例如输入123,输出321 ,不使用全局变量 package com.yuxin.learn; public class Main { //输入整数后,逆序输出为字符串,通过递归实现 public static String reverse(int a){ if (a<0) return ""; if(a<10) return
c语言实现字符串的逆序输出
#include #include main() { int i,j,t,n; char a[10]; printf("请输入字符串:"); gets(a); n=strlen(a); for(i=0;i<=n/2;i++) { t=a[i]; a[i]=a[n-1-i]; a[n-1-i]=t; } for(j=0;j<n;j+