如何在C中对二维数组执行算术运算?
数组是一组以单一名称存储的相关数据项。
例如,intstudent[30];//student是一个数组名,包含30个数据项的集合,具有单个变量名
数组的操作
搜索-用于查找特定元素是否存在
排序-它有助于按升序或降序排列数组中的元素。
Traversing-它按顺序处理数组中的每个元素。
插入-它有助于在数组中插入元素。
删除-它有助于删除数组中的元素。
用于执行二维数组算术运算的逻辑如下-
for(row = 0; row < i; row++){ for(col = 0;col < j;col++){ add[row][col] = A[row][col] + B[row][col]; sub[row][col] = A[row][col] - B[row][col]; mul[row][col] = A[row][col] * B[row][col]; div[row][col] = A[row][col] / B[row][col]; mod[row][col] = A[row][col] % B[row][col]; } }
用于打印二维数组所有算术运算的逻辑如下-
printf("\nAdd\t Sub\t Mul\t Div\t Mod\n"); printf("-------------------------------\n"); for(row = 0; row < i; row++){ for(col = 0; col < j; col++){ printf("\n%d \t ", add[row][col]); printf("%d \t ", sub[row][col]); printf("%d \t ", mul[row][col]); printf("%.2f \t ", div[row][col]); printf("%d \t ", mod[row][col]); } }
程序
以下是对二维数组执行算术运算的C程序-
#include输出结果int main(){ int i, j, row, col,A[20][20], B[20][20]; int add[10][10], sub[10][10], mul[10][10], mod[10][10]; float div[10][10]; printf("enter no: of rows and columns:\n"); scanf("%d %d", &i, &j); printf("enter elements of 1st array:\n"); for(row= 0; row < i; row++){ for(col = 0;col < j;col++){ scanf("%d", &A[row][col]); } } printf("enter elements of 2nd array:\n"); for(row = 0; row < i; row++){ for(col = 0;col < j;col++){ scanf("%d", &B[row][col]); } } for(row = 0; row < i; row++){ for(col = 0;col < j;col++){ add[row][col] = A[row][col] + B[row][col]; sub[row][col] = A[row][col] - B[row][col]; mul[row][col] = A[row][col] * B[row][col]; div[row][col] = A[row][col] / B[row][col]; mod[row][col] = A[row][col] % B[row][col]; } } printf("\nAdd\t Sub\t Mul\t Div\t Mod\n"); printf("-------------------------------\n"); for(row = 0; row < i; row++){ for(col = 0; col < j; col++){ printf("\n%d \t ", add[row][col]); printf("%d \t ", sub[row][col]); printf("%d \t ", mul[row][col]); printf("%.2f \t ", div[row][col]); printf("%d \t ", mod[row][col]); } } return 0; }
执行上述程序时,会产生以下结果-
enter no: of rows and columns: 3 4 enter elements of 1st array: 1 2 4 5 6 7 3 8 3 2 1 8 enter elements of 2nd array: 1 2 1 2 1 3 4 2 1 2 1 1 Add Sub Mul Div Mod ------------------------------- 2 0 1 1.00 0 4 0 4 1.00 0 5 3 4 4.00 0 7 3 10 2.00 1 7 5 6 6.00 0 10 4 21 2.00 1 7 -1 12 0.00 3 10 6 16 4.00 0 4 2 3 3.00 0 4 0 4 1.00 0 2 0 1 1.00 0 9 7 8 8.00 0