return(max);
}
floatmin(intn,floata[])
{inti;
floatmin;
min=a[0];
for(i=0;iif(min>a[i])min=a[i];
return(min);
}
floataver(intn,floata[])
{inti;
floatsum=0,aver;
.7.
for(i=0;isum=sum+a[i];
aver=sum/n;
return(aver);
}
#include"math.h"
main()
{inti;
floatm,n,a[5],c;
for(i=0;i<5;i++)
scanf("%f",&a[i]);
m=max(5,a);
n=min(5,a);
c=aver(5,a);
printf("%5f%5f%5f\n",m,n,c);
}
25.(**)编写函数,求一个不超过五位的十进制整数各位数值的和。
(如:
输入2634,输出15)
#include"math.h"
main()
{inti,a[5],m,n=0;
scanf("%d",&m);
for(i=0;i<=4;i++)
{a[i]=m%10;
n=n+a[i];
m=m-a[i]*10;
printf("%5d",a[i]);}
printf('\n');
printf("%d",n);
}
26.(**)编程求出一个3x3矩阵的最大和最小元素及其下标。
main()
{inti,j,max,min,a[3][3],m1,n1,m2,n2;
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
min=max=a[0][0];
.8.
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
if(a[i][j]>max){max=a[i][j];m1=I;n1=j;}
elseif(a[i][j]{min=a[i][j];m2=i;n2=j;}
printf("max=%d,%3d,%3d,min=%d,%3d,%3d",max,m1,n1,min,m2,n2);
}
27.(**)有一个字符串,包含n个字符,编写一个函数,将此字符串中从第m个字符开始的全部字符复制成另一个字符串。
main()
{charchs2[30]={0},chs1[30]="thisismyfirstCprogram";
inti,j,m;
scanf("%d",&m);
for(i=m,j=0;i<30;i++,j++)
chs2[j]=chs1[i];
chs2[29]='\0';
printf("%s",chs2);
}
28.(**)求一个3x3矩阵的对角线元素之和。
main()
{inti,j,sum1=0,sum2=0,a[3][3];
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
for(i=0;i<=2;i++)
{for(j=0;j<=2;j++)
if(i==j)sum1+=a[i][j];
if((i+j)==2)sum2+=a[i][j];
}
printf("%5d%5d",sum1,sum2);}
29.(**)从键盘输入两个整数,输出其最大公约数和最小公倍数。
程序1:
main()
{inta,b,t,p,r;
scanf("%d,%d",&a,&b);
if(a
p=a*b;
while(b!
=0)
{r=a%b;a=b;b=r;}
printf(“%5d%5d”,a,p/a);}
.9.
main()
{inta,b,m,n,i,t;
scanf(“%d%d”,&a,&b);
if(a
m=a;n=b;
for(i=1;i<=n;i++)
if((m%i==0)&&(n%i==0))
{printf("%5d\n",i);break;}
printf("%5d",a*b/i);
}
30.(**)一个已按从小到大的顺序排序的数组,有9个元素,从终端输入第10个数,要求按原来排序的规律将它插入数组中。
(该数比第一个数大,比第九个数小)
#defineN10
main()
{intb,i,n,a[N]={1,5,7,11,15,19,23,28,31};
scanf("%d",&b);
for(i=0;iif(a[i]>b){n=i;break;}
for(i=(N-2);i>=n;i--)
a[i+1]=a