鱼C论坛

 找回密码
 立即注册
查看: 2294|回复: 5

麻烦大家了,能编译出来,但输出的不对

[复制链接]
发表于 2019-2-21 19:38:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main()

{
        int i;
        int gw,sw,bw,sum;
        printf("请输入一个100到999的数:");
        scanf("%d",&sum);
        gw=i%10;
        sw=i/10%10;
        bw=i%100;
        sum=gw+sw+bw;
        printf("各位数上的和是:%d",sum);
       
       
       
       
       
       
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-22 10:26:21 | 显示全部楼层
你的i没有赋值啊。是不是scanf("%d",&sum)这句写错了,你是打算写成scanf("%d",&i)吧?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2019-2-22 12:27:00 | 显示全部楼层
sunrise085 发表于 2019-2-22 10:26
你的i没有赋值啊。是不是scanf("%d",&sum)这句写错了,你是打算写成scanf("%d",&i)吧?

对,他应该是这个目的
  1. #include<stdio.h>
  2. int main()

  3. {
  4.         int i;
  5.         int gw,sw,bw,sum;
  6.         printf("请输入一个100到999的数:");
  7.         //scanf("%d",&sum);
  8.         scanf("%d",&i);
  9.         gw=i%10;
  10.         sw=i/10%10;
  11.         bw=i%100;
  12.         sum=gw+sw+bw;
  13.         printf("各位数上的和是:%d",sum);
  14.         
  15.         
  16.         
  17.         
  18.         
  19.         
  20.         return 0;
  21. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 17:20:57 | 显示全部楼层
1.首先你的程序里i没有赋值,应该是scanf("%d",&i);
2.你的百位数字求法不对,可以举个简单例子,修改后应该是bw=i/100%10;
3.对于制定输入应该检查输入是否符合规范,建议增加检查规范
修改后程序如下:
  1. #include<stdio.h>
  2. int main()
  3. {
  4.     int i;
  5.     int gw,sw,bw,sum;
  6.     printf("请输入一个100到999的数:");
  7.     scanf("%d",&i);
  8.     if( i>99 && i <1000)
  9.     {
  10.         printf("输入的数字是:%d\n",i);
  11.         
  12.         gw=i%10;
  13.         printf("个位数是:%d\n",gw);
  14.         
  15.         sw=i/10%10;
  16.         printf("十位数是:%d\n",sw);
  17.         
  18.         bw=i/100%10;
  19.         printf("百位数是:%d\n",bw);
  20.         
  21.         sum=gw+sw+bw;
  22.         
  23.         printf("各位数上的和是:%d",sum);
  24.         }
  25.     else
  26.     {
  27.         printf("输入非法");
  28.         }   
  29.         
  30.     return 0;
  31.    
  32. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-22 18:02:14 | 显示全部楼层
sunrise085 发表于 2019-2-22 10:26
你的i没有赋值啊。是不是scanf("%d",&sum)这句写错了,你是打算写成scanf("%d",&i)吧?

好的,谢谢,怪不得。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-22 18:03:13 | 显示全部楼层
hwq731364764 发表于 2019-2-22 17:20
1.首先你的程序里i没有赋值,应该是scanf("%d",&i);
2.你的百位数字求法不对,可以举个简单例子,修改后应 ...

谢谢,麻烦了,我知道了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 23:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表