c语言imath是什么意思,求大神帮忙告诉我这个程序的 程序及各个模块说明;

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

//只有一个

if

(NULL == g_stHead->next)

{

//只有一个且为所要删除的节点

if (!(strcmp(chStr, g_stHead->chName)))

{

free(g_stHead);

g_stHead

= NULL;

printf("\n删除成功\n\n\r");

return

OK;

}

printf("未找到符合条件的节点\n\r");

return ERROR;

}

struct

STU *stTemp = NULL;

struct

STU *stPre = NULL;

stTemp

= g_stHead;

stPre

= stTemp;

while

((strcmp(chStr, stTemp->chName)) && (NULL != stTemp->next))

{

stPre = stTemp ;

stTemp = stTemp->next ;

}

//多个节点且第一个为所要删除的节点

if

(g_stHead == stTemp)

{

stTemp = g_stHead->next ;

free(g_stHead);

g_stHead = stTemp ;

printf("\n删除成功\n\n\r");

return OK;

}

if

(NULL == stTemp->next)

{

//多个节点且所要删除的节点是尾节点

//printf("%s\n",

stTemp->chName);

//printf("%s\n", chStr);

if (!(strcmp(chStr, stTemp->chName)))

{

stPre->next

= NULL ;

free(stTemp);

stTemp

= NULL;

printf("\n删除成功\n\n\r");

return

OK;

}

printf("未找到符合条件的节点\n\r");

return ERROR;

}

//多个节点且所要删除的节点是中间节点

stPre->next

= stTemp->next;

free(stTemp);

stTemp

= NULL;

printf("\n删除成功\n\n\r");

return

ERROR;

}

void Insert(void)

{

struct

STU *stNode = NULL;

stNode

= (struct STU *)malloc(LEN);

if

(NULL == stNode)

{

exit(-1) ;

}

memset(stNode,

0, sizeof(LEN));

printf("学生学号:");

scanf("%ld",&stNode->lNumber);

printf("学生姓名:");

scanf("%s",stNode->chName);

printf("语文成绩:");

scanf("%d",&stNode->iChinese);

printf("数学成绩:");

scanf("%d",&stNode->iMath);

//g_stHead

= p1;

struct

STU *stTemp = NULL;

//链表为空

if

(NULL == g_stHead)

{

g_stHead = (struct STU

*)malloc(sizeof(LEN));

if (NULL == g_stHead)

{

exit(-1)

;

}

memset(g_stHead, 0, sizeof(LEN));

strcpy(g_stHead->chName,

stNode->chName);

g_stHead->lNumber =

stNode->lNumber;

g_stHead->iChinese =

stNode->iChinese;

g_stHead->iMath = stNode->iMath;

}

//只有一个节点

else

{

if (NULL == g_stHead->next)

{

stTemp

= (struct STU *)malloc(sizeof(LEN));

if

(NULL == stTemp)

{

exit(-1);

}

memset(stTemp,

0, sizeof(LEN));

strcpy(stTemp->chName,

stNode->chName);

stTemp->lNumber

= stNode->lNumber;

stTemp->iChinese

= stNode->iChinese;

stTemp->iMath

= stNode->iMath;

g_stHead->next

= stTemp;

}

//多个结点

else

{

stTemp

= g_stHead;

while

(NULL != stTemp->next)

{

stTemp = stTemp->next;

}

stTemp->next

= (struct STU *)malloc(sizeof(LEN));

if

(NULL == stTemp->next)

{

exit(-1);

}

memset(stTemp->next,

0, sizeof(LEN));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值