用矩阵设计能够c语言加减乘除除的计算机程序 c语言

>> 矩阵运算C语言程序
矩阵运算C语言程序
所属分类:
下载地址:
MatrixCalc.zip文件大小:239.78 kB
分享有礼! 》
请点击右侧的分享按钮,把本代码分享到各社交媒体。
通过您的分享链接访问Codeforge,每来2个新的IP,您将获得0.1 积分的奖励。
通过您的分享链接,每成功注册一个用户,该用户在Codeforge上所获得的每1个积分,您都将获得0.2 积分的分成奖励。
基本矩阵运算的C语言程序,主要包括矩阵加减法、乘法、求逆、转置等运算,本人亲自使用过,下载后可以直接使用里面的矩阵运算函数。
Sponsored links
源码文件列表
温馨提示: 点击源码文件名可预览文件内容哦 ^_^
Matrix.obj24.11 kB 17:44
MatrixCalc.exe220.06 kB 17:37
MatrixCalc.ilk281.86 kB 17:37
MatrixCalc.pdb481.00 kB 17:37
vc60.idb41.00 kB 17:44
vc60.pdb52.00 kB 17:44
7.18 kB 17:44
629.00 B 12:02
MatrixCalc.dsp4.28 kB 11:49
MatrixCalc.dsw545.00 B 11:41
MatrixCalc.ncb41.00 kB 20:56
MatrixCalc.opt48.50 kB 20:56
MatrixCalc.plg1.00 kB 17:44
(提交有效评论获得积分)
评论内容不能少于15个字,不要超出160个字。
评价成功,多谢!
下载MatrixCalc.zip
CodeForge积分(原CF币)全新升级,功能更强大,使用更便捷,不仅可以用来下载海量源代码马上还可兑换精美小礼品了
您的积分不足,优惠套餐快速获取 30 积分
10积分 / ¥100
30积分 / ¥200原价 ¥300 元
100积分 / ¥500原价 ¥1000 元
订单支付完成后,积分将自动加入到您的账号。以下是优惠期的人民币价格,优惠期过后将恢复美元价格。
支付宝支付宝付款
微信钱包微信付款
更多付款方式:、
您本次下载所消耗的积分将转交上传作者。
同一源码,30天内重复下载,只扣除一次积分。
鲁ICP备号-3 runtime:Elapsed:59.114ms - init:0.1;find:0.8;t:0.5;tags:0.3;related:19.8;comment:0.1; 27.69
登录 CodeForge
还没有CodeForge账号?
Switch to the English version?
^_^"呃 ...
Sorry!这位大神很神秘,未开通博客呢,请浏览一下其他的吧&nbsp&&&>C语言程序设计论文
C语言程序设计论文
编号:10-4076 | doc 格式 | 237.00K |
Ta 们刚刚下载了...查看: 6392|回复: 2
计算机等级考试C语言上机速成:连载(21)试题精解-矩阵类题目
本教程由原创,未经许可禁止转载。
矩阵类题目
例1、写程序,实现矩阵(3行3列)的转置(即行列互换)。
试题程序:
#include &stdio.h&
#include &conio.h&
int fun(int array[3][3])
{ int i,j;
int array[3][3]={{100,200,300},{400,500,600},{700,800,900}};
for(i=0;i&3;i++)
{for(j=0;j&3;j++)
printf(&%7d&,array[j]);
printf(&\n&);
fun(array);
printf(&Converted array:\n&);
for(i=0;i&3;i++)
{for(j=0;j&3;j++)
printf(&%7d&,array[j]);
printf(&\n&);
解释:这题的关键在于进行行列下标转换的算法,由矩阵的对称性我们不难看出在进行行列互换时a[j]在好是与a[j]互换,因而只要我位让程序走完矩阵的左上角即可(用for(i=0;i&2;i++)再套for(j=i+1;j&3;j++)来完成左上角的走动。int fun(int array[3][3])
{ int i,j,t;
for(i=0;i&2;i++)
for(j=i+1;j&3;j++)
{t=array[j];array[j]=array[j];array[j]=t;}
例2 请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。
试题程序。
#include &conio.h&
#include &stdio.h&
#define M 4
#define N 5
int fun(int a[M][N])
{ int aa[M][N]={{1,3,5,7,9},
{2,9,9,9,4},
{6,9,9,9,8},
{1,3,5,7,0}};
int i,j,y;
printf(&The original data is :\n&);
for(i=0;i&M;i++)
{for(j=0;j&N;j++) printf(&%6d&,aa[j]);
printf(&\n&);
y=fun(aa);
printf(&\nThe sum: %d\n&,y);
printf(&\n&);
解释:该题的第一个for()循环是计算矩阵的最上一行和最下一行的总和,第二个for()是计算除两头元素以外的最左一列和最右一列的元素的和,最后sun就是周边元素的和。
int fun(int a[M][N])
{int sum=0,i;
for(i=0;i&N;i++)
sum+=a[0]+a[M-1];
for(i=1;i&M-1;i++);
sum+=a[0]+a[N-1];
例3 请编一函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中,二维数组中的数已在主函数中赋予。
试题程序。计算机专业好就业吗?去就知道了。
#include &conio.h&
#include &stdio.h&
#define M 3
#define N 4
void fun(int tt[M][N],int pp[N])
{ int t[M][N]={ {22,45,56,30},
{19,33,45,38},
{20,22,66,40}};
int p[N],i,j,k;
printf(&the original data is:\n&);
for(i=0;i&M;i++)
{for(j=0;j&N;j++)
printf(&%6d&,t[j]);
printf(&\n&);
printf(&\nthe result is:\n&);
for(k=0;k&N;k++)
printf(&%4d&,p[k]);
printf(&\n&);
解释:该题用for(i=0;i&N;i++)来控制一列一列地找,而内嵌循环for(j=0;j&M;j++)用于控制同列内元素的比较。多重循环的嵌套总是最里层循环变化最快,即外层循环改变一个值,内层循环就要循环完一次,对于多重循环一定要好好去体会和理解,在多数题目中都要用到多重循环(一般为二重)。
void fun(int tt[M][N],int pp[N])
for(i=0;i&N;i++)
{ pp=tt[0];
for(j=0;j&M;j++)
if(tt[j]&pp) pp=tt[j];
例4、程序定义了N*N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:给数组周边元素置0值。
注意:部分源程序给出如下。
请勿改动主函数main和其它函数中的任何去何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序。
#include &stdio.h&
#include &conio.h&
#include &stdlib.h&
#define N 5
fun(int w[][N])
{ int a[N][N],i,j;
printf(&***** The array *****\n&);
for(i=0;i&N;i++)
{ for(j=0;j&N;j++)
{ a[j]=rand()%10;
printf(&%4d&,a[j]);
printf(&\n&);
printf(&***** The result *****\n&);
for(i=0;i&N;i++)
{ for(j=0;j&N;j++)
printf(&%4d&,a[j]);
printf(&\n&);
解释: 由于是赋值0,因而只要能表示出周边元素即好办,它与求和不同在于求和不能重复对某个元素进行运算,而赋值则可重复赋值。所以这里只用了一个for()循环来找出所有 的周边元素。
fun(int w[][N])
for(i=0;i&N;i++)
例5、程序定义了N*N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:
求出数组周边元素的平均值并作为函数值返回给主函数中的s。顺便说一句,上举办定期讲座。
例如:a数组中的值为
则返回主程序后s的值应为:3.375。
试题程序。
#include &stdio.h&
#include &conio.h&
#include &stdlib.h&
#define N 5
double fun (int w[][N])
{ int a[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,6,8,2,5,9,1,4,1};
printf(&***** The array *****\n&);
for(i=0;i&N;i++)
{for(j=0;j&N;j++)
printf(&%4d&,a[j]);
printf(&\n&);
printf(&***** The result *****\n&);
printf(&The sum is %lf\n&,s);
你不知道大学四年该怎么度过?去。
解释:注意不能重复计算,第一个for()循环求出第一列与最后一列的和,
第二个for()循环求出第一行与最后一行(已除去两头元素),要注意第二个for()中起
始为1,最后为N-2。double fun (int w[][N])
{ int i,t=0;
double s=0;
for(i=0;i&N;i++)
{s+=w[0]+w[N-1]; t+=2;}
for(i=1;i&N-1;i++)
{s+=w[0]+w[N-1]; t+=2;}
例6、 程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]
),函数的功能是:使数组第一列元素中的值与最后一列元素中的值对调、第二列元素的
值与倒数第二列中的值对调、……、其他依次类推。计算机专业好就业吗?去就知道了。
注意:部分源程序给出如下。
请勿改动主函数main和其它函数中的任何去何内容,仅在函数fun的花括号中填入你编写
的若干语句。
试题程序。
#include &stdlib.h&
#include &conio.h&
#include &stdio.h&
#define N 5
int fun(int a[][N])
{ int a[N][N],i,j;
printf(&***** The array *****\n&);
for(i=0;i&N;i++)
{for(j=0;j&N;j++)
{a[j]=rand()%30;printf(&%4d&,a[j]);}
printf(&\n&);
printf(&***** The result *****\n&);
for(i=0;i&N;i++)
{for(j=0;j&N;j++)
printf(&%4d&,a[j]);
printf(&\n&);
解释: 本题的第一个for()循环用于控制行,而内嵌的for()用于在同一行中将列与列对调,
当i为0时a[m]为第m行的第一列元素,a[m][N-1-i]为第m行的最后一列的元素,正好
符合调换的要求。依次类推。
int fun(int a[][N])
{ int i ,m,t;
for(m=0;m&N;m++)
for(i=0;i&N/2;i++)
a[m]=a[m][N-1-i];
a[m][N-1-i]=t;
例7、请编写函数fun,函数的功能是:实现B=A+A’,即把矩阵A加上A的转置,存放在矩阵B中。计算结果在main函数中输出。
注意:部分源程序给出如下。
请勿改动主函数main和其它函数中的任何去何内容,仅在函数fun的花括号中填入你编写的若干语句。软件公司需要学生什么样的能力?去就知道了。试题程序。
#include&conio.h&
#include&stdio.h&
void fun(int a[3][3],int b[3][3])
{int a[3][3]={{1,2,3},{4,5,6},{7,8,9}},t[3][3];
for(i=0;i&3;i++)
{for(j=0;j&3;j++)
printf(&%7d&,t[j]);
printf(&\n&);
解释:本题没有先求出A的转置,而是直接利用转置的性质(即第一行作为转置后的
第一列,第二行作为转置后的第二列,的行列互换的性质)。而且最后要求出两矩阵的
相加后得出的新矩阵,由转置性质可知原a[j]转置后位置为a[j],在表达式:b[
i][j]=a[j]+a[j]第一个a为A的元素,第二个a为A'的元素。
void fun(int a[3][3],int b[3][3])
for(i=0;i&3;i++)
for(j=0;j&3;j++)
b[j]=a[j]+a[j];
本教程由原创,未经许可禁止转载。
想进一步提高C的知识,要看哪些书?
学习C语言后有三条路可以走:
一是学习嵌入式开发,嵌入式开发主要是使用C语言和汇编语言,要学的东西有计算机组成原理、汇编语言、单片机、ARM等。
二是继续学习C++语言,然后使用VC++等C++语言的工具进行应用程序的开发,比如AutoDesk、微软等公司有很多C++的职位,主要是开发一些系统级的应用程序,比如建模工具、VisualStudio、Photoshop、AutoCAD等大型的软件的主要部分都是用C++开发的。
三是学习其他的语言。跟着大学里的老师学习C语言后,只能算是了解了软件开发的入门知识,对编程语言有了基本的了解。目前市场上职位人数最多的是企业信息系统开发相关的职位,开发这些系统大部分是使用Java、C#、VB之类的语言。如果想以后向这方面发展的话可以学一学Java或者C#,不要担心学了Java、C#等语言会把C语言学习的东西浪费了,不会浪费的,因为语言都是相通的,不同的语言知识语法略有差异而已,编程思想都是一致的。而且Java和C#都是从C语言发展起来的,有了C语言的基础学习Java、C#会非常容易。“如鹏网”的UC视频教室()目前正在开C#入门的课程,专门为学过C语言的同学打造,通过与C语言对照学习,能帮你在最短时间内掌握C#。
Powered by}

我要回帖

更多关于 c语言加减乘除代码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信