目录
认识代码
结构
想要入门先要认识c++代码。(编译器建议使用dev-c++,几乎所有的信息学c++竞赛都保证有它)
#include <bits/stdc++.h>
//这是头文件,万能头,将所有的头文件包括在内了,调用方便
using namespace std;
//名称空间
int main(){
//这是主函数,也就是一开始会运行的,一定不要忘了用括号把程序包起来
//除了函数,其他的代码基本上都在这运行
return 0;
//返回0,代表程序正常运行,你可以作死试试返回不同的数(你会死的很惨的)
}
//别忘了后括号
a+b问题
代码
这就是代码结构了,下面是a+b问题的代码和解析:
#include <bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
//定义变量,也叫声明语句,将类型写在前面,后面是变量名,用逗号隔开,只能由字母、下划线、数字组成
//定义格式:a, _, _a, a_, a1, a_1, a1_, _a1(注:他们不能与c++关键字相同,比如for或if)
cin>>a>>b;
//输入语句,也可以用scanf,作者偏心,喜欢cin(其实是不想用scanf,然后忘了怎么用了)
c=a+b;
//赋值语句,格式:变量=表达式,加:+,减:-,乘:*,除:/,取余数:%(注:%念模,只能对整型变量进行操作)
//如果变量只做一次操作,也可以用+=,-=,*=,/=,%=,先算等于号后面的,再见操作运行到变量上(注:赋值时不要忘了先声明)
cout<<c;
//输出语句
//也可以直接在输出时计算:
cout<<a+b;
return 0;
/*注释,两个斜杠后一整行不会运行
也可以这么写,斜杠加*号开头,*号加斜杠结尾,可以换行*/
}
a+b代码的骨架
1. 定义变量
指定变量数据类型(int)
,指定变量名称
2. 输入数据
cin
>>
变量
1
>>
变量
2
>>
……
;
3. 计算
用赋值语句计算表达式值
输出计算结果:
cout
<<
计算结果
1
<<
计算结果
2……;
或者用输出语句计算表达式值
cout
<<
表达式
……
;
定义变量(声明语句)
数据类型:
定义语句格式:
数据类型 变量1,变量2,…变量n;
输入输出语句
cin >> 变量1 >> 变量2 >>……;
cout << 计算结果1 << 计算结果2……;
cout
<<
表达式
……
<<
endl
;
(注:endl是指换行)
a/b问题
#include <bits/stdc++.h>
using namespace std;
int main(){
double a,b;
//不要用float,小数精度太低,用double来存小数(注:如果整数相除会自动向下取整)
cin>>a>>b;
a=a/b;
//也可以写作 a/=b;
cout<<fixed<<setprecision(2)<<a;
// fixed和setprecision(保留小数的位数)可以决定保留的小数点后位数
//没有fixed代表所有的数位要保留的位数
return 0;
}
printf(便于格式化)
虽然我不怎么用它,也不怎么擅长用它,但还是讲讲吧
格式:
printf("格式符",输出内容(可能有多个,用空格分隔,一个格式符对应一个输出))
例:printf("%.3lf",3.3);
输出:3.300(注:如果位数少了补0,超过了则自动将输出后一位四舍五入)
格式符:
数据类型 | 格式字符 | 意义 |
整数 | d | 十进制形式输出带符号整数(正数不输出符号) |
o | 八进制形式输出无符号整数(不输出前缀0) | |
x,X | 十六进制形式输出无符号整数(不输出前缀0) | |
u(unsigned) | 十进制形式输出无符号整数 | |
浮点数 | f,lf | 小数形式输出单,双精度实数 |
e,E | 指数(科学计数法)形式输出单,双精度实数 | |
g,G | 以上面两者中较短一项输出 | |
字符 | c | 输出单个字符 |
字符串 | s | 输出字符串 |
简单入门问题
https://www.luogu.com.cn/problem/B2036
提交
(别忘了开c++14和O2优化,O2优化可是个好东西)
全是绿色表示通过了
有兴趣可以自己洛谷里多刷点题(要筛选一下输入输出,找点简单的做做)