ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

11.28刷题总结

2021-11-29 00:02:55  阅读:150  来源: 互联网

标签:总结 11.28 cout int 汉字 else include 公因数 刷题


11.28

求最小公倍数

就是先算两个数的最大公因数,然后两个数分别除以最大公因数,两个数再相乘,再乘以最大公因数。

求汉字个数

由于汉字在内存中占两个字节,且汉字的机内码字节的最高位为1,所以汉字机内码的每个字节表示的十进制数都是负数。统计输入字符串含有几个汉字,只需求出字符串中小于0(a[i]<0)的字符有几个,将它除以2就得到答案。

进制转换跟二进制转换类似,主要原理为:tmp为要转换的数,用a数组来保存转换后每一位的进制数;while(tmp>0)

{d=tmp%r;

a[k++]=d;

tmp/=r;}

从最低数位开始得的,故最后要反向输出

for(int i=k-1;i>=1;--i)

{ if(a[i]>=10)

{ char c='A';

printf("%c",c+(a[i]-10)); }

else printf("%d",a[i]); }

杨辉三角1基本思想:开两个数组,然后b数组为a数组上一次的值,然后套用a[i]=b[i-1]+a[i]公式可得;

具体代码:

#include<iostream>

#include<cstdio>

#include<cstring>

#include<cmath>

using namespace std;

int a[100],b[100];

int main()

{int n;

while(cin >> n)

{b[0]=0,b[1]=1,a[0]=0,a[1]=1;

for(int i=1;i<=n;++i)

{if(i==1)

{cout << "1" << endl;}

else

{for(int j=1;j<=i;++j)

{if(j!=i)

a[j]=b[j-1]+a[j];

else

a[j]=1;

if(j!=i)

cout << a[j] << " ";

else

cout << a[j] << endl;}

}

for(int j=1;j<=i;++j)

{b[j]=a[j];

}

}

cout << endl;}

return 0;}

标签:总结,11.28,cout,int,汉字,else,include,公因数,刷题
来源: https://blog.csdn.net/weixin_44746864/article/details/121600513

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有