西南交大20xxVC++实验报告及答案

时间:2024.4.8

计算机程序设计基础

(C++)

实验报告

计算机基础教育中心

二O##年三月

实验__1__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.熟悉Visual studio 6.0集成开发环境;

2.学习新建和打开控制台应用程序的方法;

3.通过运行示例程序了解程序开发过程;

二、实验任务

1. 输出下面图形:

####

####

####

2.输入一摄氏温度,输出显示所转换的华氏温度。

  (提示:摄氏温度=(华氏温度-32)×5/9)

三、实验结果(源程序 + 注释)

#include<iostream>

using namespace std;

void main()

{

      cout<<"####\n"

        <<"####\n"  

        <<"####\n"<<endl;

}

#include <iostream>

using namespace std;

void main()

{

      double a,b;

      cout<<"请输入摄氏温度:";

      cin>>a;

      b=5/9*a+32;

      cout<<"华氏温度为:"<<b<<endl;

}

实验__2__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握对一般数据的输入和输出格式控制方法;

2.掌握对实型数据输出形式的设置和小数位数的控制方法;

3.了解数据输入的相关注意事项。

二、实验任务

1. 输入一台计算机的编号和该计算机的价格,并输出这些信息。(如编号为10987654321,价格为5 998.00元,注意此处计算机的编号作为一个整数而言超出了int所定义的变量的存储范围,因此只能用double型变量来存储,但输出时要求看见的是整数形式的编号)

2. 已知圆半径r、圆柱高h, 要求输入圆半径、圆柱高,输出圆面积、圆柱体表面积、圆柱体体积,输入有提示信息、输出有文字说明(每项输出结果占一行)。

三、实验结果(源程序 + 注释)

#include<iostream>

#include<iomanip>;

using namespace std;

void main()

{

      double a,b;

      cin>>a>>b;

    cout<<setiosflags(ios::fixed)<<setprecision(0)<<a<<endl;

    cout<<setiosflags(ios::fixed)<<setprecision(2)<<b<<endl;

}

#include<iostream>

using namespace std;

void main ()

{ double r,h,area,surface,column;

  const double PI=3.14;

  cout<<"请输入半径:"<<endl;

  cin>>r;

  cout<<"请输入圆柱高:"<<endl;

  cin>>h;

  area=PI*r*r;

  surface=2*PI*r*h+2*PI*r*r;

  column=PI*r*r*h;

  cout<<"圆面积为:"<<area<<endl;

  cout<<"圆柱体表面积为:"<<surface<<endl;

  cout<<"圆柱体体积为:"<<column<<endl;

}

实验__3__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.           掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路    
    和方法;

2.           掌握“一路分支选择结构”算法的实现语句,if语句的使用方法;

3.           掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法;

二、实验任务

1. 输入a,b,c,d四个整数,输出其中的最大数。

2.已知一函数,输入x的值,求解并输出相应的y值。

(提示:该题根据x的取值范围采用不同公式来计算y的值。显然采用if选择结构可实现该程序。)

三、实验结果(源程序 + 注释)

#include <iostream>

using namespace std;

void main()

{

       int a,b,c,d,max;

       cout<<"请输入a,b,c,d:";

    cin>>a>>b>>c>>d;

       if(a>b&&a>c&&a>d)

              max=a;

       else

           if(b>c&&b>d)

              max=b;

       else

           if(c>d)

                     max=c;

       else

              max=d;

              cout<<"max="<<max<<endl;

}

#include<iostream>

using namespace std;

void main()

{

       double x,y;

       cout<<"请输入x的值:"<<endl;

       cin>>x;

       if(x<1)

              y=x;

       if(x>=1&&x<=10)

              y=2*x-1;

       if(x>=10)

              y=3*x-11;

       cout<<"y="<<y<<endl;

}

 

 

实验__4__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握“多路分支选择结构”算法的实现语句,switch语句的使用方法;

2.学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化
    情况。

二、实验任务

1. 实现一个简单的菜单程序,运行时显示

                     Menu:

                            A(dd)

                            D(elete)

                            S(ort)

                            Q(uit)

                            Select one:

要求用户提供相应的输入,并在用户输入A,D,S时分别提示“数据已经增加、删除、排序”,输入为Q时程序结束。

(提示:该程序要求用户输入特定的A,D,S,Q字符显示相应信息,所以适合采用switch结构。)

2. 某公司进行产品销售,既零售也批发,零售的价格与批发的价格不同,购买产品数量的多与少其价格也不同。具体标准见下表:

   要求输入所购商品数量,输出购买总价。

三、实验结果(源程序 + 注释)#include <iostream>

using namespace std;

