7.
#include
char diamond[][5]={{‘_’,’_’,’*’},{‘_‘,’*’,’_’,’*’},
{‘*’,’_’,’_‘,’_‘,’*’},{‘_’,’*’,’_’,’*’},{‘_’,’_’,’*’}}; int i,j;
for(i=0;i<5;i++) {
for(j=0;j<5;j++)
printf(?%c?,diamond[i][j]); printf(?\\n?); }
}注:?_?代表一个空格。 运行结果为:
* * * * * * * * 8.
#include
{ int i, f[10]; f[0]=f[1]=1;
for(i=2;i<10;i++)
f[i]=f[i-2]+f[i-1]; for(i=0;i<10;i++) { if(i%4==0)
printf(?\\n?);
printf(?%d ?,f[i]); } }
运行结果为: 1 1 2 3
执行内层循环表达式3,j++,j为2,j<3成立,继续执行内层循环体 内层for第3次循环
执行n[i][j]=i+j;即n[2][2]=2+2=3;
执行内层循环表达式3,j++,j为3,j<3不成立,结束内层循环 执行printf(?\\n?);
执行外层for语句的表达式3,i++,i为,3, i<3不成立,结束外层循环
5 8 13 21 34 55 9.
#include ?stdio.h? func(int b[ ]) { int j;
for(j=0;j<4;j++) b[j]=j; }
main( )
{ int a[4], i; func(a);
for(i=0; i<4; i++)
printf(?-?,a[i]); }
运行结果为: 0 1 2 3
详见教材P194 定义函数func
函数头:未定义函数的类型,则系统默认为int型。函数func的形参为整型数组名,即只接收整型数组地址。
函数体:定义整型变量j
循环变量初值(表达式1)j=0, 使得循环条件(表达式2)j<4成立,执行循环体
第1次循环
执行b[j]=j; 即b[0]=0;
执行循环变量自增(及表达式3) j++,j为1,使得j<4成立,继续执行循环体 第2次循环 b[1]=1;
j++,j为2,使得j<4成立,继续执行循环体 第3次循环 b[2]=2;
j++,j为3,使得j<4成立,继续执行循环体 第4次循环 b[3]=3;
j++,j为4,使得j<4不成立,结束循环
main函数:
定义整型变量i和数组a,其长度为4,
func(a);表示调用函数func,并以数组名a作为调用的实参(数组名在C语言中表示数组所在内存空间的首地址,在以数组名作为实参时,形参与实参公用存储空间,因此对数组b的操作,即对数组a的操作。)
10.
#include
{float fun(float x[]); float ave,a[3]={4.5,2,4}; ave=fun(a); printf(?ave=%7.2f?,ave); }
float fun(float x[]) {int j;
float aver=1;
for (j=0;j<3;j++)
aver=x[j]*aver;
return(aver); }
运行结果为: ave= 36.00 11.
#include
{int a[2][3]={{1,2,3},{4,5,6}}; int b[3][2],i,j; for(i=0;i<=1;i++)
{for(j=0;j<=2;j++)
b[j][i]=a[i][j]; }
for(i=0;i<=2;i++)
{for(j=0;j<=1;j++)
printf(\ } }
运行结果为:
1 4 2 5 3 6
12.
#include
for (i=0;i<=n;i++)
r=r*b[i]; return (r); }
main()
{int x,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3);
printf(?%d\\n?,x); }
运行结果为: 24 13.
#include\main() {int j,k;
static int x[4][4],y[4][4]; for(j=0;j<4;j++) for(k=j;k<4;k++) x[j][k]=j+k; for(j=0;j<4;j++) for(k=j;k<4;k++) y[k][j]=x[j][k];
for(j=0;j<4;j++) for(k=0;k<4;k++)
printf(\}
运行结果为:
0,0,0,0,1,2,0,0,2,3,4,0,3,4,5,6
函数 1.
#include
{int x, y, result = 0; scanf(\result = Sub(x,y ) ;
printf(\}
当从键盘输入:6,3运行结果为: