2025GESP笔记📒(第一章)

1、输入输出那些事儿

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. //输入输出的那些事儿
  5. cin cout
  6. scanf() printf()//万物皆可读
  7. 格式:
  8. cin>> cout<< 慢(关闭同步流)
  9. ios::sync_with_stdio(false);
  10. cin.tie(0);
  11. scanf("%d",&x); printf("%d",x); 能够读入所有信息
  12. 效率:数据量在万级以下区别不明显
  13. return 0;
  14. }

cin返回值为判断是否与容器的类型一致(true 或 false)

2、题目示例

第一章 - 图1

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const int N = 105;
  4. char arr[N];
  5. int main(){
  6. int n;
  7. char x;
  8. cin>>n;
  9. for(int i=1;i<=n;i++){
  10. scanf("%c",&x);
  11. arr[i]=x;
  12. }
  13. for(int i=n;i>0;i--){
  14. int idx = arr[i]+1;
  15. if(idx % 2 == 0){
  16. printf("%d ",i);
  17. }
  18. }
  19. return 0;
  20. }

3、课堂练习二 (未知数量,指定结束符)

第一章 - 图2

重要代码

  1. int x ;
  2. while(cin >> x){
  3. // cin 自动忽略空格,输入数据与容器类型是否一致
  4. }
  5. while(scanf("%d",&x) == 1){
  6. // 判断有效的获取数据数量
  7. }

4、课堂练习三 (结束符也符合容器类型判断)

第一章 - 图3

重要代码

  1. int n;
  2. while(cin >> n && n !=0 ){
  3. }

5、课堂练习四

第一章 - 图4

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. int p,x,sum;
  5. p=1;
  6. x=15;
  7. sum=x;
  8. // cout<<p<<" "<<x<<" "<<sum<<endl;
  9. ###6、课堂练习五
  10. ```cpp
  11. #include<bits/stdc++.h>
  12. using namespace std;
  13. int main(){
  14. int time,count,teacher, mingming.meimei;
  15. bool flag;
  16. time=0;
  17. count=1;
  18. teacher=mingming=meimei=0;
  19. do{
  20. flag = 0;
  21. time++;
  22. if(teacher<9){
  23. {flag=1;teacher++;}
  24. }
  25. if(mingming<9&&time%2==0){
  26. {flag=1;mingming++;}
  27. }
  28. if(meimei<9&&time%4==0){
  29. {flag=1;meimei++;}
  30. }
  31. if(flag)count++;
  32. }while(teacher+mingming+meimei<9*3);
  33. cout<<count<<endl;
  34. return 0;
  35. }
  1. do{
  2. p++;
  3. x+=2;
  4. sum+=x;
  5. // cout<<p<<" "<<x<<" "<<sum<<endl;
  6. }while(sum!= 312);
  7. cout<<x<<endl;
  8. cout<<p<<endl;
  9. return 0;

}

7、课堂练习五

模拟 报数游戏 第一章 - 图5

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. int num=1,nike=1,klair=1;
  5. for(int i=1;i<=1000;i++){
  6. nike++;
  7. klair++;
  8. if(nike>20){
  9. nike=1;
  10. }
  11. if(klair>30){
  12. klair=1;
  13. }
  14. if(nike == klair){
  15. num=num+1;
  16. }
  17. }
  18. cout<<num;
  19. return 0;
  20. }

8、课堂练习六

局部截取_20250711_195125.png

9、课堂练习七(九九乘法表)

第一章 - 图7