作业六
1.
#include<stdio.h>
main()
{
int i,d;
for(i=0;i<12;i++)
{d= rand()%11+5;
printf("%d ",d);}
return 0;
}
2.
#include<stdio.h>
void main()
{int i,max,min,s=0,a[10];
float ave;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=min=a[0];
for(i=1;i<10;i++)
{ if(max<a[i])
max=a[i]
if(min>a[i])
min=a[i];}
for(i=0;i<10;i++)
s+=a[i];
ave=(float)s/10;
printf("%d\t%d\t%f",max,min,ave);
}
3.
#include<stdio.h>
int main()
{int n,i,j,t,a[200];
printf("数组中数的个数:");
scanf("%d",&n);
printf("数组中的数:\n");
for(i=0;i<n;i++)
{
a[i]=i+1;
printf("%d ",a[i]);
}
for(i=0,j=n-1;i<j;i++,j--)
{t=a[i];a[i]=a[j];a[j]=t;}
printf("\n逆序后的数组:\n");
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
getch();
return 0;
}
4.
#include<stdio.h>
#include<math.h>
#define N 100
int main(){
int a[N];
int i, j, temp;
for(i=2; i<N; i++)
a[i]=i;
a[1]=0;
temp=(int)floor(sqrt(N-1));
for(i=2; i<=temp; i++){
if(a[i]!=0){
j=a[i]*a[i];
while(j<N){
a[j]=0;
j+=i;
}
for(i=0; i<N; i++){
if(a[i]!=0)
printf("%2d ", a[i]);
}
putchar('\n');
return 0;
}
5.
#include<stdio.h>
int main()
{
int i[10],a=0,b=0,temp,k;
printf("请输入十个整数:");
for(;a<10;a++)
scanf("%d",&i[a]);
for(a=0;a<9;a++)
{
k=a;
for(b=a+1;b<10;b++)
{ if(i[b]>i[k])
{k=b;}
}
if(k!=a)
{temp=i[a];i[a]=i[k];i[k]=temp; }
}
printf("从小到大排序:");
for(a=0;a<10;a++)
printf("%d\t",i[a]);
printf("\n");
}
6.
#include <stdio.h>
int main()
{
int a[4][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[j][i]);
for(i=0;i<4;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}
7.
#include<stdio.h>
void main()
{
int i,j,sum1=0,sum2=0,a[4][4];
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
if(i==j) sum1+=a[i][j];
if(i+j==3) sum2+=a[i][j];
}
}
printf("主对角线元素之和:%d\n",sum1);
printf("辅对角线元素之和:%d\n",sum2);
}