c语言初学者请教一下各位 请问一下 哪错了

c语言初学者请教一下各位请问一下哪错了过年时,什么都讲究吉利,数字8由于与“发”谐音,其吉利的属性已经深入人心,例如,8,88,888,8888,88888,888888... c语言初学者请教一下各位
请问一下 哪错了过年时,什么都讲究吉利,数字8由于与“发”谐音,其吉利的属性已经深入人心,例如,8,88,888,8888,88888,888888等数字都是非常吉利的数字。

下面拟用一个与吉利数字有关的题目,提前祝大家新年快乐!

先定义一下“合发数”,如果一个正整数a与另外一个正整数b相加,和值上的各位数字均为8,则a与b互为“合发数”。意指a和b合在一起后全是8(“发”)

如果求正整数a的合发数,则a的合发数可能有很多个,下面的问题只要你求出a的最小合发数即可。

Derson决定将问题进一步简化,限定正整数a的位数不超过4位,即1<=a<=9999。

输入

输入正整数a,(1<=a<=9999) 

输出

输出a的最小“合发数”。

注意:

1)a的最小“合发数”也必须是正整数,即其值至少是1;

2)a虽然最多只是4位数,但a的最小合发数可能有5位。如8888的最小合发数就是80000。

这2点本来是这个题目的坑(如果是竞赛,绝对不会提醒),Derson只能帮到这了!

我的程序:
#include <stdio.h>
int main(void)
{
int a,b;
scanf("%d",a);
else if (a<=8)
b=8-a;
else if (a<=88 && a>8)
b=88-a;
else if (a<=88 && a>88)
b=888-a;
else if (a<=8888 && a>888)
b=8888-a;
else
b=88888-a;
printf("%d",b);
return 0;
}
展开
 我来答
stomachcao
2016-12-30 · TA获得超过6263个赞
知道大有可为答主
回答量:2276
采纳率:75%
帮助的人:730万
展开全部
你的是错的
例如 a = 8 b = 8-a = 0
但是题目有要求 : a的最小“合发数”也必须是正整数,即其值至少是1;

因此 a = 8 b = 80 才行
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式