将读入的字符串s+r进行逆序后输出

作者&投稿:郸泳 (若有异议请与网页底部的电邮联系)
用java 将一个字符串逆序输出,不使用中间变量!这怎么做?~

有两种方法可以实现:第一种方法是定义String字符串,然后通过for循环倒序遍历字符串进行输出;第二种方法是通过StringBuffer定义字符串,然后调用StringBuffer的reverse()方法倒序输出字符串。
具体代码如下:
方法一:

public class Demo {
public static void main(String[] args) {
String str = "abc";
for(int i=str.length()-1;i>=0;i--){
System.out.print(str.charAt(i));
}
}
}
方法二:

public class Demo {
public static void main(String[] args) {
StringBuffer buffer = new StringBuffer("abc");
System.out.println(buffer.reverse());
}
}

StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。

JAVA有一个public String(byte bytes[], Charset charset)函数可以用指定字节数组和编码来构造字符串。一个public byte[] getBytes(Charset charset)函数把字符串按指定编码来得到字节数组。可以用这两个函数来实现编码转换。
下面是一个简单的例子,注意一下例子中的文字本身的编码,最好在自己的环境中用gb2312重新输入,不然可能是乱码。当然转换后输出肯定有一个是乱码,也肯能都是乱码。根据你的编辑器的编码格式有关。
public class EncodingTest{ public static void main(String[] args) { try { String gb = new String("国标2312".getBytes(),"gb2312"); System.out.println(gb); byte [] b = gb.getBytes("gb2312"); String ios = new String(b,"ISO-8859-1"); System.out.println(ios); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } }}

1、首先打开eclipse,新建一个java工程文件。新建后,在src下创建包desc,再在该包下创建Main.java。

2、在Main类中编写main函数,并声明一个用二进制表示的整型变量num。

3、接着将num转换成二进制字符串,然后将转换后的字符串转换成字符数组。

4、接着声明一个String类型的变量outputStr,用来存储要输出数据。再通过循环将字符数组逆序拼接到outputStr中。

5、最后编写输出语句。

6、运行后结果如图。



#include<stdio.h>

int main()

{int i,j;

 char c,s1[200],s2[100];

 gets(s1);

 gets(s2);

 for(i=0;s1[i];i++);

 for(j=0;s1[i++]=s2[j++];);

 for(j=0,i-=2;i>j;i--,j++)

 {c=s1[i]; s1[i]=s1[j]; s1[j]=c;}

 puts(s1);

return 0;

}



#include <stdio.h>
#include <string.h>

int main()
{
char s[81];
char *p;
int i;

p=s;
gets(s);
for (i=0; p[i]!='\0'; i++)
{
}
for (i--; i>=0; i--)
{
printf("%c",p[i]);
}
}


C语言中测试字符串长度的函数
C语言中测试字符串长度的函数是strlen()函数原型:unsigned int strlen (char *s);头文件:include <string.h>参数说明:s为指定的字符串;功能说明:strlen()用来计算指定的字符串s 的长度,不包括结束字符'\\0';返回值:返回字符串s 的字符数;注意:strlen() 函数计算的是字符串的实际长度,遇到...

C语言输入两个字符串str1,str2(长度分别不超过80)
include <stdio.h>#include <string.h>int main(){ char str1[80], str2[80]; const char *s="<=>"; int r; scanf("%s%s",str1, str2); printf("str1 length = %d\\n", strlen(str1)); r = strcmp(str1,str2); if(r<0) r=0; else if(r=...

指针s所指字符串的长度
指针s所指字符串的长度为15。指针s所指字符串为Char*s=\\r\\Name\\\\Address\\n。字符串长度是指字符串所含的字符个数,但不包括最后的\\0。

String[] a = scanner.nextLine().split("[\\\\s]"); 这句话什么意思 ja...
当谈到自己的范围,实在是很难说... C适用于操作系统级别的工作,如计算机的操作系统;和java会尽量做到一个更大的一流的服务体系,如银行系统,等等。

s语言和r语言有什么区别
一、用法不同 1、S语言:S语言用来进行数据探索、统计分析、作图的解释型语言。2、R语言:R是自由软件,是一种可编程的语言。二、开发人员不同 1、S语言:语言是由AT&T贝尔实验室开发的。2、R语言:后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。由“R开发核心...

...每次读取一行内容,将每行作为一个字符串读入,并将字符串输出...
File filePath = new File("D:\\\\AB.txt");BufferedReader br=new BufferedReader(new FileReader(filePath));while ((String s = br.readLine()) != null) { System.out.println(s + "\\r\\n");} \/\/\/主要的代码应该差不多,你自己再修改一下就OK了......

C语言编程:怎么用printf输出字符串?
代码如下:int main(){ float r,h,s;scanf("%f",&r);scanf("%f",&h);s=2*3.1415926*r*r+2*3.1415926*r*h printf("表面积是%f\\n",s);return 0;}

