c语言禁止输入字符串,如何禁止输入特殊符号

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

{

printf("此文件不可读或无你所需要修改的用户资料,请重新输入或返回主菜单重新选择!!"); //The system can't open the file

getchar();

return;

}

system("cls");

while(flag=='y')

{

printf("\n\tMODIFY SUBSCRIBER DETAILS");

printf("\n\n请输入您要修改的用户名 :");

scanf(" %s",newname);

rewind(fp); //将文件位置重新置于文件开头

system("cls");

while((fread(&tel,sizeof(struct aaa),1,fp))==1)

{

if(strcmp(newname,tel.name)==0)

{

printf("\n\tRECORD TO BE MODIFIED\n");

printf("姓名:%s\n",tel.name);

printf("地址:%s\n",tel.address);

printf("电话号码:%d\n",tel.telhome);

find=1;

break;

}

}

if(find==0)

{

printf("\n\n你输入的用户名错误或不存在,请重新输入!!");

getchar();

getchar();

return;

}

fseek(fp,-1*sizeof(struct aaa),1);//fseek(fp,-(long)(sizeof(struct aaa)),1);

printf("\n ENTER NEW RECORD DETAILS\n\n");

printf("请输入新的姓名:");

scanf("%s",tel.name);

printf("请输入新的地址:");

scanf("%s",tel.address);

printf("请输入新的电话号码:");

scanf("%d",&tel.telhome);

while(tel.telhome<4000000||tel.telhome>4999999)

{

printf("\n\tSubscriber telephone number must be between 4000000 and 4999999\n");

printf("\n请重新输入电话号码:");

scanf(" %d",&tel.telhome);

fflush(fp);

}

fwrite(&tel,sizeof(struct aaa),1,fp);

printf("修改成功!!是否继续修改?(y/n):");

scanf(" %c",&flag);

}

fclose(fp);

system("cls");

getchar();

getchar();

}

/*删除现有订户的详细信息*/

void del_existing()

{

FILE *fp;

struct aaa tel;

struct aaa *bbb;

char newname[30];

char flag='y';

char find=1;

int Count=0,i=0;

if((fp=fopen("telefon.txt","rb"))==NULL)

{

printf("\n此文件不可读或无你所需要删除的用户资料,请重新输入或返回主菜单重新选择!!");

getchar();

return;

}

system("cls");

while(flag=='y')

{

printf("\tDELETE SUBSCRIBER DETAILS\n\n");

printf("请输入要删除的用户名 :");

scanf("%s",newname);

system("cls");

while(fread(&tel,sizeof(struct aaa),1,fp)==1)

{

if(strcmp(tel.name,newname)==0)

{

printf("\n姓名:%s\n地址:%s\n电话号码:%d\n",tel.name,tel.address,tel.telhome);

find=1;

break;

}

}

if(strcmp(tel.name,newname)!=0)

{

printf("无你所需要删除的用户资料,请重新输入或返回主菜单重新选择!!\n");

getchar();

getchar();

return;

}

rewind(fp);

fseek(fp,-1*sizeof(struct aaa),1);

while(fread(&tel,sizeof(struct aaa),1,fp)==1)

{

Count++;

}

bbb=(struct aaa *)malloc((Count-1)*sizeof(struct aaa));

rewind(fp);

while(fread(&tel,sizeof(struct aaa),1,fp)==1)

{

if(strcmp(tel.name,newname)!=0)

{

bbb[i]=tel;

i++;

}

}

fclose(fp);

fp=fopen("telefon.txt","wb");

fwrite(bbb,sizeof(struct aaa),Count-1,fp);

printf("删除完毕!!是否继续删除?(y/n):");

scanf(" %c",&flag);

}

fclose(fp);

getchar();

}

/*根据电话号码查出的订户详细信息*/

void telephone()

{

char flag='y';

char find=0;

int newtelhome;

FILE *fp;

struct aaa tel;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值