实验一 C++基础练习附答案.docx

上传人:b****3 文档编号:3674583 上传时间:2022-11-24 格式:DOCX 页数:12 大小:25.84KB
下载 相关 举报
实验一 C++基础练习附答案.docx_第1页
第1页 / 共12页
实验一 C++基础练习附答案.docx_第2页
第2页 / 共12页
实验一 C++基础练习附答案.docx_第3页
第3页 / 共12页
实验一 C++基础练习附答案.docx_第4页
第4页 / 共12页
实验一 C++基础练习附答案.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

实验一 C++基础练习附答案.docx

《实验一 C++基础练习附答案.docx》由会员分享,可在线阅读,更多相关《实验一 C++基础练习附答案.docx(12页珍藏版)》请在冰豆网上搜索。

实验一 C++基础练习附答案.docx

实验一C++基础练习附答案

实验一C++基础练习

实验目的和要求

1.掌握C++程序的基本格式与规范,学会编写简单的C++程序。

2.理解C++程序结构的特点。

3.熟悉C++程序基本的输入输出操作。

4.掌握C++数据类型常量和变量以及修饰符的使用方法。

5.掌握函数定义、函数调用和函数说明的方法。

6.熟悉作用域运算符的功能和基本使用方法。

7.掌握C++内存的动态分配与释放方法。

8.理解引用的概念,掌握引用的使用方法。

实验内容

1.编写一个程序,从键盘上输入摄氏温度,通过转换输出华氏温度,转换公式为

例如,输入摄氏温度为10时,输出华氏温度为50;输入摄氏温度为37时,输出华氏温度为98.6。

要求输入输出时有提示。

2.定义一个结构体数据类型用于保存自己的个人信息,例如可以包含姓名、性别、年龄、几门课程的成绩等(根据自己的需要定义成员)。

在程序中输入个人信息,然后按一定的格式输出个人信息。

要求输入输出时有提示。

3.编写函数求2个和3个正整数中的最大值,并在主函数中进行调用验证。

要求:

(1)利用函数重载实现;

(2)用参数带默认值的函数实现。

4.编写一个程序,动态定义一个整型数组(数组的大小通过键盘输入),给数组元素赋值。

求数组所有元素的和,求和的结果使用全局变量sum存储,同时对数组中的奇数求和,结果使用局部变量sum存储,将两个结果输出。

本题要求体会和理解作用域运算符的概念与基本使用方法,同时掌握动态内存分配和释放。

5.编写一个函数建立一个单链表。

链表结构如下:

链表中节点的结构为:

typedefstructNode

{

intdata;

Node*next;

}*LinkList;

建立单链表函数的原型为:

intCreateList(LinkList&L,intn)

其中L为单链表的头指针,创建的链表通过L返回;n为链表中节点的个数。

函数中通过new运算符给每个节点分配存储空间,并通过cin输入节点中保存的数据,最后将节点插入到链表末尾。

再编写一个输出链表数据的函数,函数原型为:

intPrintList(LinkListL)

最后编写主函数进行测试。

6.阅读下列程序,指出错误的语句以及出错的原因。

然后上机调试改正错误。

(1)

include

voidmain()

{

cin>>x;

inty=x*x;

cout<<"y=<

return0;

}

(2)

#include

voidmain()

{

inta,b;

a=7;

ints=a+b;

cout<<"a+b="<

}

7.调试下列程序,写出输出结果,并解释输出结果

(1)

#include

voidmain()

{

doubledd=3.9,de=1.3;

double&rdd=dd,&rde=de;

cout<

rdd=2.6;

cout<

de=2.5;

cout<

}

(2)

#include

voidmain()

{

voidfun(int,int&);

inta,b;

fun(2,a);

fun(3,b);

cout<<"a+b="<

}

voidfun(intm,int&n)

{

n=m*4;

}

(3)

#include

int&fun(int);

intaa[5];

voidmain()

