饥饿的半导体 2022-03-30 15:38 采纳率: 85.7%
浏览 35
已结题

在未学习循环的情况下判断一或十位数并输出一或十位数的顺序和逆序

测试例输入1234567897得到正确结果,但是输入9876543217就不可以,代码哪里写错了呢?

#include <stdio.h>
int main()
{
    int x,a,b,c,d,e,f,g,h,i,j;
    printf("请输入一个正整数\n");
    scanf("%d",&x);
    if (x>0)
    {if(0<x&&x<10)
     printf("这个数是1位数\n顺序%d\n逆序%d\n",x,x);
     else if(999999999<x&&x<10000000000)
     {a=x%1000000000%100000000%10000000%1000000%100000%10000%1000%100%10;b=x%1000000000%100000000%10000000%1000000%100000%10000%1000%100/10;c=x%1000000000%100000000%10000000%1000000%100000%10000%1000/100;d=x%1000000000%100000000%10000000%1000000%100000%10000/1000;e=x%1000000000%100000000%100000000%1000000%100000/10000;f=x%1000000000%100000000%10000000%1000000/100000;g=x%1000000000%100000000%10000000/1000000;h=x%1000000000%100000000/10000000;i=x%1000000000/100000000;j=x/1000000000;
     printf("这个数是10位数\n顺序%d\n逆序%d%d%d%d%d%d%d%d%d%d\n",x,a,b,c,d,e,f,g,h,i,j);}
    }
    else
    printf("输入错误");
    return 0;
}
   

  • 写回答

1条回答 默认 最新

  • 什么时候上岸? 2022-03-31 10:16
    关注

    在C语言中int型数据的取值范围是-2147483648~+2147483647,你输入的第一个x没超出范围,第二个数就超了。

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

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 创建了问题 3月30日

悬赏问题

  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题