唐僧爱吃唐僧肉 2017-03-25 02:22 采纳率: 16.7%
浏览 1081

求解小白很急在线等,

题目内容:
从键盘输入6位仅由数字0~9组成的密码。用户每输入一个密码并按回车键后,程序给出判断:如果是数字,则原样输出该数字,并提示用户目前已经输入了几位密码,同时继续输入下一位密码;否则,程序提示"error",并让用户继续输入下一位密码。直到用户输入的密码全部是数字为止。
以下为程序的运行结果示例:
Input your password:
1↙
1, you have enter 1-bits number
6↙
6, you have enter 2-bits number
a↙
error
d↙
error
4↙
4, you have enter 3-bits number
6↙
6, you have enter 4-bits number
8↙
8, you have enter 5-bits number
2↙
2, you have enter 6-bits number

输入提示信息:"Input your password:\n"
输入格式: "%c"
输出格式:
如果输入的是数字,输出格式为:"%c, you have enter %d-bits number\n"
如果输入的不是数字,输出提示信息:"error\n"
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
小白的程序:
#include
int main()
{
int i=1;
printf("Input your password:\n");
while(i<=6)
{
char m;
scanf("%c",&m);
if(m>='0'&&m<='9')
{
printf("%c, you have enter %d-bits number\n",m,i);
i++;
}
else
printf("error\n");
}
return 0;
}
那么问题来了,为什么输出的结果不对

  • 写回答

2条回答 默认 最新

  • qq_38044731 2017-03-25 02:50
    关注

    字符是%c,整型是%d,浮点型%f , 你只读取了字符型的情况,需要定一个变量如n,再读取,int n;scanf("%d",&n);

    评论

报告相同问题?

悬赏问题

  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素