c语言中如何在保留原有的输出的同时覆盖掉错误的输出

来源:百度知道 编辑:UC知道 时间:2024/05/15 16:14:13
是屏幕把提示出错的信息覆盖,请用户重新输入,不能把原来屏幕上的未出错的信息删除。只能选择性的删除。

#include<stdio.h>

int main(void)
{
int i;
int a[100];
char c[100];

for(i=0;i<100;i++)
scanf("%d%c",&a[i],&c[i]);

/*输入完毕*/

/*开始判断出错与否,假设这个数小于零或这个字母不是大写,则提示出错*/

for(i=0;i<100;i++)
{
label__1:
if(a[i]<0 || !(c[i]<='Z'&&c[i]>='A'))
{
printf("\nThe %d is wrong, please re-enter",i+1);
scanf("%d%c",&a[i],&c[i]) ; /*重新输入,这时候输入的数据覆盖原来的*/
goto label__1; /*跳回上一步再次检查*/
}
}
/*所有检查完毕,此时所有数据都正常*/

return 0;
}

p.s.出错的条件可以自己在if()的条件句中按需要自己写