『壹』 java筆試中字元串翻轉的幾種方法(java
1.調用reversel()方法實現翻轉
[java]view plain
publicstaticStringreversel1(Stringstr){
returnnewStringBuffer(str).reverse().toString();
}
2.通過字元串數組實現從尾部開始逐個逆序放入字元串中
[java]view plain
publicstaticStringreverse2(Strings)
{
char[]array=s.toCharArray();//String轉字元數組
Stringreverse="";//注意這是空串,不是null
for(inti=array.length-1;i>=0;i--){
reverse+=array[i];
//即String="reverse",
//放入時會"r";"e";"v";"e";"r";"s";"e";的放入String.charAt(String.charAt(length--))
}
returnreverse;
}
3.通過字元串數組實現從頭部開始逐個正序放入字元串中
[java]view plain
publicstaticStringreverse3(Strings)
{
intlength=s.length();
Stringreverse="";//注意這是空串,不是null
for(inti=0;i<length;i++){
reverse=s.charAt(i)+reverse;//在字元串前面連接,而非常見的後面
//即String="reverse",
//放入時會"e";"s";"r";"e";"v";"e";"r";的放入String。charAt(i++)
//從尾到頭正序放入
}
returnreverse;
}
4.C語言中常用的方法:
[java]view plain
publicstaticStringreverse5(Stringorig)
{
char[]s=orig.toCharArray();
intn=s.length-1;
inthalfLength=n/2;
for(inti=0;i<=halfLength;i++){
chartemp=s[i];
s[i]=s[n-i];
s[n-i]=temp;
}
returnnewString(s);//知道char數組和String相互轉化
}
『貳』 excel里如何將單元格內文字整體旋轉180度
文字旋轉只可以在(90~-90度)之間旋轉。文字上點擊右鍵選擇《設置單元格格式》,右側有《方向》功能,輸入度數即可,若真需要旋轉180度,最好使用《插入藝術字》,然後再《繪圖》里選擇《旋轉或翻轉》,點擊《垂直翻轉》即可,但這么輸入的不是輸入到表格內的,是等於粘貼進去的,效果不好。
『叄』 怎麼將excel表格里的字180度旋轉
1、首先打開excel表格,輸入想要旋轉的文字,然後點擊一下字體框。
『肆』 用C語言,翻轉字元串,(例如輸入「ABCD」,則輸出「DCBA」)!方法越多越好!!
【方法一】
//也是最簡單的有點投機
#include <stdio.h>
int main(){
char str[]="ABCD";
int i;
for(i=3;i>=0;i--) printf("%c",str[i]);
return 0;
}
【方法二】
/*
用指針的,將第一個與最後一個互換,第二個與倒數第二個互換……直到逆置完成
*/
#include <stdio.h>
#include <string.h>
int main(){
char str[]="ABCD",*start,*end,t;
int len,i;
len=strlen(str);
start=str;
end=&str[len-1];
while(start<end){
t=*start;
*start=*end;
*end=t;
start++;
end--;
}
printf("REVERSED:\n");
for(i=0;str[i];i++) printf("%c",str[i]);
return 0;
}
【方法三】
//用堆棧的性質來實現
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAXSTACK 100
char pop(struct stack *stk);
void push(char ch,struct stack *stk);
int empty(struct stack *stk);
struct stack{
int top;
char str[MAXSTACK];
};
int main(void)
{
int i,len_str;
char str[MAXSTACK];
struct stack s;
s.top=-1;
printf("\nInput the string please:");/*輸入你要逆置的字元串e.g.「ABCD」*/
gets(str);
len_str=strlen(str);
for(i=0;i<len_str;i++)
push(str[i],&s);
printf("The disorder is:");
for(i=0;i<len_str;i++){
if(!empty(&s))
printf("%c",pop(&s));
}
getch();
return 0;
}
char pop(struct stack *stk){
return stk->str[stk->top--];
}
void push(char ch,struct stack *stk){
if(stk->top==MAXSTACK-1){
printf("\nOVERFLOW!\n");
exit(1);
}
else stk->str[++(stk->top)]=ch;
return;
}
int empty(struct stack *stk){
return (stk->top==-1);
}
還可以用遞歸的思想來解決該問題,這里就不多說了……