【C++初级】1、输入输出

1、什么是C++语言

在学习任何新技术的时候,我们最好的帮手就是搜索引擎,善于使用搜索引擎会帮助我们快速掌握新技术。

百度上对C++的解释是:

C++是一种计算机高级程序设计语言,由C语言扩展升级而产生 ,最早于1979年由本贾尼·斯特劳斯特卢普在AT&T贝尔工作室研发。

通俗的讲C++就是一门语言,和我们平时接触的汉语,英语,法语没什么区别,只不过这种语言是给计算机读的,所以我们要学习对应的语法规则,让计算机能读的懂,同时人也能读的懂。

那么学编程语言有什么用呢?

要比赛[doge],当然这是一个最最基本的原因啦,编程比赛至少要掌握一门编程语言。但是除此之外呢?

最重要的是编程思维的培养,未来的社会各行各业都需要编程,即使最后没有从事互联网行业,有了编程思维将有助于从事各行各业,对于低年龄段的同学来说,学习编程也可以培养数学思维,编程的尽头就是数学。

其次就是编程语言的工具属性,比如现在你要给几千行的文本添加一个句号,如果你没学过编程,你可能会一个一个去标,但是学过编程之后,花2分钟写一个程序,一秒钟就可以完成工作。


2、编译器准备

下载

工欲善其事必先利其器

首推DEV C++,特点是简单不用配置,开箱即用,

官网下载地址:https://www.bloodshed.net/ 可能会被墙,不行就用下面的镜像

镜像下载地址:https://sourceforge.net/projects/orwelldevcpp/

百度网盘下载:链接:https://pan.baidu.com/s/1wYHRgtjqnWkCPpZWGVgBIg
提取码:6uoj

下载后建议打开C++11,具体操作可以参考这篇文章:https://blog.csdn.net/try17875864815/article/details/104796758

其次是VSCode,配置较麻烦,可参考这篇文章:https://zhuanlan.zhihu.com/p/87864677

我的建议是使用devc++,避免VSCode繁琐配置消磨耐心。

使用

建议一个文件夹,例如C++初级代码,在devc++里新建源代码文件,保存在此文件夹内,文件名随便怎么定义,一般来说都是按照题目名来定义。


3、第一个C++程序

接下来我们就开始学习第一个C++程序,Hello,World!

#include<bits/stdc++.h>   --->头文件,使用万能头文件
using namespace std;      --->意思是使用标准命名空间,一般程序导入这个就够用了

int main()                --->主函数
{
    cout<<"Hello,World"<<endl;  --->输出“Hello,World”
    return 0;             --->返回0
}

在几乎所有编程语言中,我们都有标注当前代码含义的需求,所以我们可以在代码中使用注释,注释是不会影响我们的代码逻辑的,也不会被编译。在C++中我们使用//来表示单行注释,用/*注释的内容*/表示多行注释。

现在你对C++程序已经有了一定的了解了,不难发现有些代码是重复的,那么这些重复的代码在我们每次做题都可以先敲出来,然后再去写具体的代码。

这段重复的代码如下

#include<bits/stdc++.h>
using namespace std;

int main()
{
    
    return 0;
}

4、示例程序

首先我们来看一个经典的C++程序(输入两个数,求和并输出在屏幕上)

#include<bits/stdc++.h>
using namespace std;

int main()         //主函数首部
{                  //函数体开始
    int a,b,c;     //定义变量---声明语句
    cin>>a>>b>>c;  //输入数据---输入语句
    c = a + b;     //计算---赋值语句
    cout<<c<<endl; //输出结果并换行---输出语句
    return 0;      //程序正常结束,向操作系统返回0
}                  //函数结束

上述程序一共有四个部分

  1. 定义变量
    • 指定变量的数据类型,上题使用的是int 即整型变量
    • 指定变量名称,上题使用三个英文字母作为变量的名称
  2. 输入数据
    • cin >>变量1>>变量2>>变量3 ……
  3. 计算
    • 一个等号用于赋值,上题将a + b 的结果赋值给c
    • c 变成a + b的值
    • a 和 b 大小不发生改变
  4. 输出计算结果
    • cout<<结果1<<结果2<<….

注意:每行语句的结束要加封号(;)

接下来详细介绍一下声明语句、赋值语句和输入输出语句

声明语句

数据都要他的类型,这规定了他的特性,可以方便编程者使用。

常见的数据类型

在这里插入图片描述

定义变量

语句格式:数据类型 变量1,变量2,变量3…变量n;

示例

int a,b,c;
float a1,b2,c3;
double x,y,z;
bool flag;
char zf;

变量命名规则

  1. 只能使用英文字母、数字和下划线(_)
  2. 第一个字符不能是数字
  3. 不能是系统的保留字(关键字)
  4. 区分大小写

系统保留字(不用刻意去记,出错了再来看看,这样记忆深刻,我也背下来,单纯背没有意义)

在这里插入图片描述

赋值语句

格式:变量 = 表达式;

示例

int a;//定义变量a
a = 5;
a = a + 5;//加法   ---> 可以简写成 a += 5;
a = a * 2;//乘法   ---> 可以简写成 a *= 5;
a = a / 2;//除法   ---> 可以简写成 a /= 5;
a = a - 2;//减法   ---> 可以简写成 a -= 5;
a = a % 2;//取模   ---> 可以简写成 a %= 5;

//对于a = a + 1只增加1或者只减少1,可以使用自增或者自减
自增:a++; 或者++a;
自减: a--; 或者--a;

