示例#1
0
void getappointment(FILE *fp, int cid, int pid, char *user, int d, int m, int y, int *csock){
	printf("\n in get appointments");

	fseek(fp, 0, SEEK_END);
	struct appointment a;
	a.flag = 3;
	a.category_id = cid;
	a.person_id = pid;
	strcpy(a.username, user);
	a.d = d;
	a.m = m;
	a.y = y;
	if (isvalid_date(fp, d, m, y)){
		fwrite(&a, sizeof(a), 1, fp);
		replyto_client("appointment creation successfull...", csock);
	}
	else{
		replyto_client("invalid/alreday booked date provided try again with another date :)", csock);
	}
}
示例#2
0
int main(void) {
	char user_id[15] = { 0 }, gender = 0;
	printf("주민등록번호를 -를 포함하여 입력하시오. "); gets_s(user_id);

	if (strlen(user_id) != 14) { printf("주민등록번호의 길이가 너무 짧습니다.\n"); return 0; }//길이 확인

	for (int i = 0; user_id[i]; i++) user_id[i] -= '0';//교수님의 추천 방법대로 숫자 배열로 바꿉니다.
	int year = user_id[0] * 10 + user_id[1], month = user_id[2] * 10 + user_id[3], day = user_id[4] * 10 + user_id[5];
	gender = user_id[7];
	if (gender == 1 || gender == 2) year += 1900; else year += 2000; //1900년대인지, 2000년대인지 확인

	if (!((gender <= 4) && (gender > 0))) { printf("주민등록번호의 성별이 유효하지 않습니다.\n"); return 0; }//유효성 확인
	if (!isvalid_date(year, month, day)) { printf("주민등록번호의 생년월일이 유효하지 않습니다.\n"); return 0; }//날짜 확인
	if (!isvalid_id(user_id)) { printf("유효하지 않은 주민등록번호입니다.\n"); return 0; }//유효성 확인

	//출력
		 if (gender == 1 || gender == 3) printf("남성, ");
	else if (gender == 2 || gender == 4) printf("여성, ");
	printf("%d년 %d월 %d일생 입니다.\n", year, month, day);

	return 0;
}