2015.09.09 C++笔记

#include <iostream>
#include <string>
using namespace std;

int count( const string &s, char ch, int &index )
{
    index = s.size();
    int counter = 0;
    for (int i = 0; i<s.size()+1; i++)
    {
        if (s[i]==ch)
        {
            if (index == s.size()+1)index = i+1;
            counter++;
        }
    }
    return counter;
}

int main()
{
    //02.返回字符串中某字符的数量和首次出现的位置,若没有则返回0和字符串长度
    string s; char ch;
    cin>>s;
    cin>>ch;
    int counter, index;
    counter = count(s, ch, index);
    cout<<counter<<" "<<index<<endl;

    //01.提示输入密码,如果两次输入不一致则报错。使用try, throw和catch
    string s1, s2;
    try
    {
        cout<<"Please enter password:"<<endl;
        cin>>s1;
        cout<<"\nPlease enter again:"<<endl;
        cin>>s2;
        if (s1 != s2)
            throw runtime_error("wrong password!");
    }
    catch (runtime_error err)
    {
        cerr<<err.what()<<endl;
    }

    cin>>s1;
    return 0;
}
时间: 2024-10-25 12:33:46

2015.09.09 C++笔记的相关文章

张珺 2015/07/09 个人文档

姓名 张珺 日期 中蓝公寓蓝芳园D507,2015/07/09 主要工作及心得 在今天的设计工作中, 我完成了操作者界面中12个界面的设计工作.并参与了部分代码的合并工作. 通过今天对界面的设计工作,我学会了Java中界面设计的方法,以及相应控件的使用方式. 遇到的问题 由于之前对于Java中界面设计并没有深入学习,对于界面之间的跳转和空间的使用也不太了解,设计时在这方面遇到了一些问题. 解决方法 因为经理.提供者等界面的编写工作已由其他同学完成,因此,遇到问题的大部分问题都可以在同伴的帮助下解

C#正则表达式基础 [0-9][0-9] 检测字符串是否存在两个相邻的数字

1 代码 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Net; 5 using System.Text; 6 using System.Text.RegularExpressions; 7 using System.Threading.Tasks; 8 9 namespace ConsoleApplication7 10 { 11 class Program 12

2019.09.09学习整理

2019.09.09学习整理 基于socket套接字的UDP协议 UDP套接字示例 客户端 import socket cli = socket.socket(type=socket.SOCK_DGRAM) while True: msg = input('>>:').strip() cli.sendto(msg.encode('utf-8'), ('127.0.0.1', 8003)) data,ser_addr=cli.recvfrom(1024) cli.close() 服务端 impo

2015.09.05 组成原理笔记

一二.概论 三.系统总线 四.存储器 1. 存储器层次结构: 寄存器 缓存(Cache) 主存 辅存(磁盘,磁带) 2. 静态RAM[坑] 动态RAM[坑] ROM 只读存储器 PROM (一次性)可编程只读存储器 EPROM 可擦除可编程只读存储器 EEPROM 电擦除可编程只读存储器 Flash Memory 闪存 3. Cache地址映射[坑]

2015.09.05 网络笔记

IPv4地址 {<网络号><主机号>} 主机号全为零的表示网络本身,全为1的表示网络的广播地址 A类:1~126,网络号为第一个字节 B类:128~191,网络号为前两个字节 C类:192~223,网络号为前三个字节 D类:224~239,多播地址 私有IP地址(可以被LAN重复使用) A类:10 B类:172.16~172.31 D类:192.168

2015.09.06 C++笔记

void Func(char str_arg[100]) { printf("%d\n", sizeof(str_arg)); } int main(void) { char str[] = "Hello"; printf("%d\n", sizeof(str)); printf("%d\n", strlen(str)); char *p = str; printf("%d\n", sizeof(p));

2015.09.08 C++笔记

#include <iostream> #include <string> using namespace std; int *f1(int *i) { ++(*i); return i; } int *f2(int *i) { return i; } void f3(int *i, int *j) { cout << *i <<" "<< *j <<endl; } int main(void) { //04.si

2015.09.06 数据库笔记

第一章 数据模型三要素:数据结构,数据操纵,完整性约束主要的数据模型:层次模型,网状模型,关系模型完整性约束:实体完整性,参照完整性,用户定义完整性 数据库管理系统将具有一定结构的数据组成一个集合,它主要具有以下几个特点:1. 数据的结构化 数据库中的数据并不是杂乱无章.毫不相干的,它们具有一定的组织结构,属于同一集合的数据具有相似的特征.2. 数据的共享性 在一个单位的各个部门之间,存在着大量的重复信息.使用数据库的目的就是要统一管理这些信息,减少冗余度,使各个 部门共同享有相同的数据.3.

2015.09.04 数据结构笔记

插入排序:直接插入排序,希尔排序交换排序:冒泡排序,快速排序选择排序:简单选择排序,堆排序归并排序 所有简单排序都是稳定的,所有高级排序都是不稳定的,归并排序是稳定的:所有简单排序时间复杂度都是O(n2),所有高级排序和归并排序都是O(nlogn)所有简单排序和选择排序(如堆排序)辅助空间都是O(1),快速排序为O(logn),归并排序为O(n2)