C++ 入门学习(练习+代码)—— 02

 一、实验目的

1. 掌握顺序结构的编程思路和方法;

2. 掌握格式化输入输出和数据类型转换。

二、  实验任务

1.  从键盘输入一个小写字母,将其转换成大写字母,输出这两个大小写字母及它们的ASCII码值。输入输出格式参见样张:

 C++ 入门学习(练习+代码)—— 02

 

示例代码:

//小写字母,将其转换成大写字母
#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int main()
{
    char a;
    char b;
    int c,d;
    cout<<"请输入一个小写字母:";
    cin>>a;
    c=a;
    cout<<"输入的小写字母是:"<<a<<","<<"其ASCII码是:"<<c<<endl;
    b=a-32;
    d=b;
    cout<<"对应的大写字母是:"<<b<<","<<"其ASCII码是:"<<d<<endl;
    return 0;
}

 

2.  从键盘输入两个整数(要求:两个数不能整除,第2个数不为0),计算这两个数的商,并输出结果,理解整数除法与实数除法的区别。输入输出格式参见样张:

 C++ 入门学习(练习+代码)—— 02

示例代码:

 //除法的运算
#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int main()
{
    int a,b,s;
    cout<<"请输入两个整数:";
    cin>>a>>b;
    s=a/b;
    cout<<"整数除法:"<<a<<"/"<<b<<"="<<s<<endl;
    cout<<"实数除法:"<<a<<"/"<<b<<"="<<(float)a/b<<endl;
        return 0;
}

 

 

3.  从键盘输入圆球的半径,计算圆球表面积和圆球体积,并输出结果。π使用符号常量,值取3.14159。公式:  。要求:圆球表面积保留两位小数,圆球体积保留四位小数。输入输出格式参见样张:

 C++ 入门学习(练习+代码)—— 02

示例代码:

//计算圆球的体积和面积
#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int main()
{
      double s,v,r;
      cout<<"请输入半径:";
      cin>>r;
      s=4*3.14159*r*r;
      v=(4*3.14159*r*r*r)/3.0;
      cout<<"圆球面积为:";
      printf("%.2f\n",s );
      cout<<"圆球体积为:";
      printf("%.4f\n",v );
      return 0;
}

 

4.计算万有引力。

由普通物理知, 两个质量分别为m1和m2的物体之间的万有引力F与两个物体质量的乘积成正比, 与两个物体质心之间的距离R的平方成反比,即:

式中G为引力常数,如果F的单位为牛顿(N),质量的单位为千克(kg),物体质心的距离单位为米(m),则。已知太阳的质量为 kg,地球的质量为kg,太阳与地球的距离为m,请计算太阳与地球之间的万有引力。要求:G使用符号常量。输出格式参见样张:

 

 C++ 入门学习(练习+代码)—— 02

示例代码:

//计算万有引力
#include<iostream>
#include<cstdio>
#include<string>
#include<iomanip>
using namespace std;
int main()
{
    double m1,m2,r,f;
   const double G=6.67259e-11; 
    m1=1.987e30;
    m2=5.975e24;
    r=1.495e11;
    f=(G*m1*m2)/(r*r);
    cout<<"太阳的质量为:"<<fixed<<setprecision(0)<<m1<<endl;
    cout<<"地球的质量为:"<<m2<<endl;
    cout<<"太阳与地球的距离为:"<<r<<endl;
    cout<<"太阳与地球之间的万有引力为:"<<f<<endl;
    return 0;
}

 

 

5.  已知某同学参加了高等数学、大学物理、大学英语三门课程的考试。编程实现:从键盘输入该同学的学号(11位)以及三科的成绩,计算平均成绩,并输出成绩单。

要求:(1)学号作为一个整数而言,超出了int型变量的存储范围,因此需用double型变量来存储,但输出时要求显示的是整数形式的学号。

(2)从键盘输入的姓名使用string型变量存放。

(3)成绩单中三科成绩保留1位小数,平均成绩保留两位小数。

(4)输入输出格式参见样张:

 C++ 入门学习(练习+代码)—— 02

 示例代码:

//输出成绩单
#include<iostream>
#include<cstdio>
#include<string>
#include<iomanip>
using namespace std;
int main()
{
    double a,b,c,s,n;
    string name;
    cout<<"请输入学号、姓名、三门课成绩:"<<endl;
    cin>>n>>name>>a>>b>>c;
    cout<<endl;
    cout<<setw(32)<<setfill('*')<<"成绩单"<<setw(22)<<"*"<<endl;
    cout.fill(' ');
    cout<<setw(8)<<"学"<<setw(4)<<"号"<<setw(8)<<"姓"<<setw(4)<<"名";
    cout<<setw(10)<<"高等数学"<<setw(10)<<"普通物理"<<setw(10)<<"大学英语"<<endl;//输出第二行;
    cout<<fixed<<setprecision(0)<<setw(12)<<n<<setw(12)<<name<<setprecision(1)<<setw(10)<<a<<setw(10)<<b<<setw(10)<<c<<endl;
    s=(a+b+c)/3;
    cout<<"平均成绩:"<<setprecision(2)<<s<<endl;
    cout<<setfill('*')<<setw(54)<<"*"<<endl; 
    return 0;
}

总结:

本实验中,第三题与第四题均实现了格式化输出,但是方法有所不同,由于是C++的代码,建议参考第四题的方式格式化输出。

上一篇:bash cp file


下一篇:2022/02/04