程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> c語言實現字符串逆序

c語言實現字符串逆序

編輯:關於C語言

面試經常會遇到的題,C語言實現字符串逆序。如輸入“abcd”,輸出“dcba”。

最近自己整理了一下,下面代碼已經過測試。

#define Max 200
main()
{
   char str[Max];
   printf("請輸入字符串:");
   gets(str);
   int len=0;
   char *strlen=str;
   char *left=str;
   char temp;
   while(*strlen++)len++;
   strlen-=2;//這裡很值得思考
   while(left<strlen)
   {
      temp=*left;
      *left++=*strlen;
      *strlen--=temp;
   }
   printf("逆序後的字符串為:");
   int i;
   for(i=0;i<len;i++)
       printf("%c",str[i]);
   printf("\n");
   system("pause");
}

下面是MS的C庫給出的代碼:

1.char * __cdecl strrev ( char * string )
2.{
3. char *start = string;
4. char *left = string;
5. char ch;
6. while (*string++) /* find end of string */
7. ;
8. string -= 2;
9. while (left < string)
10. {
11. ch = *left;
12. *left++ = *string;
13. *string-- = ch;
14. }
15. return(start);
16.}

MS給出的代碼比較簡潔,寫的比俺的要好!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved