![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C/C++基本问题
Stay--hungry
这个作者很懒,什么都没留下…
展开
-
问题4 矩阵运算
矩阵加法 for (int i = 0; i < row; i ++) for (int j = 0; j < col; j ++) ans[i][j] = a[i][j] + b[i][j]; 矩阵乘法 for (int i = 0; i < r1; i ++) for (int j = 0; j < c2; j ++) { int sum = 0; for原创 2021-09-12 15:07:38 · 95 阅读 · 0 评论 -
问题9 统计各种字符的个数
#include <iostream> using namespace std; int main() { int letter = 0, space = 0, digit = 0, other = 0; char c; while ((c = getchar()) != '\n')//!!! { if ('a' <= c && c <= 'z' || 'A' <= c && c <= 'Z原创 2021-09-11 21:50:09 · 101 阅读 · 0 评论 -
问题8 输出杨辉三角
#include <iostream> using namespace std; int main() { int a[11][11]; for (int i = 1; i <= 10; i ++) { a[i][1] = 1; a[i][i] = 1; } for (int i = 3; i <= 10; i ++) for (int j = 2; j <= i - 1; j ++)原创 2021-09-11 21:40:07 · 52 阅读 · 0 评论 -
问题2 输出IP地址形式
将一32位二进制数输出为IP地址形式。 即:将该二进制数以每8位为一个单位分开,将每个单位转换为10进制数。 #include <iostream> #include <cmath> using namespace std; int main() { double IP[4] = {0}; char num[33]; scanf("%s", num); for (int i = 0; i < 8; i ++) if (num[原创 2021-09-11 21:18:57 · 168 阅读 · 0 评论 -
问题7 截取数位
int N, num; scanf("%d", &N); while (N) { num = N%10; N /= 10; }原创 2021-02-10 21:13:24 · 161 阅读 · 0 评论 -
问题6 乘方运算
#include <stdio.h> int main() { int m, n, result = 1;//初始化为1 scanf("%d%d", &m, &n); while (n --)//乘的次数(指数) result *= m;//乘方 只需要用到3个参数 printf("%d", result); return 0; }原创 2021-02-05 21:28:02 · 181 阅读 · 0 评论 -
问题5 进制转换
进制转换 1, 2进制转化为10进制 实现方法: 2的0次方乘以最后一位数,加上2的1次方乘以倒数第二位数,…累加下去,直到加2的n(该2进制数的位数)次方乘以第一位数。又数组从c[0]开始,到c[数组长度-1]结束, 因此总结下来,即倒数第i位数乘以2的i次方 累加: ∑i=0strlen(c)−1 c[i]∗2i\sum_{i=0}^{strlen(c)-1} \ {c[i] * {2^i}}∑i=0strlen(c)−1 c[i]∗2i 即:c[0] * 20 + c[1] *原创 2021-02-05 21:17:13 · 406 阅读 · 0 评论 -
问题1 最大公因数和最小公倍数
#include <stdio.h> //运用辗转相除法求两个数的最大公因数和最小公倍数 //以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数 int main() { int a, b, temp, num1, num2; printf("请输入两个整数:"); scanf("%d%d", &num1, &num2); if(num1 < num2) { temp = num1; num1 = num2; num2 = te原创 2021-01-20 22:20:40 · 137 阅读 · 0 评论 -
问题3 字符串的连接与复制
#include <stdio.h> int main() { char str1[50], str2[50], *p1, *p2; p1 = str1; p2 = str2; gets(str1); gets(str2); while (*p1 != '\0') p1 ++; while (*p2 != '\0') *p1++ = *p2++;//一个一个的赋值、移动 *p1 = '\0';//手动补上最后一个结束符 printf("%s",str1); re原创 2021-01-26 20:52:43 · 129 阅读 · 0 评论