C语言加法实例

用的是vs2022

这里的scanf用的是 scanf_s 在vs2022以及一些新版本中,scanf常常有时候会报错,大多是提示不安全,其原因是vs用的编译器是VS编译器,然而是scanf是C语言常规的编译器用法,具体错误如下:

其解决方案如下:在最顶部加上

#define _CRT_SECURE_NO_WARNINGS

可以解决像scanf 等等错误。与错误提示相同的,大多可以通过该途径解决。

正确实例:

#include <stdio.h>
int main()
{
    int num1 = 0;
    int num2 = 0;
    int sum = 0;
    scanf_s("%d%d",&num1,&num2);
    sum = num1 + num2;
    printf("%d", sum);
    return 0;

}

这个小实例中,输入时后面函数要用地址符&,以表示存入这个地址,而且这个加法的位置尽量不要乱动,有时候会出先各种错误,可以运行但结果不对。具体怎样,可以自己尝试,加深理解。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基于 C 语言的矩阵示例,可以进行矩阵的加法、减法、乘法和转置操作: ```c #include <stdio.h> // 定义矩阵的最大行列数 #define MAX_ROWS 10 #define MAX_COLS 10 // 定义矩阵结构体 typedef struct { int rows; int cols; int data[MAX_ROWS][MAX_COLS]; } Matrix; // 矩阵加法 Matrix add(Matrix a, Matrix b) { Matrix result; result.rows = a.rows; result.cols = a.cols; for (int i = 0; i < a.rows; i++) { for (int j = 0; j < a.cols; j++) { result.data[i][j] = a.data[i][j] + b.data[i][j]; } } return result; } // 矩阵减法 Matrix sub(Matrix a, Matrix b) { Matrix result; result.rows = a.rows; result.cols = a.cols; for (int i = 0; i < a.rows; i++) { for (int j = 0; j < a.cols; j++) { result.data[i][j] = a.data[i][j] - b.data[i][j]; } } return result; } // 矩阵乘法 Matrix mul(Matrix a, Matrix b) { Matrix result; result.rows = a.rows; result.cols = b.cols; for (int i = 0; i < a.rows; i++) { for (int j = 0; j < b.cols; j++) { result.data[i][j] = 0; for (int k = 0; k < a.cols; k++) { result.data[i][j] += a.data[i][k] * b.data[k][j]; } } } return result; } // 矩阵转置 Matrix transpose(Matrix a) { Matrix result; result.rows = a.cols; result.cols = a.rows; for (int i = 0; i < a.rows; i++) { for (int j = 0; j < a.cols; j++) { result.data[j][i] = a.data[i][j]; } } return result; } // 打印矩阵 void print(Matrix a) { for (int i = 0; i < a.rows; i++) { for (int j = 0; j < a.cols; j++) { printf("%d ", a.data[i][j]); } printf("\n"); } } int main() { // 定义两个矩阵 Matrix a = {3, 3, {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}}; Matrix b = {3, 3, {{9, 8, 7}, {6, 5, 4}, {3, 2, 1}}}; // 打印矩阵 printf("Matrix A:\n"); print(a); printf("Matrix B:\n"); print(b); // 矩阵加法 Matrix c = add(a, b); printf("Matrix C = A + B:\n"); print(c); // 矩阵减法 Matrix d = sub(a, b); printf("Matrix D = A - B:\n"); print(d); // 矩阵乘法 Matrix e = mul(a, b); printf("Matrix E = A * B:\n"); print(e); // 矩阵转置 Matrix f = transpose(a); printf("Matrix F = Transpose(A):\n"); print(f); return 0; } ``` 需要注意的是,这里使用了结构体来封装矩阵数据,同时为了简化示例,这里限定了矩阵的最大行列数为 10。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值