⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infinput.cpp

📁 基于VC的小型数据库管理程序源代码
💻 CPP
字号:
#include "include.h"

 Inflinklist *head;
//-------------------------------------------------
//--输入信息
//-------------------------------------------------
char Infinput(Inflinklist * pesninf)
{
     int i=0;
	 int cnt=0;
	 UINT tt=0;  //标记
	 int pp=0;  //标记

     char cntu; //是否继续进行标记 
	 char agecpy[3]; //存入年龄键入值
	 int sum=0; //输入数字时计算输入数字的数值
     Inflinklist *q;
	 q=(Inflinklist *)malloc(sizeof(Inflinklist));
	 {
	    if(q==NULL) 
		{
		  printf("memory is not enough!Now realease the memory appled!\n");
		  Infsavetxt(head); 
		  freelinklist(head);
		}
	 }
	 q->spousename[0]=NULL;//初始时配偶姓名为空
     printf("Please input presonnal  basic information show as below:\n");
     
	 fflush(stdin);
	 printf("   name:");
	 nameinputproc(q);

     fflush(stdin); //清除键盘缓冲区

	 printf("   sex: ");
	 
loop:    q->sex=getchar();  //性别输入容错处理
	 while(getchar()!=10)
	 { 
		 printf("  ERROR!输入字符太多!请输入单个字符!\t opreation:");
		 fflush(stdin);
		 goto  loop;
	 }
	 while(q->sex!='M' && q->sex!='m' && q->sex!='F' && q->sex!='f')
	 {
		fflush(stdin);
		printf("sex input error!input again!press M/m or F/f:\t");
		printf("   sex: ");
        goto loop;
	 }  

	 fflush(stdin);

     printf("   age: ");
	 ageinputproc(q);
 
	 fflush(stdin);

	 printf("   spousename: "); 
	    tt=1; //姓名输入容错处理
	 while(tt)
	 {
		 fflush(stdin);
		 pp=0;
		 i=0;
		 cnt=0;
         q->spousename[i]=getchar();
	     while(q->spousename[i]!=10) 
		 {	
		     i=i+1;
			 cnt=cnt+1;
			 q->spousename[i]=getchar();
		     if((q->spousename[i]<65 && q->spousename[i]!=10)|| (q->spousename[i]>90 && q->spousename[i]<97) ||q->spousename[i]>122 )//输入的字符不是大小写字母
			 {
		       printf("  非法输入!名字输入错!输入只能由字母组成!\n");
			   printf("  spousename:");
	 	       q->spousename[0]=NULL;
			   i=0;
			   cnt=0;
			   pp=1;
			   fflush(stdin);
			   break;
			 }
			 else if(cnt>30)
			 {
			   printf("  非法输入!输入字符太多!请重新输入!\n");
			   printf("  spousename:");
	 	       q->spousename[0]=NULL;
			   i=0;
			   pp=1;
			   cnt=0;
			   fflush(stdin);
			   break;
			 }

		 }
		 if(q->spousename[0]==10) 
		 {  tt=0; fflush(stdin); }
		 else if(pp==0) tt=0;
	 } 
     q->spousename[i]='\0';

     q->next=pesninf->next;
	 pesninf->next=q;

	 fflush(stdin); 
	 printf("\nInput continue? press Y/y continue;to end,press N/n:\t");
	 cntu=GetContinueNote();
     return cntu;    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -