Cpp 语法基础总结

入门

打开编译软件,出现的第一个程序肯定是Hello Word!

#include <iostream>
using namespace std;  //C++的命名空间,可以让在不同命名空间中的函数名或变量名相同
int main()
{
   
    cout << "Hello world!" << endl;
    return 0;
}

语法基础

变量的定义:变量必须先定义,才可以使用。不能重名。

变量定义的方式:

#include <iostream>
using namespace std;
int main()
{
   
    int a=5;
    int c=a,d=10/2;
    
    return 0;
}

在这里插入图片描述

输入输出

整数的输入输出:

#include <iostream>
using namespace std;
int main()
{
   
    int a,b;
    cin>>a>>b;
    cout<<a+b<<endl;
    return 0;
}

字符串的输入输出:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    string str;
    cin>>str;
    cout<<str;
    return 0;
}

输入输出多个不同类型的变量:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    int a,b;
    string str;
    cin>>a;
    cin>>b>>str;
    cout<<str<<" !!! "<<a+b<<endl;
    return 0;
}

表达式

整数的加减乘除四则运算:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    int a=6+3*4/2-2;
    cout<<a<<endl;
    int b=a*10+5/2;
    cout<<b<<endl;
    cout<<23*56-78/3<<endl;
    return 0;
}

在这里插入图片描述
浮点数(小数)的运算:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    float x=1.5,y=3.2;
    cout<<x*y<<' '<<x+y<<endl;
    cout<<x-y<<' '<<x/y<<endl;
    return 0;
}

整型变量的自增、自减:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    int a=1;
    int b=a++;
    cout<<a<<' '<<b<<endl;
    int c=++a;
    cout<<a<<' '<<c<<endl;
    return 0;
}

变量的类型转换:

#include <iostream>
#include <string>
using namespace std;
int main()
{
   
    float x=123.12;
    int y=(int)x;
    cout<<x<<' '<<y<<endl;
    return 0;
}

Printf语句与判断结构

printf输出格式

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    //注意:使用printf 时最好添加头文件 #include <cstdio>。
    printf("Hello World!");
    return 0;
}

Int、float、double、char等类型的输出格式:
(1)Int:%d
(2)Float: %f, 默认保留6位小数
(3)Double: %lf, 默认保留6位小数
(4)Char: %c, 回车也是一个字符,用’\n’表示
(5)Float, double等输出保留若干位小数时用:%.4f, %3lf

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    int a=3;
    float b=3.12345678;
    double c=3.12345678;
    printf("%5d\n",a);
// %8.3f, 表示这个浮点数的最小宽度为8,保留3位小数,当宽度不足时在前面补空格。
    printf("%8.3f\n",b);
// %-8.3f,表示最小宽度为8,保留3位小数,当宽度不足时在后面补上空格
    printf("%-8.3f\n",b);
//%08.3f, 表示最小宽度为8,保留3位小数,当宽度不足时在前面补上0
    printf("%08.3f\n",b);
    printf("%7.3f\n",c);
    return 0;
}

if 语句

1.基本if-else语句,当条件成立时,执行某些语句;否则执行另一些语句。
2.Else 语句可以省略。
3.当只有一条语句时,大括号可以省略。
常用比较运算符
(1) 大于 >
(2) 小于 <
(3) 大于等于 >=
(4) 小于等于 <=
(5) 等于 ==
(6) 不等于 !=

判断闰年,闰年输出Yes,反之输出No

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    int year;
    cin>>year;
    if(year%400==0 || (year%4==0 && year%100))
        puts("Yes");
    else puts("No");
    return 0;
}

循环结构

while循环

可以简单理解为循环版的if语句。If语句是判断一次,如果条件成立,则执行后面的语句;while是每次判断,如果成立,则执行循环体中的语句,否则停止。

求斐波那契数列的第n项。f(1)=1, f(2)=1, f(3)=2, f(n)=f(n-1) + f(n-2)。

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    int n;
    cin>>n;
    int a=1,b=1,i=1;
    while(i<n)
    {
   
        int c=a+b;
        a=b;
        b=c;
        i++;
    }
    cout<<a<<endl; 
    return 0;
}

死循环:循环永久执行,无法结束。我们要避免写出死循环。

do while循环

do while循环不常用。
do while语句与while语句非常相似。唯一的区别是,do while语句限制性循环体后检查条件。不管条件的值如何,我们都要至少执行一次循环。

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    int x=1;
    while(x<1)
    {
   
        cout<<"x!"<<endl;
        x++;
    }
    int y=1;
    do
    {
   
        cout<<"y!"<<endl;
    }while(y<1);
    return 0;
}

for 循环

基本思想:把控制循环次数的变量从循环体中剥离。
for (init-statement : condition: expression)
{
statement
}
init-statement可以是声明语句、表达式、空语句,一般用来初始化循环变量;
condition 是条件表达式,和while中的条件表达式作用一样;可以为空,空语句表示true
expression 一般负责修改循环变量,可以为空
init-statement可以定义多个变量,expression也可以修改多个变量。

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    for(int i=0;i<10;++i)
        cout<<i<<endl;
    return 0;
}

跳转语句

break可以提前从循环中退出,一般与if语句搭配。

判断一个大于1的数是否是质数。

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
   
    int n;
    cin>>n;
    bool is_prime=true;
    for(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

幸愉信奥

谢谢亲的支持,我会继续努力啦~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值