怎么编写:输入一个字符串,并将字符串反转,如“abcd”反转成“dcba” 定义将一个字符串反转的函数,例如将字符abcd反转为dcba
\u5b9a\u4e49\u4e00\u4e2a\u5b57\u7b26\u4e32\u53cd\u8f6c\u51fd\u6570\uff0c\u4f8b\u5982\u5c06\u5b57\u7b26\u4e32\u201cabcd\u201d\u53cd\u8f6c\u4e3a\u201cdcba\u201d\u3002#include
#include
// \u5b66\u7f16\u7a0b \u6b22\u8fce\u5230 \u777f\u817e\u7f16\u7a0b.\u7f51
void reverse(char* str)
{
int len = strlen(str);
int times = len / 2;
char temp;
int i;
for (i=0; i<times; i++)
{
temp = str[i];
str[i] = str[len-i-1];
str[len-i-1] = temp;
}
}
int main()
{
char num[] = "abcd";
reverse(num);
puts(num);
return 0;
}
char * mystrrev ( char * string )
{
char *start = string;
char *left = string;
char ch;
while (*string++) /* find end of string */
;
string -= 2;
while (left < string)
{
ch = *left;
*left++ = *string;
*string-- = ch;
}
return(start);
}
/////////////////cabs. vc\u5b57\u7b26\u4e32\u9006\u8f6c
#include
char* rstr(char* a)
{
char* p1, *p2, t;
p1 = p2 = a;
while(*p2) ++p2;
while(p1 < p2) {
t = *p1;
*p1++ = *--p2;
*p2 = t;
}
return a;
}
int main()
{
char a[] = "abcd";
puts(rstr(a));
}
自己写的话,可以重新new个String,for 循环加--length的字符就行。不过内存耗费大,用char数组来处理,用首尾俩个游标,low<high,low++,high--,互换
绛旓細浠涓涓8涓瀛楃涓涓轰緥锛氫唬鐮佸涓 include<stdio.h> int main(){ int i,j;char ch1[8],ch2[8];for(i=0;i<8;i++){ printf("璇杈撳叆绗%d涓瓧绗",i);scanf("%c",&ch1[i]);fflush(stdin);} for(j=0;j<8;j++){ ch2[j]=ch1[7-j];printf("%c",ch2[j]);} } ...
绛旓細include<stdio.h> include<stdlib.h> include<string.h> define MAX 10 int main(){ char n; //杈撳叆瀛楃涓暟 char ch[MAX] ; //瀛樻斁杈撳叆鐨勫瓧绗 char b[MAX]; //瀛樻斁ch涓殑灏忓啓瀛楃 for (int i = 0; i < strlen(ch); i++){ scanf("%c",&n);ch[i] = n;if (ch[i]...
绛旓細include<stdio.h> include<stdlib.h> include<string.h> define MAX 10 int main(){ char n; //杈撳叆瀛楃涓暟 char ch[MAX] ; //瀛樻斁杈撳叆鐨勫瓧绗 char b[MAX]; //瀛樻斁ch涓殑灏忓啓瀛楃 for (int i = 0; i < strlen(ch); i++){ scanf("%c",&n);ch[i] = n;if (ch[i]...
绛旓細浠g爜濡備笅锛歩nclude<stdio.h> include<string.h> int copy(char *p1,char *p2,int m);int main(){ char str1[40],str2[40];printf("杈撳叆绗涓涓瓧绗︿覆锛\n");gets(str1);int m;printf("杈撳叆绗琺涓瓧绗﹀紑濮嬶細\n");scanf("%d",&m);if(strlen(str1)<m)printf("閿欒");else { cop...
绛旓細for(i=0,j=0;i<strlen(s);i++){ if(s[i]<'0'||s[i]>'9')continue;t[j]=s[i];j++;} t[j]='\0';printf("%s",t);
绛旓細include<stdio.h> void main(){ char a[10];char b[10],i,j=0;gets(a);for(i=0;i<10;i++){ if(a[i]>='0'&&a[i]<='9'){b[j]=a[i];j++;} if(a[i]=='\n')break;} b[j]='\0'; //缁撴潫鏍囪灏卞彲浠ヤ簡 printf("%s\n",b);} 闂浜 include<stdio.h> void ...
绛旓細printf("璇杈撳叆鎮ㄨ杈撳叆鐨瀛楃涓:");getchar(); //涓烘秷闄ゅ洖杞﹂敭鐨勫奖鍝 for(i=0;i<m;i++)scanf("%c",&a[i]);for(i=0;i<m;i++){ if(a[i]=='a'){ // n=n+2, 鍒犻櫎浜嗭紝娌′粈涔堢敤 for(j=m-1;j>i;j--) // 鐢眏i锛岃〃绀篿涔嬪悗鐨勯兘瑕佺Щ鍔ㄣ俛[j+2]=a[j]...
绛旓細abcdefg1 vs = new abcdefg1(); int n; boolean oo=true; Scanner scanner = new Scanner(System.in); //璇诲彇瀛楃涓; System.out.print("璇杈撳叆瀛楃涓: "); String yy = scanner.nextLine(); n=yy.length(); final char chr[]= new char[n]; //鎶婂瓧绗︿覆 yy 渚濇鏀捐繘鏁扮粍 chr[i] 涓 ; yy...
绛旓細include <stdio.h>int main(void){ char str[100]; char *cp; gets(str); for(cp=str;*cp!='\0';cp++) { if(*cp>='a' && *cp <='z') *cp = (*cp - 'a' +1) % 26 + 'a'; if(*cp>='A' && *cp<='Z') *cp = (*cp - 'A' +...
绛旓細void fun(){ char buf1[256];char buf2[256];char* p1 = buf1;char* p2 = buf2;printf("input string 1\n");scanf("%s", buf1);while((*p2++=*p1++)!='\0');printf("buf2 = %s\n", buf2);}