急!!帮忙做一下C语言作业!!

来源:百度知道 编辑:UC知道 时间:2024/05/31 14:04:42
老师布置的作业,明天就要交了。请大家帮帮忙!!
1.给N*N的二维数组赋初值后,使数组左下半三角元素中的值都加上n后输出。
2.求出大于M且紧靠M的N个素数存入数组中,然后输出,M和N的值从键盘输入。
解释一下:第一题是一个正方形,使它的左下方的三角形的数加上n以后输出。比如N=3 ,n=2,初值为:1 2 3
4 5 6
7 8 9,则输出的为3 2 3
6 7 6
9 10 11。
第二题打个比方吧:M=3,N=5,则输出的为5,7,11,13,17这5个数

1.
#include<stdio.h>
void main()
{
int i,j,N,n,a[20][20];
scanf("%d%d",&N,&n);
for (i=1;i<=N;i++) for (j=1;j<=N;j++) {scanf("%d",&a[i][j]);
if (j-i<=0) a[i][j]+=n;}
for (i=1;i<=N;i++) {
for (j=1;j<=N;j++) printf("%d ",a[i][j]);printf("\n");}
}
2.
#include<stdio.h>
#include<math.h>
int isprime(int k)
{
int i;
if (k==1) return 0;
if (k==2) return 1;
if (!(k%2)||k==1) return 0;
for (i=3;i<=sqrt(k);i++) if (!(k%i)) return 0;
return 1;
}

int main()
{
int i,j,n,m;
scanf("%d%d",&n,&m);
for (i=n+1,j=1;j<=m;i++) if (isprime(i)) {printf("%d ",i);j++;}
}

1.#define MAX 15
#include <stdio.h>
void main()
{
int N=3,n,i,j,s=0;
int a[MAX][MAX];
scanf("%d,%d",&N,&n