一、delect(p,ID) 这里p是NULL
二、void delect(student*p,int ID) 这里有可以会改变头结点,可是你的函数不能如实反应这种情况,变化后的链表头会找不到了,需要修改
程序已调试好,请验收
/**
.....
请输入第3个学生:
学生的学号:
语文成绩:
数学成绩:
英语成绩:
3
3
3
3
输出学生信息:
学生学号:3语文成绩:3.0数学成绩:3.0英语成绩:3.0总分:9.0加权平均分:3.0
输出学生信息:
学生学号:2语文成绩:2.0数学成绩:2.0英语成绩:2.0总分:6.0加权平均分:2.0
输出学生信息:
学生学号:1语文成绩:1.0数学成绩:1.0英语成绩:1.0总分:3.0加权平均分:1.0
请输入需要删除的学生学号:
3
输出学生信息:
学生学号:2语文成绩:2.0数学成绩:2.0英语成绩:2.0总分:6.0加权平均分:2.0
输出学生信息:
学生学号:1语文成绩:1.0数学成绩:1.0英语成绩:1.0总分:3.0加权平均分:1.0
请按任意键继续. . .
**/
通过一个简单的示例进行讲解(此示例用文本文件进行演示):
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#define FILE_NAME "demo.txt" // 文件名称
int main()
{
FILE* fp = NULL// 文件指针
char* szAppendStr = "Text"
errno_t eResult
// 以附加方式打开可读/写的文件, 如果没有此文件则会进行创建,然后以附加方式打开可读/写的文件
eResult = fopen_s(&fp, FILE_NAME, "a+")
// 打开文件失败
if (eResult != 0)
exit(-1)
// 将追加内容写入文件指针当前的位置
fputs(szAppendStr, fp)
// 最后不要忘了,关闭打开的文件~~~
fclose(fp)
return 0
}
扩展资料
文件的打开和关闭
open()函数的作用是打开文件,其调用格式为: int open(char *filename, int access)该函数表示按access的要求打开名为filename的文件,返回值为文件描述字,其中access有两部分内容: 基本模式和修饰符, 两者用" "("或")方式连接。修饰符可以有多个, 但基本模式只能有一个。
open()函数打开成功, 返回值就是文件描述字的值(非负值), 否则返回-1。 close()函数的作用是关闭由open()函数打开的文件, 其调用格式为: int close(int handle)该函数关闭文件描述字handle相连的文件。
#include"stdio.h"
int main()
{int a[10],b[5],i,j,sum=0
for(i=j=0i<10i++)
{scanf("%d",&a[i])
if(i%2){b[j]=a[i]sum+=b[j++]}
}
printf("数组a:")
for(i=0i<10i++)printf("%d ",a[i])
printf("\n数组b:")
for(i=0i<5i++)printf("%d ",b[i])
printf("\nsum=%d\n",sum)
return 0
}