#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX 1000
/*定义学生成绩信息结构*/
struct stu
{
char id[8]
char name[8]
扩展资料:
short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)
long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)
long long:修饰int,超长整型数据,可省略被修饰的int。(C99标准新增)
signed:修饰整型数据,有符号数据类型。(C89标准新增)
unsigned:修饰整型数据,无符号数据类型。(K&R时期引入)
restrict:用于限定和约束指针,并表明指针是访问一个数据对象的唯一且初始的方式。(C99标准新增)
复杂类型关键字
struct:结构体声明。(K&R时期引入)
union:联合体声明。(K&R时期引入)
enum:枚举声明。(C89标准新增)
typedef:声明类型别名。(K&R时期引入)
sizeof:得到特定类型或特定类型变量的大小。(K&R时期引入)
inline:内联函数用于取代宏定义,会在任何调用它的地方展开。(C99标准新增)
参考资料来源:百度百科-c语言
C语言程序:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#include <stdio.h>
#include <string.h>
typedef struct student
{
char name[20]/* 姓名 */
int code /* 学号 */
int kor, eng, math /* 3门课程的成绩 */
}STUDENT
/* 返回输入数据 */
STUDENT Input()
/* 输出所有输入的数据 */
void Output(STUDENT info[], int cnt)
/* 将输入分数转换为A-F */
char grade(int score)
int main()
{
STUDENT S[10]
int cnt = 0, select
int i, j
int code
while(1)
{
printf("\t学生信息管理系统\n\n")
printf("\t\t1\t添加\n")
printf("\t\t2\t删除\n")
printf("\t\t3\t查询\n")
printf("\t\t0\t结束\n")
printf("\t\t您的选择[0-3]:")
scanf("%d", &select)
if(select <0 || select >3)
continue
if(select == 0)
{
printf("退出系统!\n")
break
}
if(select == 1) /* 添加 */
{
S[cnt++] = Input()
}
else if(select == 2) /* 删除 */
{
printf("\t\t待删除学生的学号:")
scanf("%d", &code)
for(i=0i<cnti++)
if(S[i].code == code)
break
if(i >= cnt)
{
printf("学号不存在,删除失败!\n")
}
else {
for(j=i+1j<cntj++)
{
strcpy(S[j-1].name, S[j].name)
S[j-1].code = S[j].code
S[j-1].kor = S[j].kor
S[j-1].eng = S[j].eng
S[j-1].math = S[j].math
}
cnt--
printf("删除成功!\n")
}
}
else/* 查询 */
{
printf("\t\t待查找学生的学号:")
scanf("%d", &code)
for(i=0i<cnti++)
if(S[i].code == code)
break
if(i >= cnt)
{
printf("学号不存在,查找失败!\n")
}
else
{
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)