VIGO632 2022-01-04 17:32 采纳率: 100%
浏览 35
已结题

这个c语言程序该怎么写?

编写函数stoi(char str[ ]),实现如下功能:从字符串str(字符串中不超过10个数字符号)中提取数字符号,并形成对应的整数。编写主程序,测试stoi函数的功能并在主程序中输出结果。例如字符串为:a1b2c3,则得到整数123。

  • 写回答

3条回答 默认 最新

  • a5156520 2022-01-04 17:49
    关注

    一个简单实现:

    
    
    #include <stdio.h>
    #include <string.h>
    int stoi(char str[]){
        
        int i;
        int num=0;
        int k=1;
        int temp[10];
        int j=0;
        
        //把字符串里面的数存放到一个int数组 
        for(i=0;i<strlen(str);i++){
            if(str[i]>='0'&&str[i]<='9'){
                temp[j]=k*(str[i]-'0');
                j++;
            }
        }
        
        //从这个数组拼接出一个整数 
        for(i=0;i<j;i++){
            num+=temp[j-i-1]*k;
            k*=10;
        }
        
        return num;
    }
    
    int main(void){
        
        char str[20];
    
        gets(str);  //获取一个字符串 
        printf("%d\n",stoi(str));  //打印转换结果 
    
        
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月12日
  • 已采纳回答 1月4日
  • 创建了问题 1月4日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助