¿Qué tipo de pequeños programas interesantes se pueden escribir en lenguaje C?
El objetivo de diseño del lenguaje C es proporcionar un lenguaje de programación que pueda compilar y procesar memoria de bajo nivel de una manera sencilla, generar una pequeña cantidad de código de máquina y ejecutarse sin ningún soporte de entorno operativo.
El lenguaje C proporciona muchas funciones de procesamiento de bajo nivel, pero aún mantiene buenas características multiplataforma. Los programas en lenguaje C escritos con especificaciones estándar se pueden compilar en muchas plataformas informáticas, incluidos algunos procesadores integrados (computadoras de un solo chip o MCU) y supercomputadoras.
Título: Hay 1, 2, 3 y 4 números. ¿Cuántos números diferentes de tres cifras puedes inventar? ¿Cuanto cuestan en total?
Análisis del programa: Los números que pueden completar centenas, decenas y unidades son todos 1, 2, 3 y 4. Una vez formadas todas las permutaciones, se eliminan las permutaciones que no cumplen las condiciones.
Código fuente del programa:
main()
{int i, j, k printf (\ n); lt5;I++)/*El siguiente es un bucle triple*/for(j = 1;j & lt5;j++)
for(k = 1;k & lt5;k++), {f (i != ki! =jj! =k) /*Asegúrate de que I, J, K sean diferentes entre sí*/ printf(%d, %d, %d\n, I, J, K);}} p>
Tema: Las empresas emiten bonificaciones en función de las ganancias. Cuando la ganancia (I) es menor o igual a 6,5438+ millones de yuanes, la bonificación se puede aumentar en un 654,38+00%; cuando la ganancia es superior a 6,5438+ millones de yuanes y menos de 200.000 yuanes, será 654,38+00%; Para la parte inferior a 6,5438 millones de yuanes, el 7,5% se deducirá de la cantidad de 6,5438 millones de RMB + RMB. Entre 200.000 y 400.000 yuanes, se puede deducir el 5% para la parte superior a 200.000 yuanes; entre 400.000 y 600.000, la parte superior a 400.000 yuanes se puede deducir el 3%; ser deducido La parte anterior puede obtener una comisión de 654,38+0,5%; cuando sea superior a 654,38+0 millones de yuanes, la parte superior a 654,38+00.000 yuanes obtendrá una comisión de 654,38+0%. Ingrese la ganancia del mes actual I desde el teclado para conocer el bono total que se debe pagar.
Análisis del programa: utilice el eje numérico para dividir y posicionar. Tenga en cuenta que la bonificación debe definirse como un número entero creciente.
Código fuente del programa:
main()
{
long int I;
int bonus1, bonificación2, bonificación4, bonificación6, bonificación10, bonificación;
scanf(%ld, I);
bonificación 1 = 100000 * 0,1; bonificación 2 = bonificación 1+100000 * 0,75; /p>
bonificación 4 = bonificación 2+200000 * 0,5;
bonificación 6 = bonificación 4+200000 * 0,3;
bonificación 10 = bonificación 6+400000 * 0,15;
si(I<=100000)
Bonificación = I * 0,1;
si no(I<=200000)
bonificación = bonificación 1+(I-100000)* 0,075;
si no(I & lt;=400000)
bonificación = bonificación 2+(I-200000)* 0,05;
si no(I & lt;=600000)
bonificación = bonificación 4+(I-400000)* 0,03;
si no(I <= 1000000)
bonificación = bonificación 6+(I-600000)* 0,015;
Otros
bonificación = bonificación 1(I-1000000 )* 0,01;
printf(bonus=%d, bonus);
}
6. Pregunta: Un número entero se convierte en un número completo después de sumar 100 A al cuadrado más 168. es un cuadrado completo. ¿Cuales son los numeros?
Análisis del plan: si se considera que está dentro de 65438+ millones, agregue 100 a este número antes de recetar el medicamento y agregue 268 a este número antes de recetar el medicamento. El resultado después de prescribir el medicamento es un resultado si cumple con las siguientes condiciones.
Código fuente del programa:
#Contiene matemáticas.
main()
{
long int. i, x, y, z;
for(I = 1;i<100000;i++)
{ x = sqrt(I+100);/*x es la adición de la prescripción. resultado después de 100*/
y = sqrt(I+268);/*y es el resultado después de sumar 168*/
If(x * x = = I+ 100y * y = = I+268)/*Si el cuadrado de la raíz cuadrada de un número es igual al número, significa que el número es un cuadrado perfecto*/
printf(\n%ld\n , I);
}
}
7. Ingrese un día de un año determinado y decida qué día del año es.
Análisis del programa: tome el 5 de marzo como ejemplo. Hay que sumar los dos meses anteriores y agregar 5 días para obtener este día este año. En el caso especial de años bisiestos y meses de entrada mayores a 3, deberías considerar agregar un día.
Código fuente del programa:
main()
{
int día, mes, año, suma, salto;
printf(\nPor favor ingrese el año, mes, día\n);
scanf(%d, %d, %d, año, mes, día).
Cambiar(mes)/*Calcular el número total de días del mes anterior a un mes determinado*/
{
Caso 1: suma = 0; romper;
Caso 2: suma = 31 roto;
Caso 3: suma = 59 roto
Caso 4: suma = 90 roto; p>
Caso 5: suma = 120;
Caso 6: suma = 151;
Caso 7: suma = 181;
Caso 8: suma = 212;
Caso 9: suma = 243;
Caso 10: suma = 273; >Caso 11 :sum = 304;
Caso 12:sum = 334;
defaultrintf (error de datos); /p>
Suma = suma + días; /*Suma el número de días en un día*/
if(año % 400 = = 0 | |(año % 4 = = 0 año % 100!=0) )/*Juzga si es año bisiesto*/
salto = 1;
Otros
Salto = 0;
if(salto = = 1 mes> 2)/*Si es año bisiesto y el mes es mayor a 2, se sumará un día al total de días*/
sum++;
printf (Hoy es el %désimo día. , suma);}
8. Pregunta: Ingrese tres números enteros x, Y, z Y, Z. Por favor genere estos tres. números de pequeño a grande.
Análisis del programa: Intentamos poner el número más pequeño en X y comparar X e Y primero. Si X > Y intercambia los valores de X e Y, luego compara X y Z, si X >: Z intercambia los valores de
Código fuente del programa:
main()
{
int x, y, z, t;
scanf(%d%d%d,x,y,z);
if(x>y)
/*Intercambiar los valores de x, y* /
if (x & gt; z)
/*Intercambiar los valores de x y z*/
If (y & gtz)
/*Intercambiar los valores de z e y*/
printf (de pequeño a grande: %d %d %d\n, x, y, z) ;
}
9. Título: Utilice * para generar el patrón de la letra c.
Análisis del programa: Puede utilizar
Código fuente del programa:
#Contiene stdio.h
Main()
{
printf(¡Hola C-world!\n);
printf(* * * * \n);
printf(* \ n);
printf(* \n);
printf(* * * * \n);
}
10 Título: Genere un patrón especial, ejecútelo en el entorno C y eche un vistazo, ¡es muy hermoso!
Análisis del programa: Hay 256 caracteres * * *. Diferentes personajes, diferentes gráficos.
Código fuente del programa:
#Contiene stdio.h
main()
{
char a =176, b = 219;
printf(%c%c%c%c%c\n, b, a, a, a, b); c%c%c%c%c\n,a,b,a,b,a);
printf(%c%c%c%c%c\n,a,a,b , a, a);
printf(%c%c%c%c%c\n, a, b, a, b, a
printf(%c); %c%c%c%c\n,b,a,a,a,b);}
11. Título: Salida de fórmula 9*9.
Análisis del programa: considere ramas y columnas, ***9 filas y 9 columnas, I controla las filas y J controla las columnas.
Código fuente del programa:
#Contiene stdio.h
main()
{
int i , j, resultado
printf(\n);
for(I = 1;i<10;i++)
{ for(j = 1; j & lt10;j++)
{
Resultado = I * j;
printf(%d*%d=%-3d,I,j, resultado) ; /*-3d significa alineación a la izquierda, representando 3 dígitos*/
}
printf(\n); p>}
}
12. Tema: Es necesario exportar el tablero de ajedrez.
Análisis del programa: controlo las filas, J controla las columnas y controla si se generan cuadrados negros o blancos según el cambio de la suma de I + J.
Código fuente del programa:
#Contiene stdio.h
main()
{
int i , j;
for(I = 0;i<8;i++)
{
for(j = 0;j & lt8;j++)
If ((i+j)%2==0)
printf(%c%c, 219, 219
Otros
printf();
printf(\n);
}
}
13. caras sonrientes encima de las escaleras al mismo tiempo.
Análisis del programa: I controla las filas, J controla las columnas y J controla el número de cuadrados negros generados según los cambios en I.
Código fuente del programa:
#Contiene stdio.h
main()
{
int i , j;
printf(\n);/*Generar dos caras sonrientes*/
for(I = 1;I<11;i++)
{
for(j = 1; j & lt= I; j++)
printf(%c%c, 219, 219);
printf( \n );
}