Problemas típicos de programación en lenguaje C para estudiantes de primer año
# include & ltstdio.h & gt
main()
{
int a[10], yo , j, min, t;
Printf("Ingrese diez números:"
for(I = 0; I<10;i=i+1)
scanf("%d ", &a[I]);
printf(" \ n ");
for(I = 0; i & lt10;i=i). +1)
{
mín = I
para(j = I+1;j & lt10;j=j +1)
if(a[min]& gt; a[j])
{
min = j;
}
t = a[minuto];
a[min]= a[I];
a[I]= t;
} p>
Printf("Después de ordenar:");
for(I = 0;i<10;i=i+1)
printf("%d ",a [I]);
printf("\n");
}
Pregunta 8:
(4) (a ) Contenido: encuentre el "punto de silla" de una matriz bidimensional, es decir, el elemento en esta posición es el más grande de la fila y el más pequeño de la columna. Es posible que tampoco haya puntos de silla.
①La matriz bidimensional tiene puntos de silla.
9 80 205 40
90 -60 96 1
210 -3 101 89
② Los arreglos bidimensionales no tienen silla agujas.
9 80 205 40
90 -60 196 1
210 -3 101 89
45 54 156 7
Utilice la función scanf para ingresar el valor de cada elemento en la matriz desde el teclado y verificar si el resultado es correcto. El título no especifica el número de filas y columnas de la matriz bidimensional. El programa debería poder manejar matrices con cualquier número de filas y columnas. Por lo tanto, en teoría, es necesario preparar una variedad de datos de matriz en diferentes filas y filas, pero esta carga de trabajo es demasiado grande, en términos generales, no es necesario hacer esto. Solo necesita preparar datos típicos.
Si se ha especificado el número de filas y columnas de la matriz, puede especificar valores iniciales para los elementos de la matriz en el programa sin utilizar la función scanf. Modifique el programa para implementarlo.
b) Programa:
1. Utilice la función scanf para ingresar el valor del elemento de la matriz:
# include & ltstdio.h & gt
p>
#Definición N 3
#Definición M 4
void main()
{
int i, j , k, a [N][M];
int max, maxj, flag
Printf("Ingrese una matriz 2D:\ n ");
for( I = 0;i<n;i=i+1)
for(j = 0;j<m;j=j+1)
scanf("%d " ,&a[I][j]);
for(I = 0;i<n;i=i+1)
{
max = a[ I][0];
maxj = 0;
for(j = 0; j & ltm; j=j+1)
si(a [I][j]& gt;max)
{
max = a[I][j];
maxj = j
}
bandera = 1;
for(k = 0; k & ltn; k=k+1)
si (max & gt; a[k][maxj])
{
bandera = 0;
Continuar;
}
if (bandera)
{
printf("a[%d][%d]=%d\n ", I, maxj, max) ; p>
Romper;
}
}
if(!flag)
Printf("Punto de silla desnudo!\ n ");
}
2. Se han especificado las filas y columnas de la matriz y se asignan los valores iniciales a los elementos de la matriz:
# include & ltstdio.h & gt
void main()
{
int a[3][4]={{9, 80 , 205, 40} , {90, -60, 96, 1}, {210, -3, 101, 89 } }
int i, j, k
int max, maxj, flag
printf(" la matriz es:\ n ");
for(I = 0;i<3;i=i+1)
{
for(j = 0; j & lt4;j=j+1)
printf("%5d ", a[I][j]);
printf("\n");
}
printf("\n");
for(I = 0; i<3 ;i=i+1)
{
max = a[I][0]
maxj = 0; > for(j = 0;j & lt4;j=j+1)
if(a[I][j]& gt;máximo)
{
max = a[I][j];
maxj = j;
}
bandera = 1;
for (k = 0;k & lt3;k=k+1)
if(max & gt;a[k][maxj])
{
bandera = 0;
Continuar
}
if(bandera)
{
printf ( "a[%d][%d]=%d\n ",I,maxj,max);
>Romper;
}
}
if (! flag)
Printf("¡A pelo!\n ");< / p>
}
Pregunta 12:
# include & ltstdio.h & gt
void main()
{
char a[20], b[10];
int i=0, j = 0;
scanf("%s%s ", a, b);
mientras (a[i]!= ' \ 0 ')I = I+1;
mientras (b[j]!='\0 ' )
{
a[i++]= b[j];
j = j+1;
} p >
a[I]= '\ 0';
printf("%s\n ", a);
}