m0_58050940 2021-07-02 11:17 采纳率: 52.6%
浏览 30
已采纳

c语言中加法算式计算,不知道哪错了,这两空

img

代码:#include<stdio.h>
#include<string.h>
int getOperIndex(char express[])
{
int len=strlen(express),i;
for(i=0;i<len;i++)
{
char ch=express[i];
if(ch=='+')
return i;
}
return -1;
}
int Str2Num(char str[])
{
int len=strlen(str);
int num=0,i;
for(i=0;i<len;i++)

num=num*10+str[i];

  return    num;

}
int main(int argc,char **argv)
{
char express[100];
gets(express);
int index=getOperIndex(express);
char str1[100]={0},str2[100]={0};
strncpy(str1,express,index);

strcpy(str2,express+1+index);

    int  num1=Str2Num(str1);
    int  num2=Str2Num(str2);
    printf("%d",num1+num2);
    return  0;

}

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2021-07-02 13:27
    关注

    供参考:

    #include<stdio.h>
    #include<string.h>
    
    int getOperIndex(char express[])
    {
        int len=strlen(express),i;
        for(i=0;i<len;i++)
        {
            char ch=express[i];
            if(ch=='+')
                    return i;
        }
        return -1;
    }
    int Str2Num(char str[])
    {
        int len=strlen(str);
        int num=0,i;
        for(i=0;i<len;i++)
            num=num*10+str[i]-'0';
        return  num;
    }
    
    int main(int argc,char **argv)
    {
        char express[100];
        gets(express);
        int index=getOperIndex(express);
        char str1[100]={0},str2[100]={0};
        strncpy(str1,express,index);
        strncpy(str2,express+index+1,strlen(express)-index);
        int  num1=Str2Num(str1);
        int  num2=Str2Num(str2);
        printf("%d\n",num1+num2);
       
        return  0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?