C++语言学习

C++学习笔记

基本格式

#include <iostream>//插入一个扩张文件,使得可以调用相关的函数。
#//若要使用其他函数可再添加头文件
using namespace std;//设置一个域名,使得该区域变量与其他区域不冲突。
int main()//主函数
{
        ;
        ;
    return 0
}

数据(变量)类型

类型关键字
布尔型bool
字符型char
整型int
浮点型float
双浮点型double
无类型void
宽字符型wchar_t

运算符

运算符描述实例
+把两个操作数相加A + B 将得到 30
-从第一个操作数中减去第二个操作数A - B 将得到 -10
*把两个操作数相乘A * B 将得到 200
/分子除以分母B / A 将得到 2
%取模运算符,整除后的余数B % A 将得到 0
++自增运算符,整数值增加 1A++ 将得到 11
自减运算符,整数值减少 1A-- 将得到 9

逻辑运算符

逻辑运算符描述实例
&&称为逻辑与运算符。如果两个操作数都 true,则条件为 true。(A && B) 为 false。
||称为逻辑或运算符。如果两个操作数中有任意一个 true,则条件为 true。(A || B) 为 true。
!称为逻辑非运算符。用来逆转操作数的逻辑状态,如果条件为 true 则逻辑非运算符将使其为 false。!(A && B) 为 true。

定义变量

全局变量:

int a=1//定义a为整数型,且赋值为1

若只int a则只是声明一个变量,在调用时会出现报错的情况

需要将变量初始化

int a=0

int a[1000]={0}

若在前面加const则是将变量转化为静态(常量),使其不能被后面的程序所改变。

#include <iostream>
using namespace std;
int main()
{
    const double p1=52.0,p2=13,p3=14;//定义常量,不能被改变。
    double total=0;
    int n1=0,n2=0,n3=0;//变量初始化,
    cout << "三种商品的价格为:" << p1 << ',' << p2 << ',' << p3 << '\n';
    cout << "请问每样需要买几件?" << endl;
    cin >> n1 >> n2 >> n3 ;
    total=n1*p1+n2*p2+n3*p3;
    
    cout << total << endl;
    return 0
}
局部变量:

在某一函数或语句(循环)中定义的变量(如i)为局部变量,循环外不可用。

数组

int arr[12]={0} //定义一个容量为12的一维数组并将其初始化为0.

int arr[4][3]={0}//定义一个容量为4列3行的二维数组并将其初始化为0

字符数组

字符数组是由于若干个数组元素组成的,它可用来存放整个字符串。

char str[]={"darling"} //整体赋值。

char str[7]={'d','a','r','l','i','n','g'}//逐个赋值。

循环语句

for循环

for (int i = 0; i < n; i++) { // 在循环中定义的变量(如i)为局部变量,循环外不可用。i++是i自加1,当i不满足 i < n时,跳出循环
 cout << i;
 }

while循环

#include <iostream>
using namespace std;
int main ()
{
   int a = 0;
   while( a < 6 )//当括号内的条件为假时,跳出循环。
   {
       a++;
   }
 
   return 0;
}

另一种跳出循环的另一个例子

#include <stdio.h>
using namespace std;
int main()
{ 
    int x = 10;
    int y = 0;
    while (x--) //当x=0时,也能跳出循环
    {
        ++y;
    }
    return 0;
}

条件语句

#include <iostream>
using namespace std;
int main()
{
    int year = 0;
    cin >> year;
    if (year <0)
    {
        cout<<"in the hell,my bro?"<<endl;
    }
    else if(year==0)
    {
        cout<<"the world start!"<<endl;
    }
    else
    {
        if (year%4==0)//括号写的是进入该语句的条件。满足则进入
    	{
        	cout << "Yes" << endl;
    	}
    	else
    	{
        	cout << "No" << endl;
    	}
    }
    return 0;
}

if语句短路

`int x=1,i=1;

if(x>0||++i)`

`int x=1,i=1;

if(x<0&&i++)`

前面条件判断为真,则进入语句,不会执行自加操作。

函数

在主函数外定义一个函数

return_type function_name( parameter list )
{
   body of the function
}

调用函数

创建 C++ 函数时,会定义函数做什么,然后通过调用函数来完成已定义的任务。

当程序调用函数时,程序控制权会转移给被调用的函数。被调用的函数执行已定义的任务,当函数的返回语句被执行时,或到达函数的结束括号时,会把程序控制权交还给主程序。

调用函数时,传递所需参数,如果函数返回一个值,则可以存储返回值。

#include <iostream>
using namespace std;
 
int max(int num1, int num2);
{
   int result;
   if (num1 > num2)
      result = num1;
   else
      result = num2;
   return result; 
}
int main ()
{
   int a = 100;
   int b = 200;
   int ret;
   ret = max(a, b);
   cout << "Max value is : " << ret << endl;
   return 0;
}

递归

将一个循环的问题拆分成能完成的最小子问题单元,将解决这个问题的标准,扩大到整个问题。例:斐波那契数列,最小子问题:数=前两数+前一数。

int Fib(int n) {
    if (n < 2)
        return 1;
    return Fib(n - 1) + Fib(n - 2);

结构体

允许用户自己指定这样一种数据结构,它由不同类型的数据组合成一个整体,以便引用,这些组合在一个整体中的数据是互相联系的,这样的数据结构称为结构体。

struct 结构体名
{成员列表};

先声明再定义

struct member{  //结构体类型名
    ...
    ...
    ...
}member1, member2 //结构体变量名

声明同时定义

struct member
{  
	int number;
    int name;
}member1, member2 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值