首页 > 其他分享 >字符串中提取数字

字符串中提取数字

时间:2024-03-24 16:04:47浏览次数:25  
标签:提取 数字 int char num str 字符串 include

10.16输入一个字符串,内有数字和非数字字符,如:

                  a123x456 17960? 302tab5876

将其中连续的数字作为一个整数,依次存放到一数组num中。例如123放在num[0]中,456放在num[1]中……统计共有多少个整数,并输出这些数。

#include <stdio.h>
#include <string.h>
#include <math.h>
int output(char* str, int* a)
{
    int n = strlen(str);
    int temp[50];
    int sum=0, j=0, k,p;
    int m = 0;
    int num = 0;
    char* i;
    for (i = str; i < str + n + 1; i++)
    {
        if (*i >= '0' && *i <= '9')
        {
            num = 1;
            temp[j++] = (int)(*i - '0');
        }
        else if (num)
        {
            sum = 0;
            num = 0;
            p = j - 1;
            for (k = 0; k < j; k++)
            {
                sum += temp[k] * pow(10, p);
                p--;
            }
            a[m++] = sum;
            j = 0;
        }
    }
    return m;
}

int main()
{
    char str[50];
    int a[50];
    gets(str);
    int m=output(str,a);
    for (int i = 0; i < m; i++)
        printf("%d ",a[i]);
    return 0;
}

标签:提取,数字,int,char,num,str,字符串,include
From: https://blog.csdn.net/m0_53374272/article/details/136989195

相关文章

  • LeetCodeHot100 栈 155. 最小栈 394. 字符串解码
    155.最小栈https://leetcode.cn/problems/min-stack/description/?envType=study-plan-v2&envId=top-100-likedclassMinStack{Deque<Integer>deque;PriorityQueue<Integer>priorityQueue;publicMinStack(){de......
  • Java为什么创建一个字符串对象需要在内存中创建两份
    在Java中,当你使用Strings=newString("abc")这样的语法创建一个字符串时,实际上会在内存中创建两个对象。这是因为Java中的字符串分为两种类型:一种是使用字面量的方式创建的字符串,另一种是通过new关键字创建的字符串。当我们使用字面量方式创建字符串时,例如Strings="a......
  • 最长子字符串的长度(二)【华为OD机试JAVA&Python&C++&JS题解】
    一.题目-最长子字符串的长度(二)给你一个字符串s,字符串s首尾相连成一个环形,请你在环中找出’l’、‘o’、‘x’字符都恰好出现了偶数次最长子字符串的长度。输入描述:输入是一串小写的字母组成的字符串。输出描述:输出是一个整数补充说明:1<=s.length<=5x10^5......
  • 银行数字人民币系统应用架构设计
    2019年10月,01区块链联合数字资产研究院发布了《人民币3.0:中国央行数字货币运行框架与技术解析》,从数字货币界定和人民币发展历程出发,区分了央行数字货币与比特币、移动支付等的区别,全面介绍了央行数字货币的发展历程及现状,并对2019年9月之前央行及其下属机构申请的84项相关专利......
  • NVIDIA 2024 GTC大会提出的数字孪生技术 —— 工厂3D仿真与AI大模型结合
    地址:https://www.youtube.com/watch?v=JQdyzQdMRS0FusingReal-TimeAIWithDigitalTwins......
  • 找到字符串中所有字母异位词 - LeetCode 热题 9
    大家好!我是曾续缘......
  • 【力扣】268.丢失的数字
    题目描述给定一个包含[0,n]中n个数的数组nums,找出[0,n]这个范围内没有出现在数组中的那个数。示例1:输入:nums=[3,0,1]输出:2解释:n=3,因为有3个数字,所以所有的数字都在范围[0,3]内。2是丢失的数字,因为它没有出现在nums中。示例2:输入:nums=[0,......
  • (8-5)图像特征提取:基于LoG、DoG 和DoH 的斑点检测器
    8.5 基于LoG、DoG和DoH的斑点检测器斑点检测器是一种常用的图像处理技术,用于检测图像中的离散点、小斑点或孤立的亮暗区域。在斑点检测中,LoG(LaplacianofGaussian)、DoG(DifferenceofGaussian)和DoH(DeterminantofHessian)是常用的滤波器或特征算子。8.5.1 LoG(Laplacia......
  • lc2781 最长合法子字符串的长度
    给定长度为n且只包含小写字母的字符串word和禁用字符串数组forbidden,如果一个字符串不包含forbidden中的任何字符串,则称其为合法。求word中最长合法子字符串的长度,子字符串可以为空。1<=n<=1e5;1<=forbidden.length<=1e5;1<=forbid[i].length<=10注意到forbid[i]长度最大只有1......
  • matlab实现神经网络检测手写数字
    一、要求1.计算sigmoid函数的梯度;2.随机初始化网络权重;3.编写网络的代价函数。二、算法介绍神经网络结构:不正则化的神经网络的代价函数:正则化:S型函数求导:反向传播算法:step1:初始化,然后使用前向传播算法计算step2:计算第三层的误差;step3:对于第二层 ;step4:使用......