Red de conocimiento informático - Material del sitio web - Problemas típicos de programación en lenguaje C para estudiantes de primer año

Problemas típicos de programación en lenguaje C para estudiantes de primer año

Segunda pregunta:

# 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;

}

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) ;

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;

}

a[I]= '\ 0';

printf("%s\n ", a);

}