C语言实习报告
- 格式:doc
- 大小:55.50 KB
- 文档页数:5
C
语
言
实
验
报
告
资源勘查工程0901班
XX
XXXXXXXXX
2011年11月09日 2 C语言实验报告
一.实验目地:
1. 了解C语言表示逻辑量的方法;
2. 学会正确使用逻辑运算符和逻辑表达式;
3. 结合程序掌握一些简单的算法;
4. 熟悉数组的使用法,及指针的使用法。
二.实验内容:
编写一个3*3的矩阵,求这个矩阵之和,矩阵之积,矩阵的转置,矩阵主对角线之和以及矩阵下三角元素之和,并且利用所学的数组以及指针知识,编写程序,使得程序简单易懂,可操作性强。编写源程序,给出注释并运行结果。
三..实验流程图:
四.实验的源程序:
#define N 3
#define M 3
#include
void main()
{
int i,j,s,k,l,p,min,max,add,a[N][M],b[M][N],c[N][M],d[N][N],e[N],f[N];
printf("input matrix A[3][3]:\n");
for(i=0;i for(j=0;j scanf("%d",&a[i][j]); for(i=0;i { for(j=0;j printf("%3d",a[i][j]); printf("\n"); /*输出矩阵a*/ 3 } for(i=0;i { for(j=0;j { b[j][i]=a[i][j]; } printf("\n"); } printf("转置矩阵b:\n"); for(i=0;i { for(j=0;j { printf("%3d",b[i][j]); } printf("\n"); } for(i=0;i { for(j=0;j { for(add=k=s=0;k { add=a[i][j]+b[i][j]; s+=a[i][k]*b[k][j]; } c[i][j]=add; d[i][j]=s; } } printf("a与b之和c:\n"); for(i=0;i { for(j=0;j { printf("%3d",c[i][j]); } printf("\n"); } printf("a与b之积d:\n"); for(i=0;i { for(j=0;j printf("%4d",d[i][j]); } printf("\n"); } p=l=c[0][0];/*求c中最大最小值*/ for(i=0;i { for(j=0;j { if(l<=c[i][j]) l=c[i][j]; else p=c[i][j]; e[i]=l; f[i]=p; } max=e[0]; min=f[0]; } for(i=0;i { if(max<=e[i]) max=e[i]; if(f[i]<=min) min=f[i]; } printf("c中最大值= %d",max); printf("\n"); printf("c中最小值= %d",min); printf("\n"); for(add=i=0;i { add+=c[i][i]; } printf("c主对角线元素之和=%d",s); printf("\n"); for(add=i=0;i { for(j=0;j<=i;j++) add+=c[i][j]; } printf("c下三角元素之和=%d",add); printf("\n"); 5 } 五.实验的运行结果: 六.实验过程中出现的问题及解决方法: 1. 在写程序过程中注意一些细小的琐碎的知识,如C语言规定的标识符,大小写字母间的ASCII代码值相差32,强制类型转换符,自增自减运算符,符合运算符,逗号运算符等。 2. 认真谨慎之外,更重要的是掌握基本的知识,不然要经常要边做边查书,效率相当低。在往后的学习中要扎实认真。 3. 在系统上编辑、连接和运行一个C语言程序时,在编译的过程中应该留心一些细节问题,不如:一个语句完了之后的“;”等。 七.心得与体会: 刚开始学C语言的时候,很迷茫,在此之前从没有接触过C语言,有点摸不着头脑。可是在上机过后,我觉得编程是很有趣的一件事。我知道要学好C语言不容易,可是我决定完成这件不容易的事。 在编程时除了要认真谨慎之外,更重要的是掌握基本的知识,例如if语句与switch语句的区别,它们都是条件语句,用来执行判断功能,但是什么时候用if什么时侯用switch应该弄清楚:若条件分支多但是条件的值是一个确定的值时就用switch。反之,在大多数情况下就用if。又如各种循环的应用,及循环之间的嵌套都要能灵活应用。还要注意一些细小的琐碎的知识,如C语言规定的标识符,大小写字母间的ASCII代码值相差32,强制类型转换符,自增自减运算符,符合运算符,逗号运算符等。 通过这次的实践操作,让我对课本上的知识有了直观的认识,从而巩固了理论知识的学习。