getchar();
while((choice=getchar())!='4') //进行循环多次选择
{
while(getchar()!='\n');
switch(choice){
case '1': //加法
{
printf("The result is %d+%di\n",a+c,b+d);
break;
}
case '2': //减法
{
if(b-d>=0)
printf("The result is %d+%di\n",a-c,b-d);
else
printf("The result is %d%di\n",a-c,b-d);
break;
}
case '3': //乘法
{
printf("The result is %d+%di\n",a*c-b*d,a*d+b*c);
break;
}
default: //退出
break;
}
printf("\n");
printf("Please select a function:\n");
}
这段代码里为什么去掉while(getchar()!='\n');后会连着输出两遍Please select a function: ?新人看不太懂求解释
是能够清除内存的意思。
那条语句是:
while(getchar()!='\n')
continue;
有清除内存的功能。
getch与getchar基本功能相同,差别是getch直接从键盘获取键值,不等待用户按回车,只要用户按一个键,getch就立刻返回,。
扩展资料:
while语法
Pascal
while <条件> do <语句>
意为当条件符合时,接着做下面的语句;不符合时,退出循环。
C
do <语句> while(<条件>);
while(<条件>) <语句>;
C++
while(<条件>) <语句>;
do <语句> while(<条件>);
注意:do...while 循环是 while 循环的变种。
参考资料来源:百度百科-while (循环语句及英文单词)