1.我写了一个程序;
2.功能可以实现;
3.有不足,希望你可以改进;
4.我的运行结果如图片
5.源码如下:
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
typedef struct _student
{
int dormNum; //宿舍号
int num; //学号
}Student;
void printS(Student *p)
{
printf("宿舍号 学号\n");
while(p->num)
{
printf("%d\t",p->dormNum);
printf("%d\n",p->num);
p++;
}
}
int main()
{
int i = 0;
int j = 0;
int flag =0;
Student arrray[7] = {0};
for(i = 1101, j = 170901; i<=1106; i++, j++)
{
arrray[i - 1101].dormNum = i;
arrray[i - 1101].num = j;
}
arrray[i - 1101].dormNum = 0;
arrray[i - 1101].num = 0;
printf("原来的分配表如下:\n");
printS(arrray);
for(i = 0; i<7; i++)
{
if(flag == 1)
{
arrray[i].num = arrray[i - 1].num +1;
}
if(arrray[i].num == 170903)
{
arrray[i].num = 170903 +1;
flag = 1;
}
if(i == 5)
{
arrray[i].num = 0;
}
}
printf("新的分配表如下:\n");
printS(arrray);
system("pause");
return 0;
}