2026.2.18——OJ86-88题

T86:字符串统计------字符串

代码实现:

#include <iostream>

#include <string>

using namespace std;

int main(){

int n;

cin>>n;

cin.ignore();//忽略整数后的换行符

for(int i=0;i<n;i++){

string s;

getline(cin,s);//读取一行字符串(可能包含空格)

int count=0;

//统计小写字母个数

for(char c:s){

if(c>='a'&&c<='z'){

count++;

}

}

cout<<count<<endl;

}

return 0;

}

个人思考:

注意这道题输入数字n后会有一个换行符,所以需要cin.ignore();//忽略整数后的换行符,后面就是通过遍历输入的n行,然后统计对应的小写字母个数,符合就count++。

T87:弟弟的作业------字符串

代码实现:

#include <iostream>

#include <string>

using namespace std;

int main(){

string s;// 存储每行题目

int cnt=0;

while(cin>>s){

size_t p=s.find_first_of("+-");//找到运算符位置

char op=sp;//存储运算符

size_t q=s.find('=');//找到等号位置

//提取数字a和b(字符串转整数)

int a=stoi(s.substr(0,p));//从字符串中提取a这个数字

int b=stoi(s.substr(p+1,q-p-1));//从字符串s中提取b这个数字,p+1是起始位置,q-p-1是截取的长度。

string t=s.substr(q+1);//提取等号后的部分

if(t=="?") continue;//不会做,本题不计入正确

int c=stoi(t);//弟弟算出的答案

int right=(op=='+')?a+b:a-b;//正确结果

if(right==c) cnt++;

}

cout<<cnt<<endl;// 输出答对题目数

return 0;

}

个人思考:

这道题主要用到(1)find函数:在字符串中查找指定的字符或子串,返回第一次出现的位置(索引);(2)substr函数:从字符串中提取一段子串;(3)stoi函数:将字符串转换为int类型的整数。先通过find函数定位"+/-"运算符和"="运算符,然后提取前面的操作数,以及处理等号后的结果,通过计算正确的结果和弟弟计算的结果进行比较,答对则cnt++。最后输出答对的数量。

T88:字符串排序------字符串

代码实现:

#include <iostream>

#include <string>

using namespace std;

int main(){

string line;

while( getline(cin,line)****){

int cnt26={0};

//统计每个字母出现次数

for(char c:line){

if(c>='a'&&c<='z'){

cntc-'a'++;

}

}

//按字母顺序输出

for(int i=0;i<26;i++){

for(int j=0;j<cnti;j++){

cout<<char('a'+i);

}

}

cout<<endl;

}

return 0;

}

个人思考:

这道题采用while循环,因为字符串中可能有空格,所以采用**getline(cin,line),**接着统计其中每个字母出现的次数,然后输出的时候双重循环,外层循环的范围是26个英文字母的顺序,内部循环的范围是每个字母出现的次数,cout<<char('a'+i);每一行输出之后然后输出换行符。

英语翻译:

P60:I.介绍

计算机科学是对理论、实验与工程的研究,这些内容构成了计算机设计与使用的基础------而计算机是能够自动处理信息的设备。计算机科学的源头可追溯至英国数学家查尔斯·巴贝奇的工作,他在1837年首次提出了可编程机械计算器的构想。20世纪40年代电子数字计算机出现之前,计算机科学通常并未被视为与数学和工程学相互独立的学科。自那以后,它催生了众多专属于这一学科的研究分支。

mechanical:机械的

calculator:计算器

sprouted:萌芽;涌现;长出(sprout 的过去式)

P61:II.计算机科学的发展

在20世纪40年代末至50年代初,计算机科学领域的早起工作主要集中在自动化计算过程,以服务于科学与工程领域的应用。科学家和工程师们构建了计算理论模型,借此分析不同方法执行各类计算时的效率。这一时期,计算机科学与数学分支------数值分析(研究计算的准确性与精确性)存在大量交叉。

overlapped:重叠;交叉;部分重合

numerical analysis:数值分析

P62:随着20世纪50年代到70年代计算机应用的普及,计算机科学的研究范围也随之拓宽,开始涵盖通过编程语言(用于对计算机进行编程的人工语言)和操作系统(在计算机与用户之间提供使用交互界面的计算机程序)来简化计算机使用的内容。在这一时期,计算机科学家也在试验新的应用场景和计算机设计方案,创建了最早的计算机网络,并探索计算与思维之间的关系。

背单词:

相关推荐
ShineWinsu4 小时前
对于Linux:内核是如何组织管理IPC资源的解析
linux·服务器·c++·面试·笔试·线程·ipc
少司府4 小时前
C++进阶:红黑树
开发语言·数据结构·c++·b树·二叉树·红黑树
工业胶粘剂技术4 小时前
单组分高温环氧结构胶 K-EP280 完整技术参数与工程选型分析
算法·制造
汉克老师4 小时前
GESP6级C++考试语法知识(五十五、动态规划----背包问题(八、混合背包)
c++·动态规划·dp·背包问题·gesp六级·混合背包问题
特种加菲猫4 小时前
哈希表的实现
开发语言·c++
玖釉-4 小时前
nvpro_core2 详解:NVIDIA Vulkan / OpenGL 图形样例背后的现代 C++ 基础库
c++·windows·图形渲染
不会C语言的男孩4 小时前
C++ Primer 第19章:特殊工具与技术
数据结构·c++
不会C语言的男孩5 小时前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
星恒随风5 小时前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
Cx330❀5 小时前
【MySQL基础】库与表的全面操纵指南
linux·服务器·网络·数据库·c++·mysql