void main()

{

      char op;

      cout<<"menu:"<<endl;

      cout<<"A(dd)"<<endl;

      cout<<"D(elect)"<<endl;

      cout<<"S(ort)"<<endl;

      cout<<"Q(uit)"<<endl;

      cin>>op;

      switch(op)

      {

      case'A':

          cout<<"数据已经增加"<<endl;break;

      case 'D':

           cout<<"数据已经减少"<<endl;break;

      case 'S':

           cout<<"数据已经排序"<<endl;break;

      case 'Q':

                      break;}

}

#include <iostream>

using namespace std;

void main()

{double x,y;

cout<<"请输入购买数量:"<<endl;

cin>>x;

if(1<=x<=20)

y=18*x;

else

if(20<x<=50)

y=15*x;

else

if(50<x<=200)

y=10*x;

else

if(200<x<=1000)

y=8*x;

else

if(x>1000)

y=6*x;

cout<<"y="<<y<<endl;

}

实验__5__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握“处理某一或某些操作需要被有条件地重复执行”的编程思路和方法;

2.掌握“当型型循环结构”算法的实现语句之一while循环语句的使用方法;

3.掌握“直到型循环结构”算法的实现语句do-while循环语句的使用方法;

4.掌握“当型型循环结构”算法的实现语句之一for循环语句的使用方法。

二、实验任务

1.计算

2.输出100以内所有能被7整除且个位是4的整数。

三、实验结果(源程序 + 注释)

实验__6__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握循环与选择结构的嵌套的使用方法;

2.掌握嵌套循环的使用方法;

3.练习continue和break语句的使用方法。

二、实验任务

1. 计算1+3+32+33+……+310

2. 用循环结构语句编程并输出下图:

   *

  * *

 *   *

*     *

 *   *

  * *

   *

三、实验结果(源程序 + 注释)

实验__7__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法;

2.掌握数值型一维数组的使用方法;

二、实验任务

1. 输入n个数,输出其中的最大数,并将所有小于n个数平均值的那些数输出。

2. 设有有序(值从大到小)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。

(提示:两组原始数据用一维数组a,b表示,合并后的数据用一维数组c表示,ia,ib分别代表当前待放入到数组c中去的数组a,b的下标,ic指向数组c中当前存放数据的下标,如下图所示。)

三、实验结果(源程序 + 注释)

#include<iostream>

using namespace std;

void main(void)

{  const int N=2,M=3,Y=5;

   int a[N],b[M],c[Y],i=0,j=0,t=0;

   cout<<"请从大到小输入a[0]~a[1]:";

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

   {

          cin>>a[i];

   }

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

   {

          cout<<a[i];

   }

   cout<<"请从大到小输入b[0]~b[2]:";

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

          cin>>b[i];

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

   {  if(i<N)

          c[i]=a[i];

      else

                c[i]=b[i-2];

         cout<<c[i];

   }

   for(i=0;i<Y-1;i++)

   { for(j=i+1;j<Y;j++)

                if(c[j]>=c[i])

                {t=c[i];c[i]=c[j];c[j]=t;}

   }

   cout<<"c组数据从大到小的顺序为:"<<endl;

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

         cout<<"c["<<i<<"]="<<c[i]<<endl;

}

#include <iostream>

using namespace std;

void main()

{

 int n = 3,i;

 float  a[3],sum=0,ave,max;

 cout<<"请输入3个数"<<endl;

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

        cin>>a[i];

 max=a[0];

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

 {if(a[i]>max)

 max=a[i];}

 cout<<"最大数为:"<<max<<endl;

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

sum=sum+a[i];

 ave=sum/n;

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

        if(a[i]<ave)

        {cout<<"小于平均值的数有"<<endl;

        cout<<a[i]<<','<<endl;}

}

实验__8__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法;

2.掌握二维数值型数组的使用方法;

二、实验任务

1. 从键盘输入一个四行四列的实数矩阵到一个二维数组中,求出主对角线上元素之和。

2. 输出以下杨辉三角形。

1

1     1

1     2     1

1     3     3     1

1     4     6     4     1

1     5    10    10     5     1

1     6    15    20    15     6     1

1     7    21    35    35    21     7     1

1     8    28    56    70    56    28     8     1

1     9    36    84   126   126    84    36     9     1

三、实验结果(源程序 + 注释)

实验__9__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.熟练指针变量的使用,了解其编程技巧;

2.熟练指针变量做函数参数,了解其传递过程;

3.熟练指向数组元素的指针,了解指针引用数组元素的编程技巧。

二、实验任务

1. 使用指针法在的一组数据中,找出其中最小值所在的位置并输出。

