借667 2021-12-03 23:08 采纳率: 83.3%
浏览 388
已结题

从键盘输入一个整数,将各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,然后输出被删除的数、删除前该整数原来的位数及新组成的数。为什么我的代码不能运行?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int i,b=0,c=0,d=0,f=0;
char a[50]={0},e[50]={0};
scanf("%d",&i);
for(b=0;i/10!=0;b++)
{
c=i/10;
a[b]=c;
if(i/10==0)
{
b++;
a[b]=i;
}
}
d=b;
for(;b>0;b--)
{
if(a[b]%2!=0)
{
printf("%d\n",a[b]);
}
}
printf("%d\n",d);
for(;d>0;d--)
{
if(a[d]%2!=0)
{
e[f]=a[d];
f++; }
}
puts(e);
return 0;}

代码有点乱,见谅。

  • 写回答

1条回答 默认 最新

  • bekote 2021-12-03 23:39
    关注
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    int main()
    {
    int i,b=0,c=0,d=0,f=0;
    int a[50]={0};
    char e[50]={0};
    scanf("%d",&i);
    for(b=0;i!=0;b++)
    {
    a[b]=i%10;
    i=i/10;
    }
    d=b;
    for(b--;b>=0;b--)
    {
    if(a[b]%2==0)
    {
    printf("%d\n",a[b]);
    }
    }
    printf("%d\n",d);
    for(d--;d>=0;d--)
    {
    if(a[d]%2!=0)
    {
    e[f]=a[d]+'0';
    f++;
    }
    }
    e[f]='\0';
    puts(e);
    return 0;}
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月28日
  • 已采纳回答 12月20日
  • 创建了问题 12月3日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么