Дана матрица А[4][5]. получить
матрицу В[3][4] вычеркиванием из матрицы А строки N и
столбца M. N и M вводятся с клавиатуры. решить с помощью функций.
#include
"stdafx.h"
#include
<stdio.h>
#include
"conio.h"
#include
"stdlib.h"
void newmas(int *a,int
m,int n,int *b,int n1);
int main()
{
int *a,*b,m=4,n=4,i,j,n1;
a=(int*)calloc(m*n,4);
b=(int*)calloc((m-1)*(n-1),4);
printf("Enter nomer udalyaemoy stroki\n");
scanf("%d",&n1);
printf("Enter a[4][4]
\n");
for (i=0;i<m;i++)
for
(j=0;j<n;j++)
scanf("%d",&a[i*n+j]);
newmas(a,m,n,b,n1);
printf("\n");
printf(" a\n");
for (i=0;i<m;i++)
{
for
(j=0;j<n;j++)
printf("%d
",a[i*n+j]);
printf("\n");
}
printf(" b\n");
for (i=0;i<m-1;i++)
{
for
(j=0;j<n-1;j++)
printf("%d
",b[i*(n-1)+j]);
printf("\n");
}
getch();
return 0;
}
void newmas(int *a,int
m,int n,int *b,int n1)
{ int
i,j,k=0,l=0;
for (i=0;i<m;i++)
{ if(i!=(n1-1))
{ k=0;
for (j=0;j<n;j++)
{ if
(j!=(n1-1))
{ *(b+l*(n-1)+k)=*(a+i*n+j);
k++;
}
}
l++;
}
}
}
Задача на правильность имени файла
#include
"stdafx.h"
#include
"stdio.h"
#include
"string.h"
#include
"conio.h"
int main()
{
/* char filename[20];
char *p;
printf("Enter
filename\n");
gets(filename);
p=strstr(filename,".cpp");
if(p)
printf("file is
good\n");
else
{
p=strstr(filename,".");
puts(p);
printf("\n");
if(p)
{
*p=NULL;
strcat(filename,".cpp");
}
else
strcat(filename,".cpp");
}
puts(filename);*/
printf("%c",10);
getch();
return 0;
}
В целочисленной матрице А[4][5] найти элемент, повторяющийся максимальное число
раз, потом получить матрицу В путем умножения матрицы А на этот элемент.
#include
"stdafx.h"
#include
"stdio.h"
#include
"conio.h"
int main()
{ int
a[4][5];
int i,j,k,l;
int x=0,im,jm;
int max=0;
int b[4][5];
printf("Enter
massive:\n");
for(i=0;i<4;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
for(j=0;j<5;j++)
{
x=0;
for(k=0;k<4;k++)
for(l=0;l<5;l++)
if(a[i][j]==a[k][l])
x++;
if(x>max)
{
max=x;
im=i;
jm=j;
}
}
printf("Massive:\n");
for
(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%d
",a[i][j]);
printf("\n");
}
printf("max=%d\n",max);
printf("element: %d\n",a[im][jm]);
for(i=0;i<4;i++)
for(j=0;j<5;j++)
b[i][j]=a[im][jm]*a[i][j];
printf("New
massive:\n");
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%d
",b[i][j]);
printf("\n");
}
getch();
return 0;
}
Дан массив из 20 студентов типа
структуры, где 2 поля: Имя и возраст. найти однофамильцев
и распечатать этот массив
#include
"stdafx.h"
#include
"stdio.h"
#include
"conio.h"
#include
"stdlib.h"
#include
"string.h"
struct spis
{
char fam[20];
int x;
};
int main()
{
int i,j;
spis a[5];
for (i=0;i<5;i++)
{
printf("Enter fam %d\n",i+1);
gets(a[i].fam);
flushall();
printf("Enter age
%d\n",i+1);
scanf("%d",&a[i].x);
flushall();
}
int b[5];
for(i=0;i<5;i++)
b[i]=0;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
if(strcmp(a[i].fam,a[j].fam)==0)
b[i]=b[i]+1;
}
for(i=0;i<5;i++)
if(b[i]>1)
printf("%s
%d\n",a[i].fam, a[i].x);
getch();
return 0;
}