2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 调试一个c语言程序要经过 c语言程序调试

调试一个c语言程序要经过 c语言程序调试

时间:2020-08-07 20:59:44

相关推荐

调试一个c语言程序要经过 c语言程序调试

该楼层疑似违规已被系统折叠隐藏此楼查看此楼

scanf("%f",&p1->score);

}

p2->next = NULL; /*此句就是根据单向链表的最后一个节点要指向NULL*/

free(p1); /*释放p1。用malloc()、calloc()的变量都要free()*/

p1 = NULL;

}

Delete() //删除节点函数

{ long num;

struct student *p1; /*p1保存当前需要检查的节点的地址*/

struct student *p2; /*p2保存当前检查过的节点的地址*/

printf("please input the num you want to delete");

scanf("%d",&num);

if (head == NULL)

{

printf("\nList is null!\n");

}

/*定位要删除的节点*/

p1 = head;

while (p1->num != num && p1->next != NULL) /*p1指向的节点不是所要查找的,并且它不是最后一个节点,就继续往下找*/

{

p2 = p1; /*保存当前节点的地址*/

p1 = p1->next; /*后移一个节点*/

}

if (num == p1->num)

{

if (p1 == head) /*如果要删除的节点是第一个节点*/

{

head = p1->next; /*头指针指向第一个节点的后一个节点,也就是第二个节点。这样第一个节点就不在链表中,即删除。*/

}

else /*如果是其它节点,则让原来指向当前节点的指针,指向它的下一个节点,完成删除*/

{

p2->next = p1->next;

}

free(p1); /*释放当前节点*/

p1 = NULL;

printf("\ndelete %ld success!\n",num);

n -= 1; /*节点总数减1个*/

}

else /*没有找到*/

{

printf("\n%ld not been found!\n",num);

}

}

void insert() //插入节点函数

{}

void print() //打印所有节点的函数

{

struct student *p;

printf("\nNow , These %d records are:\n",n);

p = head;

if(head != NULL) /*只要不是空链表,就输出链表中所有节点*/

{

printf("head is %o\n", head); /*输出头指针指向的地址*/

do

{

printf("%o %ld %5.1f %o\n", p, p->num, p->score, p->next);

p = p->next; /*移到下一个节点*/

}

while (p != NULL);

}

}

void search()

{}

void menu()

{ printf(" **********学籍管理系统************\n");

printf("\n ******请选择******\n");

printf(" *************|1 |建| 立| 学| 生| 信| 息| 结| 构|*************\n");

printf(" *************|2 |删| 除| 学| 生| 信| 息| **************\n");

printf(" *************|3 |加| 入| 新| 的| 学| 生| 信| 息|*************\n");

printf(" *************|4 |显| 示| 所| 有| 学| 生| 信| 息|*************\n ");

printf("*************|5 |查| 找| 学| 生| 信| 息| **************\n");

printf(" *************|0 |退| 出| 程| 序| *************\n");

}

void main()

{ int choose;

int i=1;

while(i=1)

{

menu();

printf("请输入0-5选择功能");

scanf("%d",&choose);

switch(choose)

{

case'1': Create(); break;

case'2': Delete(); break;

case'3': insert(); break;

case'4': print(); break;

case'5': search(); break;

case'0': i=0; printf("程序结束!!"); break;

default: printf("\n Wrong Selection !(选择错误,重选)\n"); break;

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。