【C++程序设计】课程例题笔记

本文是关于C++程序设计的学习笔记,涵盖了从C++基础到数组、循环、选择法和冒泡算法等核心概念。通过实例解析,如计算圆面积、分段函数、辗转相除法、打印九九乘法表、判断素数以及数组操作,深入理解C++编程技巧。
摘要由CSDN通过智能技术生成

第一章:C++概述

1.2 简单的C/C++程序实例

  • 例:输入圆的半径,求面积
//输入圆的半径,求面积
#include <iostream>
using namespace std;
#define PI 3.14
int main()
{
   
    double r;
    cin>>r;
    double s=PI*r*r;
    cout<<s<<endl;
    system("pause");
    return 0;
}

第二章 基本数据类型、运算符和表达式

例:符号常量的应用

#include <iostream>
#define PI 3.14
    using namespace std;
    int main()
    {
   
        float r = 3.0, s, l;
        l = 2 * PI * r;
        s = PI * r * r;
        cout << "l=" << l << ",s=" << s << endl;
        system("pause");
        return 0;
    }

例:逻辑运算

#include <iostream>
using namespace std;

int main()
{
   
	int m, n = 10;
	m = 2 && n++;
	cout << "m=" << m << ",n=" << n;
	system("pause");
	return 0;
}

输出结果:

m=1,n=11请按任意键继续. . .
#include <iostream>
using namespace std;
int main()
{
   
	int m, n = 10;
	m = 0 && n++;
	cout << "m=" << m << ",n=" << n;
	system("pause");
	return 0;
}

输出结果:

m=0,n=10请按任意键继续. . .

例:条件运算

对n个人进行分班,每班k>0个人,最后不足k人也编成一个班,问要编成几个班?

\\先算n/k 再加1的
n%k>0?n/k+1:n/k

例:要求输入的直角三角形的斜边和一条直角边,求三角形另外一条直角边、周长和面积

#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    float a,b,c;
    double l,s;
    cout<<"输入斜边、直角边长:";
    cin>>c>>a;
    b=sqrt(c*c-a*a);
    l=a+b+c;
    s=(a*b)/2;
    cout<<"计算结果L:"<<endl;
        //setw()用于输出间隔
    cout<<setw(8)<<"另一直角边="<<b<<endl<<setw(11)<<"周长"<<l<<endl<<setw(11)<<"面积"<<s<<endl;
    system("pause");
    return 0;
}

例:输入三位数,依次输入该数的正(负)号和百位、十位、个位数字

include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    int c1,c2,c3;
    char c4;
    int x;
    cin >>x;
    c4=x>=0?'+':'-';//x符号存入C4
    x=abs(x);
    c3=x%10;
    x=x/10;
    c2=x%10;
    c1=x/10;
    cout<<"数符 百位数 十位数 个位数"<< endl;
    cout<<setw(2)<<c4<<setw(8)<<c1<<setw(8)<<c2<<setw(8)<<c3<<endl;
    system("pause");
}

第三章 结构化程序设计

3.1 顺序结果

例:输入x,y,使得x>y 大的数存放在x中小的数存放在y 中

if语句

#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    int x,y,t;
    cout<<"输入x y"<< endl;
    cin >> x>>y;
    if (x>y)
    {
    t=x;x=y;y=t;
    }
    cout<<"小:"<<x<<"大:"<<y<<endl;
    system("pause");
    return 0;
}


if else 语句

#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    int x,y,max,min;
    cout<<"输入x y"<< endl;
    cin >> x>>y;
    if (x>y)
    {
    max=x;min=y;
    }
    else
    {
   max=y;min=x;}
    cout<<"min:"<<min<<"max:"<<max<<endl;
    system("pause");
    return 0;
}
例:计算分段函数
#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    int x = 0, y;
    cout << "x,y=" << endl;
    cin >> x;
    if (x != 0)
    {
   
        y = sin(x) + sqrt(x * x + 1);

    }
    else
    {
   
        y =cos(x) - x * x + 3 * x;

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

}
例:40岁以下男教工——A组;40岁以上男教工——B组;40岁以下女教工——C组;40岁以上女教工——D组;输入某教工的性别及年龄,输出其组别。
#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
    char sex,group;
    int age;
    cout<<"input'f'or'm'and age="<<endl;
    cin>>sex>>age;
    if (sex=='m')
        if (age<40)
            group ='A';
        else
            group ='B';
    else
        if (age<40)
            group='c';
        else
            group='D';
    cout<<"group="<<group<<endl;
            
        
}


例:已知x,y,z三个数使得x>y>z 用if 和嵌套的if语句实现
#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
    int x,y,z,t;
    cout<<"x,y,z="<<endl;
    cin>>x>>y>>z;
    if(x<y)
    {
   t=x;x=y;y=t;}
    if(y<z)
    {
   t=y;y=z;z=t;
        if(x<y)
        {
   t=x;x=y;y=t;}
    }
    cout<<"x="<<x<<"y="<<y<<"z="<<z<<endl;
}


例:用switch语句实现百分制成绩向五级制成绩的转换
#include<iostream>
#include<iomanip>
#include "math.h"
using namespace std;
int main()
{
   
    int mark;
    char grade;
    cout<<"input mark(0-100):"<<endl;
    cin>>mark;
    switch (mark/10)
    {
   
        case 10:
        case 9:grade='A';break;
        case 8:grade='B';break;
        case 7:grade='C';break;
        case 6:grade='D';break;
        default:grade='E';
    }
    cout<<"mark:"<<mark<<",grade="<<grade<<endl;
    system("pause");
    return 0;
    
}

4.1 循环语句的基本形式

例:求1-99奇数和,即s=1+3+5+…+99

(while 语句)

#include<iostream>
#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值