while(1!=scanf("%d",&i) || (i<1||i>8)) 其中1!=scanf(“%d”,&i)听别人说是返回值方面知识
展开全部
这里是返回值的问题
scanf(“%d”,&i);
%d,读十进制整数
如果成功读入i,返回值1,否则返回0
(输入12(数字),则会成功读入;输入非数字,则失败)
如果输入多个
scanf("%d,%d,%d",&l,&m,&n);
依次读入l、m、n
从第一个 l 开始,成功读入几个就返回几
比如 l 、m读取成功,n失败,则返回2
如果 l 读取失败,则返回 0
scanf的返回只就相当于计算有几个读入成功,只是,一旦失败就不在计算后面的是否成功
scanf(“%d”,&i);
%d,读十进制整数
如果成功读入i,返回值1,否则返回0
(输入12(数字),则会成功读入;输入非数字,则失败)
如果输入多个
scanf("%d,%d,%d",&l,&m,&n);
依次读入l、m、n
从第一个 l 开始,成功读入几个就返回几
比如 l 、m读取成功,n失败,则返回2
如果 l 读取失败,则返回 0
scanf的返回只就相当于计算有几个读入成功,只是,一旦失败就不在计算后面的是否成功
参考资料: http://baike.baidu.com/view/1390039.htm
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询