?? 挑出兩整數(shù)數(shù)組中不同的元素(需密碼).txt
字號(hào):
/* 挑出兩數(shù)組中的不同元素 ----Author:zhg_2006.5.20
*/
#define M 5
#define N 6
#include<stdio.h>
void compare(int a[],int b[]);
int zhg_entrance(char mima[],char prompt[]);
void zhg_information(char Date[]);
char Date[]={"2006.5.20"};
void main()
{
int i,j,fan,a[M],b[N];
char panduan,mima[]={"87343609"},prompt[]={"dianmi"};
fan=zhg_entrance(mima,prompt);
if(fan==0)
goto over;
zhg_information(Date);
printf("\t\t\t Congratulations !\n");
xunhuan: printf("\t\t\t\t\t\t\t To eixt input 32767.\n\n\n\n\n");
printf(" Please input %d numbers(%%d<=32767) of a[%d] ,and %d numbers of b[%d]:\n\n\n\t\t\t",M,M,N,N);
for(i=0;i<M;i++)
{
scanf("%d",&a[i]);
if(a[i]==32767)
goto over;
if(i==M-1)
{
putchar('\n');
break;
}
}
for(j=0;j<N;j++)
{
scanf("%d",&b[j]);
if(b[j]==32767)
goto over;
if(j==N-1)
break;
}
zhg_information(Date);
printf(" You've input:\n\n a[%d]={",M);
for(i=0;i<M;i++)
printf("%d,",a[i]);
printf("\b}\n");
printf(" b[%d]={",N);
for(j=0;j<N;j++)
printf("%d,",b[j]);
printf("\b}\n\n\n");
printf(" The different elements are :\n\n");
compare(a,b);
printf("\n\n\n To CONTINUE press <Ctrl+C>. To EXIT press anyothers.");
panduan=getch();
if(panduan=='\x03')
{
zhg_information(Date);
goto xunhuan;
}
else
goto over;
over:;
}
void compare(int a[],int b[]) // 此函數(shù)用來分別挑出array1和array2中不同的數(shù)
{
int i,j,k=1;
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
if(a[i]==b[j])
break;
}
if(j==N)
{
printf(" (%d):a[%d]=%d ",k,i,a[i]); // 原樣輸出“a[]”
if(k%3==0)
putchar('\n');
k++;
}
continue;
}
for(j=0;j<N;j++)
{
for(i=0;i<M;i++)
{
if(b[j]==a[i])
break;
}
if(i==M)
{
printf(" (%d):b[%d]=%d ",k,j,b[j]); // 原樣輸出“b[]”
if(k%3==0)
putchar('\n');
k++;
}
continue;
}
}
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define Maxtimes 4
int zhg_entrance(char mima[],char prompt[])
{
char password[21]; // 由此可以更改允許用戶輸入的密碼位數(shù),實(shí)際密碼位數(shù)應(yīng)當(dāng)在數(shù)組mima[]賦值處更改
extern char Date[]; // 聲明外部變量
int i,j;
zhg_information(Date); // 外部變量Date[]已經(jīng)在主調(diào)函數(shù)外賦過值 // zhg_information有清屏功能
printf("\n\t\t\t ");
printf("Welcom to use this program !\n\n\n");
printf("\tYou are given %d times to login at most.\n",Maxtimes); // 欲更改次數(shù)可在本程序首預(yù)處理命令處進(jìn)行
printf("\t\t\t\t\t\t For PROMPT,press <Ctrl+P>.\n");
printf("\t\t\t\t\t\t For EXIT,press <Ctrl+E>.\n\n\n\n\n");
printf("\t Please input the password: ");
shurumima1: i=0;
do
{
password[i]=getch();
if(password[i]=='\b')
{
putchar('\b');
i--;
}
else
{
printf("\a*");
i++;
}
}
while(password[i-1]!='\r'&&password[i-1]!='\x10'&&password[i-1]!='\x05');
{
if(password[i-1]=='\x10') // <Ctrl+P>鍵
{
zhg_information(Date);
printf("\n\n\n\n\t\t\tPROMPT:%s\n\n\n\n\n\n\t\tContinue : ",prompt);
goto shurumima1;
}
if(password[i-1]=='\x05') // <Ctrl+E>鍵
return 0; // 表示登錄失敗
{
password[i-1]='\0';
if( strcmp(password,mima)==0 )
return 1; // 表示登錄成功
}
}
for(j=1;j<Maxtimes;j++)
{
zhg_information(Date);
printf("\n\n\t\t\t\tPassword Error !\n");
if(Maxtimes-j>1)
printf("\n\t\t\t\t%d times left !\n",Maxtimes-j);
else
printf("\n\t\t\tFor the last time.Be careful !\n");
printf("\t\t\t\t\t\t For PROMPT,press <Ctrl+P>.\n");
printf("\t\t\t\t\t\t For EXIT,press <Ctrl+E>.\n\n\n\n");
printf("\tPlease input the password again: ");
shurumima2: i=0;
do
{
password[i]=getch();
if(password[i]=='\b')
{
putchar('\b');
i--;
}
else
{
printf("\a*");
i++;
}
}
while(password[i-1]!='\r'&&password[i-1]!='\x10'&&password[i-1]!='\x05');
{
if(password[i-1]=='\x10') // <Ctrl+P>鍵
{
zhg_information(Date);
printf("\n\n\n\n\t\t\tPROMPT:%s\n\n\n\n\n\n\t\tContinue : ",prompt);
goto shurumima2;
}
if(password[i-1]=='\x05') // <Ctrl+E>鍵
return 0;
{
password[i-1]='\0';
if( strcmp(password,mima)==0 )
return 1;
}
if(j==Maxtimes-1) // 此條件比以上兩個(gè)的“優(yōu)先級(jí)別”低不能放在其前
{
zhg_information(Date);
printf("\n\n\n\t\t Sorry,you've tried for %d times.\n\n",Maxtimes);
printf("\t\t\t Welcom to use next time !\n\n\n\n\n");
printf("\t\tPlease press any key to quit. Thank you !");
getch();
return 0;
}
}
}
return 1; // 事實(shí)上程序運(yùn)行不到這里,此處是為了避免編譯的警告
}
#include<stdio.h>
#include<conio.h>
void zhg_information(char Date[])
{
int i;
clrscr();
printf("\n\t\t\t All Rights Reserved !!!\n");
printf(" Wuhan University\t\t\t\t\t\t----Author: zhg\n");
printf(" E-mail: wudazhg@163.com%55s\n",Date);
for(i=1;i<=80;i++)
putchar('-');
putchar('\n');
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -