2分,共60分)下列各题A、B、C、D四个选项中,只有一个选项是正确的。请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
1微型计算机的运算器、控制器及内存储器组合在一起,称之为()(本题分值:1分)
D
AALU
BCPU
CMPU
D主机
2下列存储器中,存取速度最快的是()(本题分值:1分)
D
A软盘
B硬盘
C光盘
D内存
3系统软件中最重要的是()(本题分值:1分)
A
A *** 作系统
B语言处理程序
C工具软件
D数据库管理系统
4、CPU处理的数据基本单位为字,一个字的字长()(本题分值:1分)
D
A为8个二进制位
B为16个二进制位
C为32个二进制位
D与CPU芯片的型号有关
5打印当前屏幕内容应使用的控制键是()(本题分值:1分)
D
AScroll-Lock
BNum-Lock
CPgDn
DPrtSc(Print Screen)
6能将高级语言源程序转换成目标程序的是()(本题分值:1分)
C
A调试程序
B解释程序
C编译程序
D编辑程序
7二进制数111011111转换成十进制数是()(本题分值:1分)
B
A119375
B11975
C119125
D1193
8十六进制数FF1转换成十进制数是()(本题分值:1分)
A
A2550625
B255125
C1270625
D127125
9中国国家计算机网络设施是()(本题分值:1分)
A
ANCFC
BCERNET
CISDN
DInternet
10控制键^C的功能为()(本题分值:1分)
A
A终止当前 *** 作
B系统复位
C暂停标准输出设备的输出
D结束命令行
11COMMANDCOM为命令处理程序,DOS系统启动后,它()(本题分值:1分)
B
A驻留在外存,需要时装入内存
B常驻内存,包含所有内部命令
C不能处理外部命令
D不能处理后缀为EXE的可执行文件
12为了将所有扩展名为PAS的文件改成扩展名为P,应使用命令()(本题分值:1分)
C
AREN PAS AS
BREN PAS P
CREN PAS P
DREN PAS P
13设当前盘中文件XYC的路径为\A\B\XU,当前目录为\A\B。为了查看文件XYC的内容,应使用命令()(本题分值:1分)
A
ATYPE XU\XYC
BTYPE \XU\XYC
CDIR XU\XYC
DDIR \A\B\XU\XYC
14要将提示符改成当前盘当前目录后加一个大于号“>”,应使用命令()(本题分值:1分)
B
APROMPT
BPROMPT $ p $ g
CPROMPT $ $
DPROMPT C\>
15在多媒体计算机系统中,CD-ROM属于()(本题分值:1分)
D
A感觉媒体
B表示媒体
C表现媒体
D存储媒体
16设当前盘为C盘,将A盘根目录下的文件目录信息存放到当前盘当前目录下的文件AB中,应使用命令()(本题分值:1分)
C
ATYPE A:\>AB
BDIR >AB
CDIR A:\>AB
DDIR \>AB
17在位运算中, *** 作数每右移一位,其结果相当于()(本题分值:1分)
B
A *** 作数乘以2
B *** 作数除以2
C *** 作数除以16
D *** 作数乘以16
18在当前盘当前目录下有一个文件ABAT,其内容为
CD \
MD \XYZ\AB\B\C
CD XYZ\AB\B
在正确执行上述文件后,接着执行下列命令时,不会发生错误的是()(本题分值:1分)
C
AMD C
BRD \XYZ
CRD C
DRD B
19下列命令组中两个DOS命令互相等价的是()(本题分值:1分)
D
ATYPE ABTXT与DIR ABTXT
BDISKCOMP A:B:与COMP A: B:
CTYPE ABTXT>>XYTXT与COPY ABTXT XYTXT
DTYPE ABTXT>XYTXT与COPY ABTXT XYTXT
20设A盘为启动盘,其目录结构为
根目录
DOS子目录 COMANDCOM
USER子目录 AUTOEXECBAT
其文件AUTOEXECBAT的内容如下:
MD \XYZ
CD \DOS\USER
则由A盘启动成功后,A盘的当前目录是()(本题分值:2分)
C
A\DOS\USER
B\XYZ
C根目录
D\DOS
21C语言提供的合法关键字是()(本题分值:1分)
C
Aswitch
Bcher
Ccase
Ddefault
22在C语言中,合法的字符常量是()(本题分值:1分)
B
A′\084′
B′\x43′
C′ab′
D′\0′
23若已定义x和y为double类型,则表达式: x=1,y=x+3/2的值是()(本题分值:1分)
C
A1
B2
C20
D25
24合法的数组定义是()(本题分值:1分)
D
Aint a[]=〃string〃;
Bint a[5]=;
Cchar a=〃string〃;
Dchar a[]=;
25设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是()(本题分值:1分)
A
A10<a<15
Ba==11||a==12||a==13||a==14
Ca>10&&a<15
D!(a<=10)&&!(a>=15)
26若t为double类型,表达式t=1,t+5,t++的值是()(本题分值:1分)
C
A1
B60
C20
D10
27若有定义和语句:
char s[10];s=〃abcd〃;printf(〃%s\n〃,s);
则结果是(以下μ代表空格)()(本题分值:1分)
D
A输出abcd
B输出a
C输出abcdμμμμμ
D编译不通过
28若有定义和语句:
int pp,p,a=10,b=20;
pp=&p;p=&a;p=&b;printf(〃%d,%d\n〃,p,pp);
则输出结果是()(本题分值:1分)
D
A10,10
B10,20
C20,10
D20,20
29若有以下定义和语句:
int u=010,v=0x10,w=10;
printf(〃%d,%d,%d\n〃,u,v,w);
则输出结果是()(本题分值:1分)
A
A8,16,10
B10,10,10
C8,8,10
D8,10,10
30若有以下定义和语句:
char c1=′b′,c2=′e′;
printf(〃%d,%c\n〃,c2-c1,c2-′a′+′A′);
则输出结果是()(本题分值:1分)
B
A2,M
B3,E
C2,E
D输出项与对应的格式控制不一致,输出结果不确定
31若有定义:int a[3][4];,()不能表示数组元素a[1][1]。(本题分值:1分)
D
A(a[1]+1)
B(&a[1][1])
C((a+1))[1]
D(a+5)
32若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是()(本题分值:1分)
for(i=5;i>0;i--)
for(j=0;j<4;j++)
A
A20
B24
C25
D30
33若有以下定义和语句:
char s1=〃12345〃,s2=〃1234〃;
printf(〃%d\n〃,strlen(strcpy(s1,s2)));
则输出结果是()(本题分值:1分)
A
A4
B5
C9
D10
34若有以下定义和语句:
int a[10]=,p=a;
则不能表示a数组元素的表达式是()(本题分值:1分)
B
Ap
Ba[10]
Ca
Da[p-a]
35下面程序的输出结果是()(本题分值:2分)
C
Ak=3 a=2 b=3
Bk=3 a=3 b=2
Ck=2 a=3 b=2
Dk=2 a=2 b=3
36下面程序的输出结果是()(本题分值:1分)
main()
{unsigned a=32768;
printf(〃a=%d\n〃,a);}
C
Aa=32768
Ba=32767
Ca=-32768
Da=-1
37执行下面语句后的输出结果为()(本题分值:1分)
int i=-1;
if(i<=0) printf(〃\n〃);
else printf(〃%%%%\n〃)
D
A
B%%%%
C%%%%c
D有语法错误,不能正确执行
38对于条件表达式(M)(a++):(a--),其中的表达式M等价于()(本题分值:1分)
C
AM==0
BM==1
CM!=0
DM!=1
39下述程序段的输出结果是()(本题分值:1分)
int x=10;
int7nbspy=x++;
printf(〃%d,%d〃,(x++,y),y++);
A
A11,10
B11,11
C10,10
D10,11
40若有以下的定义:
int a[]=,p=a
则值为3的表达式是()(本题分值:1分)
A
Ap+=2,(p++)
Bp+=2,++p
Cp+=3,p++
Dp+=2,++p
41假定所有变量均已正确说明,下列是程序段运行后x的值是()(本题分值:2分)
a=b=c=0;x=35;
if(!a) x--;
else if(b);
if(c) x=3;
else x=4;
B
A34
B4
C35
D3
42在以下一组运算中,优先级最高的运算符是()(本题分值:2分)
C
A<=
B=
C%
D&&
43若有以下定义和语句:
int w[2][3],(pw)[3];pw=w;
则对w数组元素的非法引用是()(本题分值:2分)
A
A(w[0]+2)
B(pw+1)[2]
Cpw[0][0]
D(pw[1]+2)
44若有以下程序片段: char str[ ]=〃ab\n\012\\\\〃; printf(〃%d〃,strlen(str));
上面程序片段的输出结果是()(本题分值:2分)
C
A3
B4
C6
D12
45函数调用:strcat(strcpy(str1,str2),str3)的功能是()(本题分值:2分)
C
A将串str1复制到串str2中后再连接到串str3之后
B将串str1连接到串str2之后再复制到串str3之后
C将串str2复制到串str1中后再将串str3连接到串str1之后
D将串str2连接到串str1之后再将串str1复制到串str3中
46以下对C语言函数的有关描述中,正确的是()(本题分值:2分)
A
A在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
BC函数既可以嵌套定义又可以递归调用
C函数必须有返回值,否则不能使用函数
DC程序中有调用关系的所有函数必须放在同一个源程序文件中
47以下叙述中不正确的是()(本题分值:2分)
C
A在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值
B在C中,在调用函数时,实参和对应形参在类型上只需赋值兼容
C在C中,外部变量的隐含类别是自动存储类别
D在C中,函数形参可以说明为register变量
48设有以下定义或语句,则输出的结果是(用small模式编译,指针变量占2个字节)()(本题分值:2分)
struct date
{long cat;
struct date next;
double dog;
}too;
printf(〃%d〃,sizeof(too));
D
A20
B16
C14
D12
49设有定义:struct sk
data,p;
若有p=&data;,则对data中的a域的正确引用是()(本题分值:2分)
B
A(p)dataa
B(p)a
Cp->dataa
Dpdataa
50以下对枚举类型名的定义中正确的是()(本题分值:2分)
B
Aenum a=;
Benum a;
Cenum a=;
Denum a;
二、填空题(每空2分,共40分)请将答案分别写在答题卡中序号至的横线上,答在试卷上不得分。
1、与十进制数101等值的二进制数为。(本题分值:2分)
1100101
2、DOS命令分为内部命令与外部命令,XCOPY命令属于命令。(本题分值:2分)
外部
3、设当前盘为A盘,当前系统提示符为“>”,在不改变当前盘的情况下,显示C盘的当前目录路径,应使用命令。 (本题分值:2分)
CD C:
4、自动批处理文件名必须是。(本题分值:2分)
AUTOEXECBAT
5、设在当前盘当前目录下有两个文件WTXT与PTXT,现要将文件PTXT连接到文件WTXT的后面,若使用COPY命令,则完整的命令为。(本题分值:2分)
COPY WTXT+PTXT WTXT
6、表示条件10<x<100或x<0的C语言表达式是。(本题分值:2分)
(x>10&& x<100)||x<0
或(10<x&&x<100)||x<0
或x<0 ||(x>10&&x<100)
或0>x ||(10<x&&x<100)
7、以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最笾怠G胩羁铡br> #define N 3
#define M 4
void LineMax(int x[N][M])
{ int i,j,p;
for(i=0;i<N;i++)
{p=0;
for(j=1;j<M;j++)
if(x[i][p]<x[i][j]) ;
printf(〃The max value in line is %d\n〃,);
}
}
main()
;
;
}
(本题分值:6分)
p=j
x[i][p]
LineMax(x)
8、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空。
main()
{float x[1000],sum=00,ave,a;
int n=0,i;
printf(〃Enter mark:\n〃);scanf(〃%f〃,&a);
while(a>= 00 && n<1000)
{sum+=;x[n]=;
n++; scanf(〃%f〃,&a);
}
ave= ;
printf(〃Output:\n〃);
printf(〃ave=%f\n〃,ave);
for(i=0;i<n;i++)
if() printf(〃%f\n〃,x[i]);
}
(本题分值:8分)
a
a
sum/n或sum/(float)n或sum/(double)n
x[i]<ave或!(x[i]>=ave)或ave>x[i]
9、执行以下程序,输入-10的结果是,输入5的结果是,输入10的结果是,输入30的结果是。
(本题分值:8分)
0
5
10
5
10、以下程序的功能是。
main()
;
int sum=0,i;
for(i=0;i<10;i++)
if(num[i]>0)
sum=num[i]+sum;
printf(〃sum=%6d〃,sum);
}
(本题分值:2分)
计算数组num中大于零的数据之和
11、以下程序可以把从键盘上输入十进制数(long型)以二到十六进制数的形式输出,请填空。
#include
main()
{char
b[16]=;
int c[64],d,i=0,base;
long n;
printf(〃Enter a number:\n〃); scanf(〃%1d〃,&n);
printf(〃Enter new base:\n〃); scanf(〃%1d〃,&base);
do
{c[i]=;
i++;
n=n/base;
}while(n!=0);
printf(〃The result is:\n〃);
for(--i;i>=0;--i)
{d=c[i];
printf(〃%c〃,b);
}
}
(本题分值:4分)
n%base
[d]
A
0
2
C
同学,你是在问题,还是在对题,还是在??
你具体不懂什么呢。
这些都是简单的循环类,条件类。
比如说switch
中的break对switch有效,遇到break,则就近的switch跳出。
continue只对循环有效,而对switch无效。
还有if
else
是选择结构的,即选择了if,则执行if后的语句,else部分的不看。
还比如说++a和a++
前者先自增,后使用,后者先使用,后自增。
再比如说变量的使用范围,即从定义处往下就是他的作用域。
有静态的,具备继承性 static
有扩展的,当你在别的函数中也想使用下面定义的变量时,就可以用extern
还有局部的,在一个函数中的a,与另一个函数中的a,此a非彼a
当变量定义在符合语句里时,他的作用域仅仅局限于此复合语句。。其他同名变量,并非此变量。
请问还有什么不懂的么。
#include
<fstream>
#include
<stringh>
#include
<iostream>
#include
<conioh>//用getch();
using
namespace
std;
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Student类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
class
Student
{
public:
char
name[20];
char
Class[20];
char
Id[20];
int
Cnum;
//C课程得分
int
Mnum;
//数学课程得分
int
Enum;
//英语课程得分
int
Gnum;
//体育
int
sum;
//总分
int
ave;
//平均分
Student
Next;
void
Input()
{
cout<<"\t\t请输入学生的姓名:";
cin>>name;
cout<<"\t\t请输入学生的班级:";
cin>>Class;
cout<<"\t\t请输入学生的学号:";
cin>>Id;
cout<<"\t\t请输入C++的成绩:";
cin>>Cnum;
cout<<"\t\t请输入数学课程的成绩:";
cin>>Mnum;
cout<<"\t\t请输入英语课程的成绩:";
cin>>Enum;
cout<<"\t\t请输入日语的成绩:";
cin>>Gnum;
sum=Cnum+Mnum+Enum+Gnum;
ave=(Cnum+Mnum+Enum+Gnum)/4;
}
void
ReadFile(istream
&
in)
{
in>>name>>Class>>Id>>Cnum>>Mnum>>Enum>>Gnum>>ave>>sum;
}
void
Show()
{
cout<<"姓名:"<<name<<endl<<"班级:"<<Class<<endl<<"学号:"<<Id<<endl<<"C++:"<<Cnum<<endl
<<"数学:"<<Mnum<<endl<<"外语:"<<Enum<<endl<<"日语:"<<Gnum<<endl<<"平均成绩:"<<ave<<endl<<"总成绩:"<<sum<<endl<<endl<<endl;
}
};
//﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
class
Studentmassage
{
public:
Studentmassage();
~Studentmassage();
void
ShowMenu();
void
Find();
void
Save();
void
ModifyItem();
void
RemoveItem();
void
Swap(Student
,Student
);
void
Sort();
int
ListCount();
void
Display()
{
for(Student
p=Head->Next;p!=End;p=p->Next)
p->Show();
cout<<"输入任意字符!继续……";
getch();
}
void
AddItem()
{
End->Input();
End->Next=new
Student;
End=End->Next;
cout<<"添加成功!"<<endl;
cout<<"输入任意字符!继续……";
getch();
}
private:
Student
Head,
End;
ifstream
in;
ofstream
out;
Student
FindItem(char
name)
{
for(Student
p=Head;p->Next!=End;p=p->Next)
if(!strcmp(p->Next->name,name))return
p;
return
NULL;
}
Student
FindID(char
Id)
{
for(Student
p=Head;p->Next!=End;p=p->Next)
if(!strcmp(p->Next->Id,Id))return
p;
return
NULL;
}
Student
FindCLASS(char
Class)
{
for(Student
p=Head;p->Next!=End;p=p->Next)
if(!strcmp(p->Next->Class,Class))return
p;
return
NULL;
}
}Grade;
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌构造函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Studentmassage::Studentmassage()
{
Head=new
Student;
Head->Next=new
Student;
End=Head->Next;
inopen("sorttxt");
if(!in)
cout<<"这是一个新系统,无学生信息。请先输入。"<<endl;
else
{
while(!ineof())
{
End->ReadFile(in);
if(End->name[0]=='\0')break;
End->Next=new
Student;
End=End->Next;
}
inclose();
cout<<"\t\t读取学生信息成功!"<<endl;
}
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌析构函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Studentmassage::~Studentmassage()
{
Save();
for(Student
temp;Head->Next!=End;)
{
temp=Head->Next;
Head->Next=Head->Next->Next;
delete
temp;
}
delete
Head,End;
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌菜单﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::ShowMenu()
{
cout<<"〓〓〓〓〓〓〓〓〓〓
☆
学
生
成
绩
管
理
系
统
☆
〓〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓★★★★★
★★★★★★★
★★★★★〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
1增加学生成绩
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
2显示学生成绩
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
3排序统计成绩
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
4查找学生成绩
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
5删除学生成绩
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
6修改学生信息
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"〓〓〓〓〓〓〓〓〓★
☆
0安全退出系统
☆
★〓〓〓〓〓〓〓〓〓"<<endl;
cout<<"\n\t\t\n\t\t请选择:";
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌查找函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::Find()
{
char
name[20]
,Id[10],Class[20];
int
x;
Student
p=NULL;
cout<<"\n\t\t\n";
cout<<"\t\t※
1按学生的姓名查找\n\t\t※
2按学生学号查找\n\t\t※
3按学生班级查找";
cout<<"\n\t\t\n请选择:";
cin>>x;
switch(x)
{
case
1:{cout<<"\t\t请输入要查找的学生的姓名:";cin>>name;
if(p=FindItem(name))
{
p->Next->Show();
cout<<"输入任意字符!继续……";
getch();
}
else
{
cout<<"\t\t没有找到该姓名的学生!"<<'\n'<<endl;
cout<<"输入任意字符!继续……";
getch();
}
}break;
case
2:
{
cout<<"\t\t请输入要查找的学生的学号:";cin>>Id;
if(p=FindID(Id))
{
p->Next->Show();
cout<<"输入任意字符!继续……";
getch();
}
else
{
cout<<"\t\t没有找到该学号的学生!"<<'\n'<<endl;
cout<<"输入任意字符!继续……";
getch();
}
}break;
case
3:{cout<<"\t\t请输入要查找的学生的班级:";cin>>Class;
if(p=FindCLASS(Class))
{
p->Next->Show();
cout<<"输入任意字符!继续……";
getch();
}
else
{
cout<<"\t\t没有找到该班级的学生!"<<'\n'<<endl;
cout<<"输入任意字符!继续……";
getch();
}
}break;
}
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌修改信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::ModifyItem()
//修改信息
{
char
ID[20];
Student
p=NULL;
cout<<"\t\t请输入要修改的人的学号:";cin>>ID;
if(p=FindID(ID))
{
cout<<"\t\t已找到学生的信息,请输入新的信息!"<<endl;
p->Next->Input();
cout<<"修改成功!"<<endl;
cout<<"输入任意字符!继续……";
getch();
}
else
{
cout<<"\t\t没有找到!"<<endl;
cout<<"输入任意字符!继续……";
getch();
}
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌删除信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::RemoveItem()
//
删除信息
{
char
ID[20];
Student
p=NULL,temp=NULL;
cout<<"\t\t请输入要删除的学生的学号:";cin>>ID;
if(p=FindID(ID))
{
temp=p->Next;
p->Next=p->Next->Next;
delete
temp;
cout<<"\t\t删除成功!"<<endl;
cout<<"输入任意字符!继续……";
getch();
}
else
{
cout<<"\t\t没有找到!"<<endl;
cout<<"输入任意字符!继续……";
getch();
}
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::Swap(Student
p1,
Student
p2)
{
Student
temp=new
Student;
strcpy(temp->name,p1->name);
strcpy(temp->Id,p1->Id);
temp->Cnum=p1->Cnum;
temp->Mnum=p1->Mnum;
temp->Enum=p1->Enum;
temp->sum=p1->sum;
strcpy(p1->name,p2->name);
strcpy(p1->Id,p2->Id);
p1->Cnum=p2->Cnum;
p1->Mnum=p2->Mnum;
p1->Enum=p2->Enum;
p1->sum=p2->sum;
strcpy(p2->name,temp->name);
strcpy(p2->Id,temp->Id);
p2->Cnum=temp->Cnum;
p2->Mnum=temp->Mnum;
p2->Enum=temp->Enum;
p2->sum=temp->sum;
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
int
Studentmassage::ListCount()//统计当前的记录总数
{
if(!
Head)
return
0;
int
n=0;
for(Student
p=Head->Next;p!=End;p=p->Next)
{
n++;
}
return
n;
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::Sort()//对当前学生进行排序
{
cout
<<"Sorting"<<endl;
Student
p=NULL,p1=NULL,k=NULL;
int
n=Studentmassage::ListCount();
if(n<2)
return;
for(p=Head->Next;p!=End;p=p->Next)
for(k=p->Next;k!=End;k=k->Next)
{
if(p->sum>k->sum)
{
Studentmassage::Swap(p,k);
}
}
cout
<<"排序完成!"<<endl;
getch();
return;
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌保存函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
void
Studentmassage::Save()
{
outopen("sorttxt");
for(Student
p=Head->Next;p!=End;p=p->Next)
out<<p->name<<"\t"<<p->Class<<"\t"<<p->Id<<"\t"
<<p->Cnum<<"\t"<<p->Mnum<<"\t"<<p->Enum<<"\t"<<p->Gnum<<"\t"<<p->ave<<"\t"<<p->sum<<'\n';
outclose();
}
void
code()
//密码
{
char
s1[20]="123",s2[20];
cout<<"请输入密码:";
while(cin>>s2)
{
if(!strcmp(s1,s2))
{
GradeModifyItem();break;
}
else
cout<<"你输入的密码不正确,请重新输入:";
}
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
int
main()
{
int
x,i=0;
bool
quit=false;
cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§"<<endl;
for(i=0;i<3;i++)
cout<<"\t\t◎\t\t\t\t\t\t
◎"<<endl;
cout<<"\t\t◎★★★★
欢迎进入学生成绩管理系统
★★★★◎"<<endl;
for(i=0;i<3;i++)
cout<<"\t\t◎\t\t\t\t\t\t
◎"<<endl;
cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§\n"<<endl;;
cout<<"请按任意键开始……";
getch();
while(!quit)
{
system("cls");
GradeShowMenu();
cin>>x;
switch(x)
{
case
0:cout<<"★★★★感谢您的使用★★★★"<<endl;quit=true;break;
case
1:GradeAddItem();break;
case
2:GradeDisplay();break;
case
3:GradeSort();break;
case
4:GradeFind();break;
case
5:GradeRemoveItem();break;
case
6:code();break;
}
}
return
0;
}
我稍微改了下,应该可以用~
额~~你们一定要C编吗~C++不可以嘛?
以上就是关于求C语言程序设计的答案全部的内容,包括:求C语言程序设计的答案、C语言程序设计 答案、求c语言程序设计答案等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)