2. 使用指针法对一维数组a中的数据按升序排列。

三、实验结果(源程序 + 注释)

#include<iostream>

using namespace std;

void main()

{ int a[4]={4,3,2,1},*p,*min;

  min=a;

  cout<<"数组a的数值为:"<<endl;

  for(p=a;p-a<4;p++)

  {cout<<*p<<" ";

  if(*p<*min)min=p;}

  cout<<endl;

  cout<<"最小值为"<<*min<<"位于第"<<min-a+1<<"个数据"<<endl;

}

#include<iostream>

using namespace std;

void main()

{   int a[7]={10,52,69,25,23,62,85},*p,t,i;

    cout<<"排序前数组顺序:"<<endl;

    for(p=a;p-a<7;p++)

           cout<<*p<<" ";

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

      {

           for(p=a;p-a<7-1-i;p++)

           {

                 if(*p>*(p+1))

                 {t=*p;*p=*(p+1);*(p+1)=t;}

           }

      }

      cout<<"排序后数组顺序:"<<endl;

      for(p=a;p-a<7;p++)

           cout<<*p<<" ";

}

实验__10__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.了解存放常用的系统函数的头文件;

2.掌握常用系统函数的功能和使用方法;

3.掌握返回值的概念和运用。

二、实验任务

1. 接受用户输入的数值,计算该数的绝对值和该绝对值以10为底的对数值,并输出计算结果。

(提示:使用内置的绝对值函数和对数函数。)

2. 编写两个子函数,分别求两个整数的最大公约数和最小公倍数,并编写主函数调用这两个子函数,输出结果,两个整数由键盘输入。

三、实验结果(源程序 + 注释)

#include <iostream>

#include <cmath>

using namespace std;

void main()

{

      double a,b,c;

      cout<<"请输入a的值"<<endl;

      cin>>a;

    b=fabs(a);

      c=log10(b);

      cout<<"a的绝对值是"<<b<<endl;

      cout<<"b以10为底的对数值是"<<c<<endl;

}

#include <iostream>

using namespace std;

void main()

{

      int a,b,m,n;

      int swap1(int,int);

      int swap2(int,int);

      cout<<"请输入a,b的值"<<endl;

      cin>>a>>b;

      swap1(a,b);

      m=swap1(a,b);

      cout<<"a,b的最大公约数为"<<m<<endl;

      swap2(a,b);

      n=swap2(a,b);

      cout<<"a,b的最小公倍数为"<<n<<endl;

}

int swap1(int a,int b)

{int m;

      for(m=a;m>0;m--)

           if(a%m==0&&b%m==0)

                 break;

           return m;

}

int swap2(int a,int b)

{int n;

for(n=a;n<=a*b;n++)

      if(n%b==0&&n%a==0)

                 break;

return n;

}

实验__11__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.掌握自定义有返回值函数的概念、定义及使用;

2.掌握自定义void函数的概念、定义及使用;            

3.掌握自定义有返回值函数与自定义void函数在定义及使用上的区别;

4.掌握函数参数间的数据传递。

二、实验任务

1. 设计一个程序,用来计算输入的两个整数的加、减、乘、除,每一个计算要单独用一个用户自定义的void函数来实现,接收输入数据也要用void函数来实现,输入数据中不包含0。

2. 将键盘输入的10个整数按从小到大的顺序排序(选择法),要求排序功能用自定义函数实现。

三、实验结果(源程序 + 注释)#include <iostream>

#include<iostream>

using namespace std;

void main()

{int a=0,b=0;

void add(int,int);

void sub(int,int);

void mul(int,int);

void divide(double,double);

cout<<"input a,b:";

cin>>a>>b;

if(a==0||b==0)

{cout<<"数据不符合要求,重新输入:"<<endl;

cout<<"input a,b:";

cin>>a>>b;}

add(a,b);

sub(a,b);

mul(a,b);

divide(a,b);

}

void add(int a,int b)

{cout<<a<<"+"<<b<<"="<<a+b<<endl;}

void sub(int a,int b)

{cout<<a<<"-"<<b<<"="<<a-b<<endl;}

void mul(int a,int b)

{cout<<a<<"*"<<b<<"="<<a*b<<endl;}

void divide(double a,double b)

{cout<<a<<"/"<<b<<"="<<a/b<<endl;}

     

#include<iostream>

using namespace std;

void main()

{

void xx();

xx();

}

void xx()

