天梯赛L1常用知识(自我复习使用)

这篇博客介绍了C++中实现欧几里得算法求最大公约数的函数,以及如何初始化数组、结构体。同时,讲解了素数判断、循环输入的处理方法,以及字符串查找、删除和输出的相关函数。涉及到的知识点包括标准库函数如memset、结构体初始化、字符串处理等。
摘要由CSDN通过智能技术生成

欧几里得求约数

int gcd(int a, int b)
{
	return b ? gcd(b, a%b) : a;
}

初始化数组或字符串

memset(a, 0, sizeof(a));

初始化结构体

struct per
{
	int node;
	int money;
	int cnt;
}a[11000];
for (int i = 1; i <= n; i++) {
	a[i] = per{ i,0,0 };
}

素数筛

bool judge(int n)
{
    if(n<2)
    {
    	return false;
    }
    for(int i=2;i<=sqrt(n);i++)
        if(n%i==0)
        {
            return false;
            break;
        }
    return true;
}

如何卡循环输入

	while (getline(cin, a), a != ',') {//输入为','时截至

	}
	while (getline(cin, a)) {//没有输入时截至

	}

查找某个字符串的位置,返回字符下表,否则返回-1

int id=s.find("chi1 huo3 guo1");

字符串删除

1erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符

输出数据

	int a = 5;
	float b = 10;
	printf("%02d\n", a);
	printf("%.2f\n", b);
	return 0

正代表着左对齐,2卡的宽度是2,0代表用0去补位。
.2代表保留小数点后两位。
常见字符串函数

int ispunct(int c);
	//c是一个标点符号字符,则该函数返回非零值,否则返回0
	string strstr(string a, string b);
	//返回一个指针,指向string2在string1中出现的位置,否则返回NULL
	int tolower(int c);
	//将字符转化为小写字母,非字母字符不做处理,可以直接接字符串
	//处理的阿斯克码值
	char *strncpy(char *destinin, char *source, int maxlen);
	//destinin:表示赋值的目标字符数组
	//source:表示复制的源字符数组
	//maxlen:表示复制的字符串长度
	char *strcat(char *dest, const char *src);
	//把src所指向的字符串复制到dest所指向的字符串后面
	//(删掉*dest原来末尾的“\0”。要保证*dest足够长,以容纳被复制进来的*src
	//*src中原来的字符不变,返回指向dest的指针。L

return code;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值