C語言 字符串中數字的運算


主函數中輸入字符串"32486"和"12345",在主函數中輸出的函數值為44831。

#include  <stdio.h>
#include  <string.h>
#include  <ctype.h>
#define  N  9
long  ctod( char  *s )
{ long  d=0;
  while(*s)
    if(isdigit( *s))  {      // 此出的“isdigit”是“ctype”中的一個函數,用於檢查字符串中的字符是否為數字,若是返回1,不是則返回0

      d=d*10+*s-'0';        //  d用於存放字符串中的數字的和(c語言中用於存放和差的先將其置0,乘除的置為1) 因為d的取值是從字符串的高位開始,故每次計數都要×10,以調和位權

      s++;    //    可能會被寫成  *s++
     }
  return  d;
}
long fun( char *a, char *b ) { return ctod(a)+ctod(b); a,b是數組名 } main() { char s1[N],s2[N]; do { printf("Input string s1 : "); gets(s1); } while( strlen(s1)>N ); do { printf("Input string s2 : "); gets(s2); } while( strlen(s2)>N );                do..while...句型不常用,do中存放任務,在while中存放條件的取反 printf("The result is: %ld\n", fun(s1,s2) ); }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM