C++教程(2023-1-20)

本文介绍了C++编程的基础知识,包括编写第一个C++程序的步骤,注释的使用,变量和常量的概念及创建,常见数据类型的定义,如int、float和double,以及sizeof关键字的作用。此外,还讲解了运算符,如算术、赋值和比较运算符,以及数据的输入方法。最后,概述了程序流程控制的初步概念,包括if语句和选择结构。
摘要由CSDN通过智能技术生成

第一章:C++介绍

1.第一个c++程序

c++程序:
编写c++程序的步骤: 创建项目  创建文件 编写代码 运行程序
//
// Created by ~风轻云淡~ on 2022/12/19.
//
#include "iostream"
using namespace std;
int main(){
    
    cout<<"helloWorld"<<std::endl;
    
    system("pause");

    
    return 0;

}

2.注释:在代码中加一些说明和解释 方便自己和其他程序员阅读代码
	两种格式:单行注释 //  通常放在一行代码的上方 对该代码说明
	
			多行注释
				/**/ t通常放在一段代码的上方
				
				
	//
// Created by ~风轻云淡~ on 2022/12/19.
//
#include "iostream"
using namespace std;
int main(){

    cout<<"helloWorld"<<std::endl;

    system("pause");
//单行注释

/*
 * 多行注射
 * */
    return 0;

}



//
// Created by ~风轻云淡~ on 2022/12/19.
//
#include "iostream"
using namespace std;
int main(){

    cout<<"helloWorld"<<std::endl;

    system("pause");
//单行注释

/*
 * 多行注射
 * */
    return 0;

    /*
     * main是一个程序的入口 每个程序都必须有这么一个函数 有且仅有一个
     * 
     * */
    
}


	

2.变量

变量存在的作用:方便我们管理内存空间

变量创建的语法:数据类型 变量名=变量的初始值;
				int   a	 =100;		


//
// Created by ~风轻云淡~ on 2022/12/19.
//

#include "iostream"
using namespace std;
int main(){
//    变量创建的语法 :


//变量创建的语法:
int  a=10;
cout <<"a="<<a<<endl;


    system("pause");
    return 0;

}




3.常量

作用:用于记录程序中不可更改的数据
c++定义常量的两种方式
1.#define 宏常量 :#define 常量名 常量值
		通常在文件的上方定义 表示一个常量
2.const 修饰的变量 const 数据类型 常量名=常量值
 通常在变量定义前加关键字const 修饰变量为常量 不可修改
 
 
 #include <iostream>

/*常量的定义方式:
 *      #define 宏常量
 *          2.const修饰的变量
 * */

//1.#define  N
#define Day 7
using namespace std;


int main() {

    cout<<"一周有:"<<Day<<"天"<<endl;
    
///2.const修饰的变量  也是常量
const int m=12;

cout<<"m的值为:"<<m<<endl;
    return 0;
}

 

4.编程常用的关键字

与java  python 中的一样:
class  return  int  float double 

因此不能使用关键字给变量或常量起名字
    
    
    

5.标识符命名规则

标识符:1.标识符不能是关键字
		int int=10  这样子不允许
	2.标识符只能由字母 下划线 数字组成
		int abc=10  int  _abc=20
	3.标识符中字母区分大小写
    		
	4.标识符是区分大小写的

第二章:数据类型

1.常见数据类型


#include <iostream>

#define Day 7
using namespace std;


int main() {

// 数据类型存在的意义:给变量分配合适的内存空间  区别就是占用的内存空间不同

/*
 * short  短整型
 *int 整型 
 * long 长整型
 * 
 * */

//1.短整型:short
short num1=10;

//2.整型 int
int num2=10;

//3.长整型long
long num3=100;

//4.双精度
double num4=900;

//5.浮点型
float num5=90000;

    return 0;
}



2.sizeof关键字

#include <iostream>

#define Day 7
using namespace std;


int main() {

// 数据类型存在的意义:给变量分配合适的内存空间  区别就是占用的内存空间不同

/*
 * short  短整型
 *int 整型
 * long 长整型
 *
 * */

//1.短整型:short
short num1=10;

//2.整型 int
int num2=10;

//3.长整型long
long num3=100;

//4.双精度
double num4=900;

//5.浮点型
float num5=90000;



//利用sizeof求出数据类型的内存占用大小
//语法:sizeof(数据类型/变量)
cout<<"num1数据类型是" <<sizeof(num1) <<endl;

cout<< "num2的数据类型是:"<<sizeof (num2)<< endl;



    return 0;
}

3.浮点型

float  浮点型
double  双精度
#include <iostream>

#define Day 7
using namespace std;


int main() {



//1.短整型:short
short num1=10;

//2.整型 int
int num2=10;

//3.长整型long
long num3=100;

//4.双精度
double num4=900;

//5.浮点型  默认情况下输出一个小数  会显示出6位有效数字
float num5=90.56f;

cout<< "num5="<< num5 <<endl;


//科学技术发:
float x=3e2;//3*10^2
cout<< "x的值为!"<< x<< endl;







    return 0;
}

4.字符型

char ch='a'  作用:用于显示单个字符
#include <iostream>

#define Day 7
using namespace std;


int main() {


//1.创建字符型变量
char ch='a';
cout<<"转换一下" << ch+92<<endl;

//注意:不能使用双引号创建
//创建的时候单引号内只能有一个字符
//char j='dhdh';   这个就是错误的

//字符对应的ASCII码:a 97  A-65


    return 0;
}

5.转义字符

转义字符

		\a
		\b
		\f
		\n
		\t
		#include <iostream>

#define Day 7
using namespace std;


int main() {


//1.换行符  \n
cout<< "你好\n  你好\n" <<endl;
//    2.水平制表符 \t  整齐输出数据
cout<< "asfdasf\thjhjgjgh\t"<<endl;
    return 0;
}

		

6.字符串类型

#include <iostream>

#define Day 7
using namespace std;

//使用c++风格的字符串要包含的头文件
#include "string"
int main() {

//    1.C语言字符串  cha   注意;char 字符串名[]
//等号后面要使用双引号包含起来
    char  str[]="hello word";

//    2.c++版本字符串
string string1="hello World";
cout<<string1 <<endl;
    

}

7.布尔类型

#include <iostream>

#define Day 7
using namespace std;

//使用c++风格的字符串要包含的头文件
#include "string"
int main() {

//布尔值:判断对错


bool flag= true;
cout<<flag<<endl;//输出1

bool j= false;
cout<<j<<endl;//输出0

}

8.数据的输入

作用:从键盘上获取数据
	关键字:cin>>'值'
	
		#include <iostream>

#define Day 7
using namespace std;

//使用c++风格的字符串要包含的头文件
#include "string"
int main() {

//1.整型
int a=0;
cout<<"请输入a的值"<<endl;
cin>>a;
cout<<"a的值为:"<<a<<endl;

//    2.浮点型
    float b=0;
    cout<<"请输入a的值"<<endl;
    cin>>b;
    cout<<"a的值为:"<<b<<endl;
//3.字符型
    char c='a';
    cout<<"请输入a的值"<<endl;
    cin>>a;
    cout<<"a的值为:"<<c<<endl;

//4.字符串类型
    string str="hello";
    cout<< "请输入"<< endl;
    cin>>str;
    cout<<"str的值为:"<<str<<endl;
}

第三章:运算符

1.算数,取模运算符

#include <iostream>

#define Day 7
using namespace std;

//使用c++风格的字符串要包含的头文件
#include "string"
int main() {

//1.加减乘除
int a1=10;
int a2=45;
cout<<a1+a2<<endl;
cout<<a1-a2<<endl;
cout<<a1*a2<<endl;
cout<<a1/a2<<endl;//两个指数相除 将小数部分去除

cout<<"你好"<<endl;

//2.取模运算:求两个相除的余数
cout<<a1%a2<<endl;
两个小数之间是不可以做取模运算的


    return 0;
}

2.算数运算符

前置递增
后置递增


前置递减
后置递减
#include <iostream>

#define Day 7
using namespace std;

//使用c++风格的字符串要包含的头文件
#include "string"
int main() {




//    1.前置递增
int a=10;
++a;//让变量+1
cout<<"啊的值"<<a<<endl;


//2.后置递增
int b=10;
b++;//让变量+1
cout<<"b=?"<<b<<endl;

/*
 * 前置和后置的区别:1前置递增 先让变量+1 如何在进行表达式运算
 *   后置递增 先进行表达式运算 后让变量+1
 * */

int a2=10;
int b2=++a2*10;
cout<<"a2"<<a2<<endl;







    return 0;
}

3.赋值运算符

=  赋值
+= 加等于
-= 减等于
*=乘等于
#include <iostream>


using namespace std;
int main() {

//赋值运算符
//
// 1. =
int a=10;
a=100;
cout<<a<<endl;

//2.+=
a=10;
a+=2;//a=a+2
cout<<"a的值为"<<a<<endl;


// 3.   *=
a*=2;
cout<<"a*=2为"<<a<<endl;

//4.  /=
a=90;
a /=2;//a=a/2
cout<<"a的值为"<<a<<endl;



    return 0;
}

4.比较运算符

#include <iostream>


using namespace std;
int main() {

/*比较运算符 :用于表达式的比较 并返回一个真值或假值
 *
 *
 *      ==相等
 *      !=不等于
 *         <小于
 *         >大于
 *         <=小于大于
 *         >= 大于大于
 *
 * */


int a=10;
int b=20;
cout<<(a==b)<<endl;//输出0

cout<<(2>90)<<endl;//注意:在c++中使用小括号来提高程序执行的优先级

cout<<(a>b)<<endl;//输出0


    return 0;
}

5.逻辑运算符

#include <iostream>


using namespace std;
int main() {

/*
 * 逻辑运算符:用于工具表达式的值返回真值或者假值
 *
 *      ! 非
 *      && 与
 *      || 或
 *
 * */

//逻辑运算符 非

    int a=10;
    cout<<!(!a)<<endl;//先算!a 然后再整体取反 就是输出1

//    与运算
bool n= true;
bool m= false;
cout<<!(m&&n)<<endl;
//在计算机中只要是非0数字都是真  a=1 a=-1 等等都是真  只有a=0的时候才是假

cout<<!(a)<<endl;


//或运算||

cout<<(m||n)<<endl;
    return 0;
}

第四章:程序流程语句

1.选择结构

三种运行结构:顺序结构 选择结构 循环结构
顺序结构:程序按照顺序执行 不发生跳转
选择结构:依照条件执行 是否满足 有选择的执行
循环结构:依照条件是否满足 循环多次执行某段代码

1.if语句
  作用:执行满足条件的语句
  单行格式的if语句
		#include <iostream>
using namespace std;
int main() {
    int a=10;
//    1.用户输入的分数
int score=0;

cout<<"请输入分数"<<endl;
cin>>score;
//2.打印用户输入的分数
cout<<"分数是:"<<score<<endl;
//3.判断房租是否大于600 大于就输出
//注意:if后面不要加分号
    if (score>600){
        cout<<"恭喜你考上了大学!"<<endl;

    }

    


    if (a<20){

        cout<<"你好"<<a<<endl;
        a++;
    }

    return 0;
}

2.多行格式的if语句

#include <iostream>
using namespace std;
int main() {

//多行 if语句
int score=0;
cout<<"请输入分数"<<endl;
cin>>score;

cout<<"你输入的分数"<<score<<endl;

    if (score>600){//如果大于600分就执行下面大括号

        cout<<"分数是"<<score<<"恭喜你录取了~·"<<endl;
    } else{//不大于600分就执行下面的代码


        cout<<"很遗憾 请耐心等待"<<endl;
    }




    return 0;
}

