数组程序设计作业-1

  • 格式:doc
  • 大小:103.00 KB
  • 文档页数:8

上机作业6

1. 输入 10个学生的一门课成绩,用一维数组存放其成绩,请输出最高分。

#include

void main()

{

int x[10],i,max;

for(i=0;i<10;i++)

scanf("%d",&x[i]);

for(i=1;i<10;i++)

{

if(x[i]>max)

{

max=x[i];

}

}

printf("the max is:%d\n",max);

}

2. 定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,统计平均成绩。

#include

void main()

{

int x[10],i;

double j,s=0;

for(i=0;i<10;i++)

scanf("%d",&x[i]); for(i=0;i<10;i++)

{

s=s+x[i];

}

j=s/10;

printf("平均值是%lf\n",j);

}

3. 输入 10个学生的一门课成绩,用一维数组存放其成绩,统计并输出不及格人数及其百分比。

#include

void main()

{

int x[10],i;

double j=0,p;

for(i=0;i<10;i++)

scanf("%d",&x[i]);

for(i=0;i<10;i++)

{

if(x[i]<60)

j++;

}

printf("不及格人数有%.0lf\n",j);

p=j/10*100;

printf("不及格人数是总数的:%.0lf%%\n",p);

}

4. 定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,分别统计优、良、中、及格、不及格的人数 。

#include

void main()

{

int x[10],i,y=0,l=0,z=0,j=0,b=0;

for(i=0;i<10;i++)

scanf("%d",&x[i]);

for(i=0;i<10;i++)

{

if(x[i]>=90)

{

y++;

}

else if(x[i]<90&&x[i]>=80)

{

l++;

}

else if(x[i]<80&&x[i]>=70)

{

z++;

}

else if(x[i]<70&&x[i]>=60)

{

j++;

}

else

{

b++;

} }

printf("成绩为优的人数为 %d\n",y);

printf("成绩为良的人数为 %d\n",l);

printf("成绩为中的人数为 %d\n",z);

printf("成绩为及格的人数为 %d\n",j);

printf("成绩不及格的人数为 %d\n",b);

}

5. 由键盘任意输入10个整形数据,将其按由小到大的顺序排序后输出。

#include

void main()

{

int a[10],i,j,t;

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=0;i<9;i++)

for(j=0;j<9-i;j++)

if(a[j]>a[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

printf("从小到大为\n");

for(i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n"); }

6. 由键盘任意输入10个数据,将它们倒序后输出。

#include

void main()

{

int a[10],i,j,t;

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=0;i<5;i++)

{

j=9-i;

t=a[j];

a[j]=a[i];

a[i]=t;

}

printf("\n");

for(i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n");

}

7. 建立一个5*5的矩阵,将其转置,并将其按矩阵形式输出 。

#include

void main()

{

int a[5][5],b[5][5];

int i,j;

printf("输入25个数\n");

for(i=0;i<5;i++)

for(j=0;j<5;j++)

scanf("%d",&a[i][j]);

printf("\n");

printf(" 矩阵为:\n");

for(i=0;i<5;i++)

{

for(j=0;j<5;j++)

{

printf(" %d",a[i][j]);

}

printf("\n");

}

printf("\n");

printf(" 转置后的矩阵为:\n");

for(i=0;i<5;i++)

{

for(j=0;j<5;j++)

{

b[i][j]=a[j][i];

printf(" %d",b[i][j]);

}

printf("\n");

}

}

8. 编程打印杨辉三角形的前6行6列的值。即输出:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

#include

void main()

{

int a[6][6];

int i,j;

for(i=0;i<=5;i++)

{

a[i][0]=1;

a[i][i]=1;

}

for(i=2;i<=5;i++)

{

for(j=1;j

a[i][j]=a[i-1][j]+a[i-1][j-1];

}

for(i=0;i<=5;i++)

{

for(j=0;j<=i;j++)

printf("%d ",a[i][j]);

printf("\n"); }

}

9. 求n个整数中素数的个数。(选做题)

#include

void main()

{

int n,x,i,j,m=0;

printf("输入n值:\n");

scanf("%d\n",&n);

for(i=1;i

{

scanf("%d\n",&x);

{

for(j=2;j

{

if(x%j==0)

break;

}

}

m=m+1;

}

printf("这些数中素数个数为:%d\n",n-m);

}