华哥
11级
2011-10-22 回答
#include
main()
{
int a;
char command;
do
{
printf("输入 data: ");
scanf("%d",&a);
printf("%d",a*3);
printf("输入y继续 : ");
scanf(" %c",&command);
} while (command=='Y'||command=='y');
}
补充:
你有好几错误
(1) 头文件
(2)使用了中文符号
(3) 在 do {}while() 里面定义变量 ,他的作用域仅仅在循环内,while语句是不会判断的
编译也不会通过
(4)最要命的一点,在执行 sscanf("%d",&a); 时,你输入了一个数据
灰按 enter键,这时,scanf(" %c",&command);语句就会读入一个'\n' 回车键
而你要输入的 y Y 就不会读入了, 为了避免这样的情况发生
在%c 前 加一个空格 ,在执行第一个scanf(); 时。ente读入的‘\n’ 就成了一个间隔
x、相当于scanf()中%c的前面的空格
能理解吗?
追问: