c语言程序设计答案,c语言程序设计答案解析

本文目录一览:

求c语言程序设计答案

#include

fstream

#include

string.h

#include

iostream

#include

conio.h//用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请输入学生的姓名:”;

cinname;

cout”\t\t请输入学生的班级:”;

cinClass;

cout”\t\t请输入学生的学号:”;

cinId;

cout”\t\t请输入C++的成绩:”;

cinCnum;

cout”\t\t请输入数学课程的成绩:”;

cinMnum;

cout”\t\t请输入英语课程的成绩:”;

cinEnum;

cout”\t\t请输入日语的成绩:”;

cinGnum;

sum=Cnum+Mnum+Enum+Gnum;

ave=(Cnum+Mnum+Enum+Gnum)/4;

}

void

ReadFile(istream

in)

{

innameClassIdCnumMnumEnumGnumavesum;

}

void

Show()

{

cout”姓名:”nameendl”班级:”Classendl”学号:”Idendl”C++:”Cnumendl

“数学:”Mnumendl”外语:”Enumendl”日语:”Gnumendl”平均成绩:”aveendl”总成绩:”sumendlendlendl;

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌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;

in.open(“sort.txt”);

if(!in)

cout”这是一个新系统,无学生信息。请先输入。”endl;

else

{

while(!in.eof())

{

End-ReadFile(in);

if(End-name[0]==’\0′)break;

End-Next=new

Student;

End=End-Next;

}

in.close();

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请选择:”;

cinx;

switch(x)

{

case

1:{cout”\t\t请输入要查找的学生的姓名:”;cinname;

if(p=FindItem(name))

{

p-Next-Show();

cout”输入任意字符!继续……”;

getch();

}

else

{

cout”\t\t没有找到该姓名的学生!”‘\n’endl;

cout”输入任意字符!继续……”;

getch();

}

}break;

case

2:

{

cout”\t\t请输入要查找的学生的学号:”;cinId;

if(p=FindID(Id))

{

p-Next-Show();

cout”输入任意字符!继续……”;

getch();

}

else

{

cout”\t\t没有找到该学号的学生!”‘\n’endl;

cout”输入任意字符!继续……”;

getch();

}

}break;

case

3:{cout”\t\t请输入要查找的学生的班级:”;cinClass;

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请输入要修改的人的学号:”;cinID;

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请输入要删除的学生的学号:”;cinID;

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(n2)

return;

for(p=Head-Next;p!=End;p=p-Next)

for(k=p-Next;k!=End;k=k-Next)

{

if(p-sumk-sum)

{

Studentmassage::Swap(p,k);

}

}

cout

“排序完成!”endl;

getch();

return;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌保存函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void

Studentmassage::Save()

{

out.open(“sort.txt”);

for(Student

*p=Head-Next;p!=End;p=p-Next)

outp-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’;

out.close();

}

void

code()

//密码

{

char

s1[20]=”123″,s2[20];

cout”请输入密码:”;

while(cins2)

{

if(!strcmp(s1,s2))

{

Grade.ModifyItem();break;

}

else

cout”你输入的密码不正确,请重新输入:”;

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int

main()

{

int

x,i=0;

bool

quit=false;

cout”\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§”endl;

for(i=0;i3;i++)

cout”\t\t◎\t\t\t\t\t\t

◎”endl;

cout”\t\t◎★★★★【

欢迎进入学生成绩管理系统

】★★★★◎”endl;

for(i=0;i3;i++)

cout”\t\t◎\t\t\t\t\t\t

◎”endl;

cout”\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§\n”endl;;

cout”请按任意键开始……”;

getch();

while(!quit)

{

system(“cls”);

Grade.ShowMenu();

cinx;

switch(x)

{

case

0:cout”★★★★感谢您的使用★★★★”endl;quit=true;break;

case

1:Grade.AddItem();break;

case

2:Grade.Display();break;

case

3:Grade.Sort();break;

case

4:Grade.Find();break;

case

5:Grade.RemoveItem();break;

case

6:code();break;

}

}

return

0;

}

我稍微改了下,应该可以用~

额~~你们一定要C编吗~C++不可以嘛?

C语言程序设计试题 求标准答案 都是多选

1、答案:A

(单引号括起来的都是字符,而且一对单引号最多对应一个字符,\反斜杠是转义字符的开始,\72是ASCII码对应的字母H。也就是把H这个字母存到了变量char a中。就一个字符H。)

2、ACDE

解析:

int a=3,b=4,c=5;,

A、ab

B、a<=b

C、(a||b)>c

D、a<=(b||c)

E、!((a<b)!c||b)

优先级由大到小:() ! ||

A选项,34错误,逻辑值0。

B选项,3=4正确,逻辑值1。

C选项,(3||4)5,(3||4)”或”逻辑运算符两边只要有一个非0的整个值就是1,15错,逻辑值0。

D选项,3=(4||5)错误,逻辑值0。

E选项,!((34)!5||4),先(34)逻辑值1,!5逻辑值0,10是0,0||4是1,!1是0,所以逻辑值0。

3、AC。

解析:A可以,B答案b不能被赋值(自左向右,计算||左侧就已经是1了右边就不用再计算了整个表达式无论右边如何整个逻辑值必定是1,计算机也就不会计算右边了)C可以(因为两边都必须计算才能得出最后的逻辑值答案),D不可以a不能被赋值(左边就一个a,构不成赋值,可能存放一个随机值,右边可以被赋值)。

4、ABCD。

外部函数几乎可以被所有函数调用。只要开头#include” “引入。

c语言程序设计(何钦铭 颜晖 第三版)课后习题答案

习  题  1

1.1  填空题

1.函数

2.主函数main();主函数main()

3.主函数main()

4.函数首部;函数体

5.{;}

6.顺序结构;选择结构;循环结构

7..c;.obj;.exe

1.2  思考题

1.答:结构化程序设计是指,为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。顺序结构,选择结构,循环结构

2.答:算法是对具体问题求解步骤的一

种描述。计算机算法的表达工具通常采用以下几种方法:①用自然语言表示算法;②用流程图表示算法;③用伪代码表示算法;④用程序设计语言表示算法。

3.略

4.略

5.略

1.3  编程题

1.答:

#include “stdio.h”

main()

{  float a=10, b=20, h=5, s;

s=(a+b)*h/2;

printf(“s=%f ” , s );

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/180005.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-22 05:09
下一篇 2024-11-22 05:09

相关推荐

  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • 学堂云Python语言程序设计答案

    学堂云Python语言程序设计是一门重要的计算机专业课程。它涵盖了Python语言及其应用,包括基础语法、函数、文件处理、数据结构、图形界面和网络编程等内容。在学习中,我们经常会需…

    编程 2025-04-29
  • 南京邮电大学Python慕课答案

    本文将详细阐述南京邮电大学Python慕课答案,为大家提供学习Python课程的参考。 一、应用范围 Python是一种高级通用编程语言,应用范围广泛,包括Web开发、数据分析与科…

    编程 2025-04-28
  • 大学化学科学出版社教材答案

    本文将从以下几个方面对大学化学科学出版社教材答案进行详细阐述,帮助您更好地应对学习中的问题: 一、获取教材答案的渠道 学习过程中,有时候会遇到难以解答的问题,这时候就需要查看教材答…

    编程 2025-04-28
  • Python初探答案第七关——解题指南

    Python初探答案第七关是一道典型的Python编程题目,涉及字符串的判断和操作。下面我们将从多个方面详细阐述这道题目的解题方法。 一、题目分析 首先,我们需要仔细研究题目要求以…

    编程 2025-04-28
  • 计算机二级Python语言程序设计难吗?

    计算机二级Python语言程序设计并不难,只需要掌握好基础知识,多练习,多思考,就能轻松掌握。 一、Python基础知识 Python语言相对于其他编程语言来说,语法简介明了,易于…

    编程 2025-04-28
  • Python语言程序设计教程PDF赵璐百度网盘介绍

    Python语言程序设计教程PDF赵璐百度网盘是一本介绍Python语言编程的入门教材,本文将从以下几个方面对其进行详细阐述。 一、Python语言的特点 Python语言属于解释…

    编程 2025-04-28
  • 小甲鱼Python课后作业及答案百度云

    小甲鱼课程是一门 Python 开发的视频课程,自 2008 年以来一直广受欢迎。本文主要介绍小甲鱼 Python 课后作业及答案所在的百度云地址。以下是详细内容: 一、百度云地址…

    编程 2025-04-27
  • Python第二版课后答案用法介绍

    本篇文章主要从以下几个方面对Python第二版课后答案做详细的阐述: 一、Python第二版的重要性 Python是一种高级编程语言,被广泛应用于科学计算、Web开发、人工智能等领…

    编程 2025-04-27
  • 北京大学python语言基础与应用超星答案解析

    北京大学python语言基础与应用是一门涵盖了python语言基础知识、数据处理、web开发等方面的课程。其中超星在线学习平台为学生提供了练习和试卷答题功能。本文将从试卷中常见的知…

    编程 2025-04-27

发表回复

登录后才能评论