python写一个函数countNum(s),确定输入的字符串s中有几个大写字母,几个...
可以使用ascii码表来判断,小写字母的ascii码是97-122,大写字母的ascii码是65-90.代码 运行结果:运行结果 附ascii码表:ascii码表

C语言题目,求大神解答
FILE* inputFile = fopen("file1.txt", "r");FILE* outputFile = fopen("file2.txt", "w");char inputString[100];fgets(inputString, sizeof(inputString), inputFile);char compressedString[200];compressRLC(inputString, compressedString);fprintf(outputFile, "%s\\n", compressedString)...

14、 编写一个函数reverse(s)将字符串s中的字符位置颠倒过来。例如,字 ...
1、首先将字符串转换成列表,之后再修改列表中的元素来完成, 如下图,通过list(r)来将r字符串转化成了一个列表。2、然后修改单个列表的元素,如下图所示将第二个元素d替换成了m。3、最后通过join的方法把列表中的元素合成一个字符串。4、还可以通过python自带的replace方法直接完成替换,如下图,将...

泰顺县18916864810: 如何用C语言将字符串逆序输出? -
产性康得: C语言程序如下: #include<stdio.h> #include<string.h> main() { int i,j,t,n; char a[10]; printf("请输入2113字符串:"); 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++) printf("%c",a[j]); printf("\n"); } ...

泰顺县18916864810: c语言,大神看过来,跪求了. 编写一个程序,将输入的字符串按逆序存放后输出. -
产性康得: #include <stdio.h>#include <string.h> void func(char *s) {int i,j; char t; for(i=0,j=strlen(s)-1;i<j;i++,j--) {t=s[i]; s[i]=s[j]; s[j]=t; } puts(s); } 调用这个func函数就能办了

泰顺县18916864810: 编程实现:从键盘输入一个字符串,然后将其逆序保存,最后输出显示. -
产性康得: #include<iostream.h> #include<string.h> void main() { char s[100],tmp; cin>>s; int len=strlen(s); //获得字符串长度 for(int i=0;i<len/2;i++) {tmp=s[i];s[i]=s[len-i];s[len-i]=tmp; } cout<<s<<endl; }

泰顺县18916864810: c语言程序 输入一字符串存入数组中,逆序存放并输出 -
产性康得: 对键盘输入的字符串进行逆序,逆序后的字符串仍然保留在原来的字符数组中,最后输出.(不得调用任何字符串处理函数),例如:输入 hello world 输出 dlrow olleh

泰顺县18916864810: c++编写函数实现一个字符串的逆序.在主函数中输入字符串,调用函数将字符串逆序,而后输出. -
产性康得: #include using namespace std; void rev(char s[]) {char *p,*q,c;for(p=s;*p;p++);for(q=s,--p;q<p;){c=*p;*p--=*q;*q++=c;} } int main() { char s[100];cin.getline(s,100);rev(s);cout<<s<<endl;return 0; }

泰顺县18916864810: 用vc++编写一个程序将字符串str的字符串逆置后输出 -
产性康得: #include <iostream> using namespace std; int main() { int x=0,y=0,z=0; //x统计字母;y统计数字;z统计其它 char a[50]; cout<<"请输入至多50个字符:"<<endl; cin.get(a,50); cout<<"=============="<<endl; cout<<a<<endl; //输出输入的字...

泰顺县18916864810: 编写程序,使输入的字符串倒序输出: -
产性康得: int i=10,j; printf("请输入一个字符串\n"); scanf("%s",string[i]); 这里100位的字符数组,这只输入了一个字符啊,输入给第10位的字符了.这时i = 10,你用for循环从0到i - 1遍历一遍,这个范围内的字符都没有初始化啊.在这里你想做的...

泰顺县18916864810: c++ 输入一个字符串,将其中的字符逆序输出 -
产性康得: sizeof是这个变量占的内存大小,要得到string类型的字符串的长度可以用成员函数length()或者size()其实还可以一种简单的逆序方法, string str1("1234567890"); string str2(str1.rbegin(), str1.rend());

泰顺县18916864810: 输入一串字符,将字符串中的字符反序输出的程序怎么写 -
产性康得: int main() { char s[10]; int i; gets(s); for(i=strlen(s)-1;i>=0;i--){ printf("%c",s[i]); } printf("\n"); return 0; }

泰顺县18916864810: C语言 函数调用, 输入字符串,逆序输出 -
产性康得: void fun(char *str) { char ss[128];int i, j = 0; for (i = strlen(str)-1 , j = 0; i >= 0; i--){ ss[j] = str[i];j++;}ss[j]='\0'; //结束字符串strcpy(str, ss);//前面的参数是目标 strcpy(目标,源),你写反了 }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网