《C语言》实验报告
PAGE
2 -
《C语言》课内实验报告
学生姓名:
XXX
20**309010103
及 学 号:
学 院:
理学院
班 级:
信计***
课程名称:
C语言
实验题目:
数组的应用
指导教师
姓名及职称:
XXX 教 授
XXX 讲 师
XXX 实验师
20**年04月10日
实验题目:
数组的应用
实验目的:
1.掌握一、二维数组、字符数组的定义、初始化和引用方法及字符串函数的用法。
2.理解与数组有关的算法。
三、实验内容:
1.用起泡法(或称冒泡法)对15、5、9、2、7、11、8、3、12、1共10个整数由小到大排序。画出N-S算法流程图,编写源程序,给出注释及运行结果。至少自己修改数据1次,重新运行1个新结果。
2.求A矩阵与B矩阵的和矩阵C。其中
,。画出N-S算法流程图,编写源程序,给出注释及运行结果。至少自己修改数据1次,重新运行1个新结果。
3.编程求出二维数组a的最大元素,同时求出该最大元素所在的行row和列column。a数组的矩阵表示如下:。画出N-S算法流程图,编写源程序,给出注释及运行结果。
定义一个二维数组,存放5个字符串“dog”,“tiger”,“wolf”,“cat”,“horse”,然后用选择法将这5个字符串按由小到大的顺序输出。画出N-S算法流程图,编写源程序,给出注释及运行结果。
实验结果:
1.
NS流程图
输入10个数a[0]到a[9]
j由0变到8共执行9次循环
进行9-j次比较
a[i]>a[i+1]
真 假
A[i]?a[i+1]
输出a[0]到a[9]
#include /*包含标准输入输出库*/
void main() /*空类型的主函数*/
{
int a[10]; /*输入整型变量数组a*/
int i,j,t; /*输入整型变量i,j,t*/
printf("input 10 numerbs:\n"); /*输出10个数*/
for(i=0;i<10;i++) /*for语句*/
scanf("%3d",&a[i]); /*输入整型数据数组a中的数占三列*/
printf("\n"); /*换行*/
for(j=0;j<9;j++) /*for语句*/
for(i=0;i<9-j;i++) /*for语句*/
if(a[i]>a[i+1]) /*if语句*/
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers :\n"); /*输出the sorted numbers:*/
for(i=0;i<10;i++) /*for语句*/
printf("%3d",a[i]); /*输出整型数据数组a中的数占三列*/
printf("\n"); /*换行*/
}
2.
输入a[3][4]={{1,1,2,1},{2,2,1,3},{4,3,2,1}},b[3][4]={{2,3,5,2},{3,1,6,1},{1.1.5.0}},c[3][4],i,j
c[i][j]=a[i][j]+b[i][j]
输出c[i][j]
3.
max=a[0][0]
for i=0 to 2
for j=o to 3
a=[i][j]>max
真 假
max=a[i][j]
row=i
colum=j
输出:max和row、colum
#include /*包含标准输入输出库*/
void main() /*空类型的主函数*/
{
int i,j,row=0,colum=0,max; /*输入i,j,row,colum,max,并赋值给row,colum*/
int a[3][4]={{10,9,2,1},{12,2,