4.1作业
1、求100之内的素数,并将结果存于数组中。
#include <stdio.h>
int main()
{
//求100之内的素数,并将结果存于数组中
int i,n,m;
int a[100],j=0;
for(n=2;n<=100;n++)
{
m=0;
for(i=2;i<=n/2;i++)
{
if(n%i==0)
m=1;
}
if(m==0)
printf("%d\n",n);
a[j]=n;
j++;
}
}
2、求一个3*3矩阵对角线元素之和。
#include<stdio.h>
void main()
{
//求一个3*3矩阵对角线元素之和
int a[3][3],i,j,sum1,sum2;
printf("输入3×3的矩阵:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
}
}
sum1=a[0][0]+a[1][1]+a[2][2];
sum2=a[1][1]+a[0][2]+a[2][0];
printf("主对角线和为%d\n副对角线和为%d\n",sum1,sum2);
}
3、有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。
#include<stdio.h>
void main()
{
//有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号
int a[3][4],i,j,max,loc1,loc2;
printf("输入3×4的矩阵:\n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
}
}
max=a[0][0];
loc1=0;loc2=0;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
loc1=i;loc2=j;
}
}
}
printf("a[%d][%d]为最大值即%d\n",loc1,loc2,max);
}