本文目录一览:
- 1、排考场座位问题 c语言
- 2、C语言排座位问题
- 3、C语言订座问题
排考场座位问题 c语言
#include stdio.h
#include stdlib.h
#include time.h
#define ROW 8
#define COL 8
int seat[ROW*COL]={0};
void main()
{
int i,j,k,a,count=0;
while(1)
{
system("cls"); //清屏
fflush(stdin); //清键盘输入缓冲区
printf("\n\t\t1 设定考场座位");
printf("\n\t\t2 取消考场座位");
printf("\n\t\t3 显示某座位考生信息");
printf("\n\t\t4 查找学生座位\n\t\t\t退出程序:Ctrl+C\n\n\t请选择:");
k = getchar();
if(k'1'||k'4') continue;//无效的选择直接忽略
fflush(stdin);
switch (k)
{
case '1':
if(count+1 = ROW*COL){printf("报歉,坐位已满!");break;}
printf("输入准考证号:");
scanf("%d",k);
for(a=0; aROW*COL; a++) if(seat[a] == k) break;//遍历
if(aROW*COL)
{
printf("考生%d已经在坐位:%d排%d坐\n",k,a/COL+1,a%COL+1);
break;
}
srand((int)time(NULL));
a = rand()%(ROW*COL);
while(seat[a]!=0) a=(a+1)%(ROW*COL);//搜索到一个空坐位
seat[a] = k;//放上准考证号
printf("安排在坐位:%d排%d坐\n",a/COL+1,a%COL+1);
break;
case '2':
printf("输入准考证号:");
scanf("%d",k);
for(a=0; aROW*COL; a++) if(seat[a] == k) break;//遍历
if(aROW*COL)
{
seat[a]=0;
printf("取消了考生%d的坐位:%d排%d坐\n",k,a/COL+1,a%COL+1);
}else{
printf("考生%d不在本考场\n",k);
}
break;
case '3':
printf("输入坐位几排几坐:");
scanf("%d %d",i,j);
if(i1||iROW||j1||jCOL) printf("没有该坐位:%d排%d坐!");
else
{
k = seat[(i-1)*COL+j-1];
if(k==0) printf("%d排%d坐未安排考生!");
else printf("%d排%d坐考生准考证号:%d",i,j,k);
}
break;
case '4':
printf("输入准考证号:");
scanf("%d",k);
for(a=0; aROW*COL; a++) if(seat[a] == k) break;//遍历
if(aROW*COL)
{
printf("考生%d的坐位:%d排%d坐\n",k,a/COL+1,a%COL+1);
}else{
printf("考生%d不在本考场\n",k);
}
break;
}
fflush(stdin);printf("\n回车继续......");
getchar();
}
}
C语言排座位问题
#include stdio.h
#define N 50
#define CALL 3
int main()
{
int i,*p,callnumber,chu,h[N] = {0};
for (i = 0; i N; i++)
{
*(h+i) = i+1;
}
p = h;
chu = 0;
callnumber = 0;
while(chuN)
{
if (*p != 0)
{
callnumber++;
}
if (callnumber == CALL)
{
chu++;
printf("%5d",*p);
*p = 0;
callnumber = 0;
}
p++;
if (p==h+N)
{
p = h;
}
}
return 0;
}
程序如上,可以满足你要求,在你的程序基础上修改的。你逻辑有问题,如果到达数组尾部要从头输出。
另外
*p=0;
chu++;
printf("%5d",*p);
这里你前面已经赋值为0
输出肯定是0了。
C语言订座问题
根本不需什么数据库,定义结构体,增加座位的编号和布尔类型,如果座位预定了就定布尔类型为false,没有预定就为true,输入预定以后就查看预定的这个位置的布尔类型到底是false还是true。