2025GESP笔记📒(第一章)
1、输入输出那些事儿
#include<bits/stdc++.h>
using namespace std;
int main(){
//输入输出的那些事儿
cin cout
scanf() printf()//万物皆可读
格式:
cin>> cout<< 慢(关闭同步流)
ios::sync_with_stdio(false);
cin.tie(0);
scanf("%d",&x); printf("%d",x); 高 能够读入所有信息
效率:数据量在万级以下区别不明显
return 0;
}
cin返回值为判断是否与容器的类型一致(true 或 false)
2、题目示例
#include<bits/stdc++.h>
using namespace std;
const int N = 105;
char arr[N];
int main(){
int n;
char x;
cin>>n;
for(int i=1;i<=n;i++){
scanf("%c",&x);
arr[i]=x;
}
for(int i=n;i>0;i--){
int idx = arr[i]+1;
if(idx % 2 == 0){
printf("%d ",i);
}
}
return 0;
}
3、课堂练习二 (未知数量,指定结束符)
重要代码
int x ;
while(cin >> x){
// cin 自动忽略空格,输入数据与容器类型是否一致
}
或
while(scanf("%d",&x) == 1){
// 判断有效的获取数据数量
}
4、课堂练习三 (结束符也符合容器类型判断)
重要代码
int n;
while(cin >> n && n !=0 ){
}
5、课堂练习四
#include<bits/stdc++.h>
using namespace std;
int main(){
int p,x,sum;
p=1;
x=15;
sum=x;
// cout<<p<<" "<<x<<" "<<sum<<endl;
###6、课堂练习五
```cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
int time,count,teacher, mingming.meimei;
bool flag;
time=0;
count=1;
teacher=mingming=meimei=0;
do{
flag = 0;
time++;
if(teacher<9){
{flag=1;teacher++;}
}
if(mingming<9&&time%2==0){
{flag=1;mingming++;}
}
if(meimei<9&&time%4==0){
{flag=1;meimei++;}
}
if(flag)count++;
}while(teacher+mingming+meimei<9*3);
cout<<count<<endl;
return 0;
}
do{
p++;
x+=2;
sum+=x;
// cout<<p<<" "<<x<<" "<<sum<<endl;
}while(sum!= 312);
cout<<x<<endl;
cout<<p<<endl;
return 0;
}
7、课堂练习五
模拟
报数游戏
#include<bits/stdc++.h>
using namespace std;
int main(){
int num=1,nike=1,klair=1;
for(int i=1;i<=1000;i++){
nike++;
klair++;
if(nike>20){
nike=1;
}
if(klair>30){
klair=1;
}
if(nike == klair){
num=num+1;
}
}
cout<<num;
return 0;
}