qq_58625182 2021-08-21 17:11 采纳率: 100%
浏览 44
已结题

能帮帮忙看看这几行代码怎么错了吗?

#include <stdio.h>
#include <stdlib.h>
typedef struct{
char num[2000];//大数
int count;//大数的位数
}data;
int main(void){
data multi(data temp,int elementx);
data temp={{'0','0','5'},3};
int i;
temp=multi(temp,3);
for(i=temp.count-1;i>=0;i++)
printf("%c",temp.num[i]);
return 0;
}
data multi(data temp,int elementx){
int i,t;
data tempx={{0}};
for(i=0;i<temp.count;i++){
t=(temp.num[i]-'0')*elementx;
tempx.num[i]+=(t%10+'0');
tempx.num[i+1]+=t/10;
if(i==temp.count-1&&t/10>0){
temp.count++;
tempx.num[i+1]+='0';
}
}
tempx.count=temp.count;
return tempx;
}
这写的是一个个位数与一个大数相乘的程序,想了半天不知道哪里错了

  • 写回答

1条回答 默认 最新

  • Pliosauroidea 2021-08-21 17:33
    关注
    #include <stdio.h>
    #include <stdlib.h>
    typedef struct
    {
        char num[2000]; //大数
        int count;      //大数的位数
    } data;
    int main(void)
    {
        data multi(data temp, int elementx);
        data temp = {{'0', '0', '5'}, 3};
        int i;
        temp = multi(temp, 3);
        for (i = temp.count - 1; i >= 0; i--)
            printf("%c", temp.num[i]);
        return 0;
    }
    data multi(data temp, int elementx)
    {
        int i, t;
        data tempx = {{0}};
        for (i = 0; i < temp.count; i++)
        {
            t = (temp.num[i] - '0') * elementx;
            tempx.num[i] += (t % 10 + '0');
            tempx.num[i + 1] += t / 10;
            if (i == temp.count - 1 && t / 10 > 0)
            {
                temp.count++;
                tempx.num[i + 1] += '0';
                break;
            }
        }
        tempx.count = temp.count;
        return tempx;
    }
    

    输出循环i--写成i++了
    最高位处理有点问题我也改了一下
    有帮助望采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月29日
  • 已采纳回答 8月21日
  • 创建了问题 8月21日

悬赏问题

  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python