{

inta=5;

for(inti=0;i<5;i++)

fun(i)=a+i;

for(i=0;i<5;i++)

cout<

cout<

}

int&fun(inta)

{

returnaa[a];

}

参考答案(非权威,仅仅是我自己的理解,如有错误,请批评指正!

第一题:

#include

voidmain()

{

floatx;

cout<<"请输入一个摄氏温度:

";

cin>>x;

cout<<"它的华氏温度为:

"<<9*x/5+32<

}

 

第二题:

#include

#defineN1

structstudent//定义并声明结构变量

{

intnumber;

charname[20];

charsex[10];

intage;

floatscore[2];

}stu[N];

voidmain()

{

cout<<"请输入学号:

";

cin>>stu[0].number;

cout<<"请输入姓名:

";

cin>>stu[0].name;

cout<<"请输入性别:

";

cin>>stu[0].sex;

cout<<"请输入年龄:

";

cin>>stu[0].age;

cout<<"请输入A课程成绩:

";

cin>>stu[0].score[0];

cout<<"请输入B课程成绩:

";

cin>>stu[0].score[1];

cout<

cout<

cout<<"你的学号为:

"<

cout<<"你的姓名为:

"<

cout<<"你的性别为:

"<

cout<<"你的年龄为:

"<

cout<<"你的A课成绩为:

"<

cout<<"你的B课成绩为:

"<

}

 

第三题:

#include

usingnamespacestd;

 

intMAX(intx,inty){returnx>y?

x:

y;}

intMAX(inta,intb,intc){return(a>b?

a:

(b>c?

b:

c));}

 

voidmain()

{

intx,y,a,b,c;

cout<<"请输入x:

";

cin>>x;

cout<<"请输入y:

";

cin>>y;

cout<

cout<<"请输入a:

";

cin>>a;

cout<<"请输入b:

";

cin>>b;

cout<<"请输入c:

";

cin>>c;

cout<

cout<

cout<<"MAX(x,y)="<

cout<<"MAX(a,b,c)="<

}

 

第四题:

#include

usingnamespacestd;

intsum=0;

voidmain()

{

intN,sum=0;

cout<<"请确定数组大小N的值:

";

cin>>N;

int*p=newint[N];

cout<<"请输入N个整数到数组p[N]中:

"<

for(inti=0;i>p[i];

for(intk=0;k

{

:

:

sum+=p[k];

if(p[k]%2!

=0)sum+=p[k];

}

cout<

cout<<"数组p[N]的总和为:

";

cout<<:

:

sum<

cout<

cout<<"数组p[N]的奇数和为:

";

cout<

delete[]p;

}

 

第五题:

#include

typedefstructNode

{

intdata;

Node*next;

}*LinkList;

LinkListCreateList(LinkList&L,intn)

{

LinkListp=NULL;

LinkListtemp=NULL;

intdata;

cout<<"请任意输入n个正整数:

"<

cin>>data;

while(n>0)

{

p=newstructNode;

p->data=data;

p->next=NULL;

if(!

L)L=temp=p;

else

{

temp->next=p;

temp=p;

}

cin>>data;

n--;

}

returnL;

}

intPrintList(LinkListL)

{

LinkListp=L;

cout<<"链表的全部数据如下:

"<

while(p)

{

cout<data<<"";

p=p->next;

}

cout<

return0;

}

voidfreeLink(LinkListL)

{

LinkListp=NULL;

while(L)

{

p=L;

p->next=NULL;

L=L->next;

deletep;

}

}

voidmain()

{

LinkListL=NULL;

L=CreateList(L,3);//输入链表数据

PrintList(L);//输出链表数据

freeLink(L);//释放单链表的头指针

}

 

第六题:

(1)

修改前的程序:

include//头文件应定义应加上#号

voidmain()

{

cin>>x;//使用x之前应先申明x的内型

inty=x*x;

cout<<"y=<

cout<

}

int&fun(inta)

{

returnaa[a];

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1