3.多条件语句

#include <iostream>
using namespace std;
int main() {

//多条件if语句:
//输入考上分数 如果大于600 分 就输出考上了 一本
//如果大于500 就输出二本大学
//如果大于400 就输出三本大学
//如果小于400 就输出 还未录取 请等待
int score=0;

cout<<"请输入分数"<<endl;
cin>>score;


if(score>600){
    cout<<"恭喜你考上了一本大学!"<<endl;
} else if(score>500&&score<<600){
    cout<<"恭喜你考上了二本大学"<<endl;

} else if(score>400&&score<500){
    cout<<"恭喜你考上了三本大学"<<endl;

} else{

    cout<<"很遗憾 你没有大学上了"<<endl;
}

    return 0;
}

4.嵌套if语句

#include <iostream>
using namespace std;
int main() {




//    用户输入分数
int score=0;
cout<<"请用户输入分数"<<endl;

cin>>score;


    if (score>700){

//        大于700还要分出考上北大或者清华
        if (score>750){
            cout<<"恭喜你 考上了北大"<<endl;
        } else if(score>710&&score<=759){

            cout<<"恭喜你 考上了人民大学"<<endl;
        } else if(score>=710&&score<=710){
            cout<<"恭喜你 考上了复旦大学"<<endl;
        }

    } else if(score <700&&score>500){

        cout<<"恭喜你考了一本"<<endl;

    } else if(score>400&&score<=500){
        cout<<"恭喜你考了二本"<<endl;
    }



    return 0;
}

#include <iostream>

using namespace std;
int main() {

//    创建三个变量
int num1=0;
int num2=0;
int num3=0;


//让用户输入内容:
        cout<<"请输入num1的值"<<endl;
        cin>>num1;

        cout<<"请输入num2的值"<<endl;
        cin>>num2;

        cout<<"请输入num3的值"<<endl;
        cin>>num3;
        
    if (num1>num2){

        if (num1>num3){

            cout<<"num2最大"<<num2<<endl;
        } else{
            cout<<"num3最大"<<num3<<endl;
        }

    } else{
        if (num2>num3){

            cout<<"num2最大"<<num2<<endl;
        }

    }
    
    return 0;
}

5.三目运算符

#include <iostream>
using namespace std;
int main() {

    /*
     * 作用:通过三目运算符实现简单的判断
     *          语法:表达式1?表达式2:表达式3  如果表达式1位真 则执行表达式2 并且返回表达式2的结果  以此类推
     *
     * */


    /*三目运算符
     * */

//    将a和b做义工比较  将变量大的值赋值给c
int a,b,c;
a=10;
b=10;
c=0;
          c= (a>b?a:b) ;
          cout<<"值为:"<<c<<endl;

//    创建三个变量 a b c
//在c++中三目运算符返回的是变量 可以继续赋值
    system("pause");
    return 0;
}

6.Switch语句

Switch:执行多条件分支语句




#include <iostream>


using namespace std;
int main() {

//    switch语句

//1.提示用户输入
cout<<"请给电影打分"<<endl;

//2.用户开始评分
int  score=0;
cin>>score;
cout<<"你打的分数是"<<score<<endl;

//4.根据用户输入的分数的不同来输出最后的结果
    switch (score) {
        case 10:
            cout<<"您认为是经典"<<endl;
            break;//退出这个分支

        case 9:
            cout<<"你认为是经典"<<endl;
            break;//退出这个分支

        case 8:
            cout<<"烂片"<<endl;
            break;
    }


    std::cout << "程序结束" << std::endl;
    return 0;
}


switch缺点:判断时候只能是整型或者字符型 不可以是一个区间
    		优点:结构清晰 执行效率高

第五章:循环结构

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值