实验项目:数组 (写实验报告)本周5(21日)实验课交 实验目的:1.掌握一维数组的定义规贝 2.正确运用一维数组进行程序设计 实验内容:程序(一) 功能:编程实现用一维数组实现杨辉三角形的打 印。参考程序:
实验项目:数组 (写实验报告) 本周5(21日)实验课交 实验目的:1.掌握一维数组的定义规则 2.正确运用一维数组进行程序设计。 实验内容 :程序(一) 功能:编程实现用一维数组实现杨辉三角形的打 印。参考程序:
先a[1 maino 当ⅰ=2时(外层循环第一次) a2]=1 i int a[, i,j, k; j=1to2(递降j-) o2(递增k+ 输出1 printf( %",all) =3(外层循环第二次) a3]=1 for(=2;i=2; j-) 4(外层循环第三次) a4]=1 3to2( aliealllta a3]=a3]+a2](a③3]=3 for(k=1: K<=i, k++) a2]=a2]+a[1(a2]=3) k=1to4(k++) printf(%5d,, a[k) 输出1331 ,i=5(外层循环第四次) printf( n) a5]=1 j=4 to 2 a4]=a4]+a[3](a[4]=4) a3]=a3]+a[2 [3]=6) a[2]=a2]+a[1(a[2]=4) k=1to5(k++) 输出1464
main() 1 { int a[6],i,j,k; 1 1 a[1]=1; 1 2 1 printf("%5d\n",a[1]); 1 3 3 1 for(i=2;i=2;j--) 这是一个 一维数组循环 a[j]=a[j]+a[j-1]; 嵌套的问题。依次给各 for(k=1;k<=i;k++) 元素 赋值, printf(“%5d”,a[k]); 然后输出元素值 printf("\n"); } } 首先a[1]=1,输出 1 当 i=2 时(外层循环第一次) a[2]=1 j=1 to 2 (递降 j - -) k=1 to 2 (递增 k++) 输出 1 1 i=3 (外层循环第二次) a[3]=1 j=2 to 2 ( j- -) a[2]=a[2]+a[1] (a[2]=2) k=1 to 3 (k++) 输出 1 2 1 i=4 (外层循环第三次 ) a[4]=1 j=3 to 2 ( j- -) a[3]=a[3]+a[2] (a[3]=3) a[2]=a[2]+a[1] (a[2]=3) k=1 to 4 (k++) 输出 1 3 3 1 i=5 (外层循环第四次) a[5]=1 j=4 to 2 (j - - ) a[4]=a[4]+a[3] (a[4]=4) a[3]=a[3]+a[2] (a[3]=6) a[2]=a[2]+a[1] (a[2]=4) k=1 to 5 (k++) 输出 1 4 6 4 1
使用二维数组。 maino int j, k, a[6][6]; for(=1j<6;j++ a叮=1;a[1=1;} 21 for(=3j<6;j++) 1331 for(k=2:k<1;k++) 14641 a=a[-1k-1]+a1[k] for(=1j<6;j++) {or(k=1;k<=jk++) printf("%5d,al]kk] printf( (n")
使用二维数组。 main() {int j,k,a[6][6]; 1 for(j=1;j<6;j++) 1 1 {a[j][j]=1; a[j][1]=1;} 1 2 1 for(j=3;j<6;j++) 1 3 3 1 for(k=2;k<=j-1;k++) 1 4 6 4 1 a[j][k]=a[j-1][k-1]+a[j-1][k]; for(j=1;j<6;j++) {for(k=1;k<=j;k++) printf(“%5d”,a[j][k]; printf(“\n”); } }
程序(二)功能:编程实现用数组打印 Fibonacci数列的前 20项。参考程序 include maino i int i; int f20]={1,1} for(|=2;i<20;|++) ;Ff=fi-2]+f[i-1* for(l=0;i<20;++) Rif( 905==0) printf(In") printf( %12d ,f0);
程序(二) 功能:编程实现用数组打印Fibonacci数列的前 20项。 参考程序: #include main() { int i; int ____________; /* f[20]={1,1} */ for(i=2;i<20;i++) _______________; /* f[i]=f[i-2]+f[i-1] */ for(i=0;i<20;i++) {if(i%5==0) printf("\n"); printf("%12d",f[i]); } }
程序(三)功能:编程实现读10个整数存入数组,找出其 中最大值和最小值。 问题 1程序一中语句for(k=1k<=ik++)改成 for(k=1:k<=5;k++),程序的输出结果是什么? 2.完成程序二的空白部分,如何定义数组能实现 数列的打印? 3.独立完成程序三的编程
程序(三) 功能:编程实现读10个整数存入数组,找出其 中最大值和最小值。 问题 1.程序一中语句for(k=1;k<=i;k++)改成 for(k=1;k<=5;k++),程序的输出结果是什么? 2. 完成程序二的空白部分,如何定义数组能实现 数列的打印? 3. 独立完成程序三的编程