91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言如何從字符串中提取數字

小億
1047
2023-12-26 00:53:54
欄目: 編程語言

在C語言中,可以使用庫函數和循環來從字符串中提取數字。下面是一種常見的方法:

  1. 使用sscanf函數:sscanf函數可以從字符串中按照指定的格式提取數據。首先,使用sscanf函數將字符串中的數字提取到一個變量中。
#include <stdio.h>

int main() {
   char str[] = "abc123def456";
   int num;
   
   sscanf(str, "%*[^0123456789]%d", &num);
   
   printf("提取到的數字為:%d\n", num);
   
   return 0;
}

上述代碼中,%*[^0123456789]表示跳過非數字字符,%d表示提取整數。sscanf函數的返回值表示成功匹配并提取的參數數量。

  1. 使用循環逐個字符判斷:通過循環遍歷字符串中的每個字符,判斷是否為數字字符,如果是,則將其轉換為整數并存儲。
#include <stdio.h>

int main() {
   char str[] = "abc123def456";
   char num_str[10] = "";  // 存儲提取到的數字字符串
   int num = 0;  // 存儲提取到的數字
   
   int i = 0;
   int j = 0;
   while (str[i] != '\0') {
      if (str[i] >= '0' && str[i] <= '9') {
         num_str[j] = str[i];
         j++;
      }
      i++;
   }
   
   num = atoi(num_str);  // 將數字字符串轉換為整數
   
   printf("提取到的數字為:%d\n", num);
   
   return 0;
}

上述代碼中,通過循環遍歷字符串中的每個字符,判斷是否為數字字符(ASCII碼為48~57),如果是,則將其存儲到num_str數組中。最后,使用atoi函數將num_str轉換為整數。

以上是兩種常見的從字符串中提取數字的方法。根據實際情況選擇適合的方法。

0
台湾省| 乌兰浩特市| 景泰县| 理塘县| 江油市| 贡嘎县| 邵阳市| 连江县| 惠水县| 盱眙县| 安宁市| 柏乡县| 阳西县| 辉南县| 类乌齐县| 澳门| 五华县| 革吉县| 泰和县| 深水埗区| 开鲁县| 鄂托克前旗| 盖州市| 朝阳县| 闸北区| 车险| 崇礼县| 武邑县| 香格里拉县| 韩城市| 建始县| 呼和浩特市| 新晃| 奉节县| 龙泉市| 阜城县| 崇信县| 睢宁县| 南溪县| 白山市| 紫金县|