c语言程序设计函数答案 c语言程序设计参考答案

求29.30.31答案和解释 c语言程序设计29、数组的下标值必须是整数,且不能越界 , 数组a的下标值范围是0--9
A
*(a i)
等价于
a[i]
B
a[p-a i]
等价于
a[i]
因为
p=a
所以
p-a i=i
C
p i
是数组中下标值为i的元素的地址
D
*(a[i])
等价于
a[i]
所以
本题答案是
C
30、strcpy(s1,s2)字符串赋值函数,把串s2放在s1的位置上,所以s1必须有足够的存储空间来存放串s2
A
st1
是一维数组可以存放字符串teacher1
B
st4
是一个指针变量,但是该指针指向一个连续的存储空间
teacher1
C
st3是指针变量,但是该指针没有指向任何存储空间,所以不能把串teacher1放在st3
D
st1
是一维数组可以存放字符串teacher1
所以
本题答案

C
31、p
q
是指针变量,存放的是n的地址
A
p=q
p
q
指针类型相同
可以直接赋值
B
*p=*q
也可以
//
p=q=n

*p=*q=n
C
n=*p
原理同
B项
D
p是指针 , 应该存放n的地址,即p=n
所以本题答案是:
D
求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"〓〓〓〓〓〓〓

    推荐阅读