{int const N=20;

int i,j,t,n,a[N];

cout<<"请输入n:";

cin>>n;

cout<<"请输入"<<10<<"个数"<<endl;

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

cin>>a[i];

for(i=0;i<n-1;i++)

for(j=i+1;j<n;j++)

if(a[i]>a[j])

{t=a[i];a[i]=a[j];a[j]=t;}

cout<<"已知数从小到大排序为"<<endl;

for(j=0;j<n;j++)

cout<<a[j]<<" ";

cout<<endl;

}

实验__12__实验报告

教学班级:_______ 学生学号:__________ 学生姓名:___________

实验日期:___________ 实验地点:_________(机房)

指导教师签名:__________  实验成绩:___________

一、实验目的

1.建立文件、读写文件的操作;

2.文件指针的定位操作。

二、实验任务

1.编写一个程序,用来从键盘读取本班同学的期末成绩,并把该成绩保存在score.dat文件中。Score.dat文件内容如下:

number     Chinese            English             C                     

1              87                   76                     67                    

2              67                   87                     65                    

3              76                   88                     87                    

4              46                   89                     88                    

2.编写一个程序,用来读取上题创建的score.dat数据文件,并计算其平均成绩和期末总成绩。把计算的结果存在statistics.dat文件中,并输出成绩有不及格的学生的学号。其格式如下:

number       Chinese          English             C                      total                  average

1                87                 76                     67                     230                   76.67

2                67                 87                     65                     219                   73

3                76                 88                     87                     251                   83.67

4                46                 89                     88                     223                   74.3

三、实验结果(源程序 + 注释)

更多相关推荐:
c语言实验报告模板完成版

高级语言程序设计学生实验报告专业计算机科学与技术学号姓名1实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运...

C语言实验报告

实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运行简单的C程序初步了解C程序的特点2实验程序清单及运行结果...

C语言实验报告(三)

华北水院高级语言程序设计C语言实验报告20xx20xx学年第二学期20xx级专业班级学号一实验题目循环结构程序设计二实验目的略三实验内容1程序验证略2程序设计1找出100900之间的无暇素数所谓无暇素数是指本身...

C语言实验报告(样板)

滁州学院机械与电子工程学院实验报告课程姓名专业20xx机械本科学号实验一工作平台一目的和要求1熟悉语言程序的支持运行环境了解所用计算机系统的软硬件配置和使用方法2初步了解运行一个语言程序的过程二实验环境硬件环境...

C语言实验报告样本

实验报告课程名称C语言程序设计实验项目顺序结构程序设计实验仪器计算机系别机电工程学院专业机械设计制造及其自动化班级学号机械110120xx010008学生姓名郭奎宇实验日期20xx年10月24日成绩指导教师一实...

c语言实验报告

C语言程序设计实验报告1实验目的1熟悉C语言编译器2掌握基本的C代码编写方法与风格3掌握基本的数据类型运算符与表达式的灵活运用4掌握顺序分支结构程序设计思想与代码编写方法实验内容1在D盘根目录创建以自己姓名拼音...

c语言实验报告

实验报告1已知三角形的边为abc试设计程序输入三边的值并计算三角形的面积已知三角形的面积计算公式为Sabc2Areaasbsc截图为程序及其运行结果分析常错的地方就是容易后面使用到的字母忘记定义导致程序不认识不...

c实验报告

西安科技大学计算机基本技能训练报告班级学号姓名20xx年1月1题目文件移位加密与解密一题目介绍此题目根据移位给文件加密和解密将某一已知文件的内容仅限于英文字母以字符形式读出根据密钥用户从键盘输入将对应字符进行移...

c均值算法c++实现实验报告

模式识别实验二c均值算法1实验目的熟悉c均值算法通过程序语言实现该算法比较每个聚类的初始均值不同时算法结果的差别理解动态聚类算法的算法思想2实验内容和要求写程序实现c均值算法并用表中的三维数据进行测试下面给出了...

C程序设计教程与实验 吉顺如主编 实验报告5参考答案

高级语言程序设计实验报告班级学号实验5循环结构程序设计一实验目的1掌握循环结构程序设计的3种控制语句while语句dowhile语句for语句的使用方法2了解用循环的方法实现常用的算法设计二实验内容11下列程序...

C语言实验报告标准格式

暨南大学本科实验报告专用纸课程名称高级语言程序设计成绩评定实验项目名称结构体和共用体指导教师张晓刚实验项目编号8060151108实验项目类型综合性实验地点C301学生姓名苟长弘学号20xx051282学院信息...

C语言实验报告(二)

C语言实验报告二一实验目的1234掌握C语言中选择结构掌握C语言中分段函数的输入与输出掌握ifelse条件语句的用法掌握数学函数的使用二实验内容1有一分段函数如下编写程序输入x实数的值输出以如下格式xy即小数部...

c++实验报告(35篇)