输入输出语句

读入:cin>>变量1>>变量2….;

注:cin默认不会读入空格和换行

输出:cout<<结果<<endl;

注:endl是换行的意思

格式化输出小数

setprecision(n)

cout<<setprecision(n); //设置浮点数的精度,即小数的有效字个数。
cout<<fixed<<setprecision(n);//以固定小数位的形式输出,指定小数位数

例子
    double a = 2.567356
    cout<<setprecision(6)<<a<<endl;
	cout<<fixed<<setprecision(3)<<a<<endl;
输出
    2.567356
    2.567

5、例题

A + B问题是一个很经典的入门程序,我们挑选一个OJ(Online Judge 网上测评)来测试一下我们的程序是否正确。

题目链接:https://www.acwing.com/problem/content/1/

在这里插入图片描述

提交后发现,结果显示Accepted 说明我们的程序是正确的,可以通过所有测试点。


6、常见评测结果

ACAccepted通过
WAWrong Answer答案错误
TLETime Limit Exceed超时
OLEOutput Limit Exceed超过输出限制
MLEMemory Limit Exceed超内存
RERuntime Error运行时错误
PEPresentation Error格式错误
CECompile Error无法编译

7、更多练习

题目链接如下

  1. https://www.luogu.com.cn/problem/P5703
  2. https://www.luogu.com.cn/problem/P5708
  3. https://www.luogu.com.cn/problem/P5706
  4. https://www.luogu.com.cn/problem/P5705
  5. https://www.luogu.com.cn/problem/P1425
  6. https://www.luogu.com.cn/problem/P5709
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 蓝桥杯C初级组省赛题目是一道程序设计题,要求参赛者设计程序,找出给定数组中的最大值和最小值,并计算它们的差值。 对于这道题目,可以通过遍历数组的方式找出最大值和最小值,并计算它们的差值。首先,设定两个变量max和min,分别代表最大值和最小值,初始值分别为数组的第一个元素。然后,遍历数组的每一个元素,如果该元素大于max,则将max更新为该元素,如果该元素小于min,则将min更新为该元素。最后,用max减去min,即可得到最大值和最小值的差值。 具体的算法步骤如下: 1. 设定变量max和min,初始值为数组的第一个元素arr[0]。 2. 遍历数组的每一个元素arr[i],从下标1开始。 3. 如果arr[i]大于max,则更新max为arr[i]。 4. 如果arr[i]小于min,则更新min为arr[i]。 5. 继续遍历数组,直到最后一个元素arr[n-1]。 6. 计算差值diff,即max减去min。 7. 输出差值diff。 这样就可以得到数组中最大值和最小值的差值。这道题目考察了参赛者对于数组遍历和条件判断的理解和应用。编写代码时,可以使用for循环来遍历数组,用if语句进行条件判断,并利用变量来存储最大值和最小值。最后,输出差值即可。这道题目考验的是参赛者的基本编程能力和对数组处理的熟练程度。 ### 回答2: 蓝桥杯C初级组省赛题目要求解决一个具体的编程问题,常见的包括数学问题、字符串处理、图形绘制等。以某年度的蓝桥杯C初级组省赛题目为例,该题目为编写一个程序,输入两个整数a和b,输出它们的和。 首先,我们要编写一个C程序,可以使用C语言编译器来实现。通过获取用户输入的两个整数a和b,可以使用变量来存储这两个值。 接下来,我们可以通过将这两个整数相加,并将结果存储在一个新的变量中。 最后,我们可以使用printf函数来输出计算结果,以便用户可以看到这两个整数的和。 这个题目比较简单,只需要使用基本的C语言知识即可完成。例如,可以使用scanf函数来获取用户的输入,使用运算符+来进行两个变量的相加,使用printf函数来输出结果。 在编写代码的过程中,需要注意输入和输出的格式,以及边界条件的处理。例如,如果输入的数字非整数,应该对输入进行错误处理。 通过以上步骤,我们可以解决蓝桥杯C初级组省赛的问题,并将结果输出给用户。这个例子只是为了说明题目要求,并不是实际的蓝桥杯C初级组省赛题目。实际的题目可能更加复杂,需要运用更多的编程知识和技巧。通过参加蓝桥杯的比赛,可以提高自己的编程能力,增加编程经验,并锻炼解决问题的能力。同时,蓝桥杯也是一个交流和学习的平台,可以认识到更多热爱编程的同学,共同提高。 ### 回答3: 蓝桥杯C初级组省赛题目是一个计算数列的问题。题目给出了一个数列的前两项和计算公式,要求根据公式计算出指定位置的数列项。 解题思路是使用循环迭代的方法,从第三项开始按照公式计算每一项,直到计算到指定位置的项。首先定义变量a和b,分别表示数列的前两项。然后使用循环迭代的方法,从第三项开始计算每一项并存储到变量temp中。计算完当前项后,将a和b的值分别更新为b和temp,即当前项变成了下一轮迭代的前两项。 根据题目要求,我们需要计算的是数列的第n项。所以在循环迭代的过程中,设置一个计数器count用来记录当前迭代的是第几项。当count等于n时,循环结束。此时temp中保存的就是数列的第n项的值。 最后,返回temp即可得到答案。 这个题目的难点在于理解并正确运用迭代的思想,以及注意处理好计数器的增加和中止条件的判断。通过仔细观察数列的规律,我们可以得到有效的计算方法,解决这道题目。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值