<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ c - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Descubre miles de cursos de programación escritos por expertos. Aprende Desarrollo Web, Ciencia de Datos, DevOps, Seguridad y obtén asesoramiento profesional para desarrolladores. ]]>
        </description>
        <link>https://www.freecodecamp.org/espanol/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ c - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/espanol/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Thu, 14 May 2026 19:58:40 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/espanol/news/tag/c/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ Declaraciones C Break y Continue - Explicación de las Declaraciones de Control de Bucle en C ]]>
                </title>
                <description>
                    <![CDATA[ En el lenguaje de programación C, hay momentos en los que querrás cambiar el comportamiento de un bucle. Y las declaraciones continue y break te ayudan a omitir iteraciones y salir de los bucles bajo ciertas condiciones. En este tutorial, aprenderás cómo las declaraciones break y continue alteran el flujo ]]>
                </description>
                <link>https://www.freecodecamp.org/espanol/news/declaraciones-c-break-y-continue-explicacion-de-las-declaraciones-de-control-de-bucle-en-c/</link>
                <guid isPermaLink="false">65fa5ba124402003fe4e4ac0</guid>
                
                    <category>
                        <![CDATA[ c ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Andrés  Torres ]]>
                </dc:creator>
                <pubDate>Tue, 26 Mar 2024 19:00:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/espanol/news/content/images/2024/03/markus-spiske-C0koz3G1I4I-unsplash--1-.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>Artículo original:</strong> <a href="https://www.freecodecamp.org/news/c-break-and-continue-statements-loop-control-statements-in-c-explained/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">C Break and Continue Statements – Loop Control Statements in C Explained</a>
      </p><p><strong>En el lenguaje de programación C, hay momentos en los que querrás cambiar el comportamiento de un bucle. Y las declaraciones <code>continue</code> y <code>break</code> te ayudan a omitir iteraciones y salir de los bucles bajo ciertas condiciones.</strong></p><p>En este tutorial, aprenderás cómo las declaraciones <code>break</code> y <code>continue</code> alteran el flujo de control de tu programa.</p><p>¡Comencemos!</p><h2 id="c-mo-usar-break-para-salir-de-bucles-en-c">Cómo Usar break para Salir de Bucles en C</h2><p>En C, si deseas salir de un bucle cuando se cumple una condición específica, puedes utilizar la declaración <code>break</code>.</p><p>Como con todas las declaraciones en C, la declaración <code>break</code> debe terminar con un punto y coma (;).</p><p>Veamos un ejemplo para entender qué significa esto.</p><p>Considera el siguiente fragmento de código.</p><pre><code class="language-c">#include&lt;stdio.h&gt;
int main()
{
    int count = 0;
    while(count &lt; 100)
    {
        printf("The value of count is %d \n", count);
        count++;
    }
    return 0;
}</code></pre><p>En este ejemplo, el bucle while repite las declaraciones en el cuerpo del bucle mientras que la variable <code>count</code> sea menor que 100.</p><p>El contador comienza en 0, y aumenta en 1 con cada iteración.</p><p>Ahora, este es el flujo de control normal.</p><p>Modifiquemos esto un poco.</p><ul><li>Lee un entero <code>fav_num</code> del usuario. Supongamos que <code>fav_num</code> es el número favorito del usuario del conjunto {0, 1, 2, ..., 99}.</li><li>Durante cada paso a través del bucle, debes verificar si el valor actual de <code>count</code> es igual a <code>fav_num</code>.</li><li>Te gustaría salir del bucle cuando <code>count</code> sea igual a <code>fav_num</code>.</li></ul><p>Entonces, ¿cómo haces esto?</p><p>Lee a través del siguiente fragmento de código:</p><pre><code class="language-c">#include&lt;stdio.h&gt;
int main()
{
    // Read in the user's favorite number
    int fav_num;
    printf("Enter your favorite number from 0 to 99: ");
    scanf("%d", &amp;fav_num);
    
    int count = 0;
    while(count &lt; 100)
    {
        printf("\nThe value of count is %d.", count);
        if (count == fav_num)
    		break;
        count++;
    }
    return 0;
}</code></pre><p>Durante cada paso a través del bucle, utilizas <code>if (count == fav_num)</code> para verificar si <code>count</code> es igual a <code>fav_num</code>. </p><p>Luego agregas la declaración <code>break;</code> al cuerpo del condicional <code>if</code>. </p><p>Mientras <code>count</code> ≠ <code>fav_num</code>, el control nunca alcanza la declaración <code>break;</code>. </p><p>Cuando <code>count</code> es igual a <code>fav_num</code>, se activa la declaración <code>break;</code>, y luego sales del bucle. El control ahora llega a la primera declaración fuera del bucle.</p><p>A continuación se muestra un ejemplo de salida:</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/espanol/news/content/images/2024/03/image-1.png" class="kg-image" alt="image-1" srcset="https://www.freecodecamp.org/espanol/news/content/images/size/w600/2024/03/image-1.png 600w, https://www.freecodecamp.org/espanol/news/content/images/2024/03/image-1.png 616w" width="616" height="187" loading="lazy"></figure><p>Observa cómo el control sale del bucle una vez que el contador alcanza 3, que aquí es <code>fav_num</code>.</p><p>En la próxima sección, verás otro ejemplo que reforzará tu comprensión. </p><h2 id="ejemplo-de-declaraci-n-break-en-c">Ejemplo de Declaración break en C</h2><p>▶ Considera el siguiente ejemplo:</p><ul><li><code>A[10]</code> es un arreglo de 10 enteros, inicializado con ceros.</li><li>Deseas leer los elementos del arreglo <code>A</code> del usuario y calcular la suma de los elementos en el arreglo.</li><li>Sin embargo, requieres que cada elemento de <code>A</code> no sea mayor que 20.</li><li>Una vez que el usuario ingresa un número mayor a 20, optas por terminar el bucle. Aquí es donde entra en juego la declaración <code>break;</code>.</li></ul><p>Ahora, lee el siguiente fragmento de código que hace exactamente esto.</p><pre><code class="language-c">#include &lt;stdio.h&gt;

int main()
{
    int A[10] = {0};
    int sum = 0;
    
    for(int i = 0; i &lt; 10; i++)
    {
        printf("Enter a number: ");
        scanf("%d",&amp;A[i]);
        if (A[i] &gt; 20)
            break;
        
        sum += A[i];
    }
    printf("Sum: %d",sum);
    return 0;
}
</code></pre><ol><li>Aquí, la <code>sum</code> se inicializa en <code>0</code>. En cada paso a través del bucle, se le pide al usuario que ingrese un número. </li><li>El número ingresado se suma al valor actual de <code>sum</code>. </li><li>Si el usuario ingresa un número mayor que 20, el control sale del bucle.</li></ol><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/espanol/news/content/images/2024/03/image-191.png" class="kg-image" alt="image-191" width="543" height="130" loading="lazy"></figure><p>Observa cómo el bucle termina una vez que el usuario ingresa un número mayor que <code>20</code>, en este caso <code>21</code>. Posteriormente se imprime la suma de los otros dos números (2 y 3).</p><p>Si has utilizado la declaración <code>switch</code> en C, probablemente hayas utilizado la declaración <code>break;</code> para salir de la escalera de casos tan pronto como se encuentra una etiqueta de caso coincidente.</p><p>Sin embargo, este tutorial tiene como objetivo enseñar cómo utilizar las declaraciones <code>break;</code> y <code>continue;</code> para cambiar el comportamiento de los bucles.</p><h2 id="c-mo-usar-continue-para-omitir-iteraciones-en-c">Cómo usar continue para omitir Iteraciones en C</h2><p>En C, si deseas omitir iteraciones en las que se cumpla una condición específica, puedes utilizar la declaración <code>continue</code>.</p><p>A diferencia de la declaración <code>break;</code>, la declaración <code>continue;</code> no sale del bucle. En cambio, omite solo aquellas iteraciones en las que la condición es verdadera.</p><p>Una vez que se activa la declaración <code>continue;</code>, se omiten las declaraciones en el resto del bucle. Y el control del bucle continúa con la siguiente iteración.</p><h2 id="ejemplo-de-declaraci-n-continue-en-c">Ejemplo de Declaración <code>continue</code> en C</h2><p>Utilicemos el ejemplo de la sección anterior y modifiquémoslo un poco.</p><p>Digamos que no deseas salir del bucle cuando el usuario ingresa un número mayor que 20. Más bien, deseas ignorar esas entradas particulares y calcular la suma de los números restantes en el arreglo <code>A</code>.</p><p>Supongamos que el usuario ingresa 10 números, 3 de los cuales son mayores que 20. Tu código ahora debería calcular y mostrar la suma de los 7 números restantes.</p><p>Entonces, ¿cómo lo haces?</p><p>Puedes utilizar la declaración <code>continue;</code> para omitir solo aquellas iteraciones para las cuales la entrada del usuario fue mayor que 20. Y puedes hacerlo como se muestra en el código a continuación:</p><pre><code class="language-c">#include &lt;stdio.h&gt;

int main()
{
    int A[10] = {0};
    int sum = 0;
    
    for(int i = 0; i &lt; 10; i++)
    {
        printf("Enter a number: ");
        scanf("%d",&amp;A[i]);
        if (A[i] &gt; 20)
            continue;
        
        sum += A[i];
    }
    printf("Sum: %d",sum);
    return 0;
}</code></pre><p>En la salida de ejemplo, puedes observar que el primer número ingresado es 21, que es mayor que 20.</p><p>Sin embargo, el bucle se ejecuta 10 veces. Y si estás listo para un rápido ejercicio de suma, puedes notar que los números distintos de 21 (2, 3, 5, 4, 7, 15, 14, 2 y 5) suman efectivamente 57. ✅</p><figure class="kg-card kg-image-card"><img src="https://www.freecodecamp.org/espanol/news/content/images/2024/03/image-192.png" class="kg-image" alt="image-192" srcset="https://www.freecodecamp.org/espanol/news/content/images/size/w600/2024/03/image-192.png 600w, https://www.freecodecamp.org/espanol/news/content/images/2024/03/image-192.png 656w" width="656" height="322" loading="lazy"></figure><h2 id="conclusi-n">Conclusión</h2><p>En este tutorial, has aprendido cómo puedes utilizar las declaraciones <code>break;</code> y <code>continue;</code> para controlar bucles en C.</p><p>En resumen, has aprendido:</p><ul><li>cómo la declaración <code>break;</code> ayuda a salir de bucles bajo condiciones específicas. </li><li>cómo la declaración <code>continue;</code> ayuda a omitir iteraciones bajo condiciones específicas.</li></ul><p>Espero que hayas encontrado útil este tutorial. ¡Feliz codificación! 😄</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Operador Ternario en C ]]>
                </title>
                <description>
                    <![CDATA[ Los programadores usan el operador ternario para tomar decisiones en lugar de sentencias condicionales if y else más largas. El operador ternario toma tres argumentos:  1. Un argumento de comparación  2. El resultado si esa comparación devuelve true  3. El resultado si esa comparación devuelve false Es ]]>
                </description>
                <link>https://www.freecodecamp.org/espanol/news/operador-ternario-en-c/</link>
                <guid isPermaLink="false">6302763849da500911a0ee62</guid>
                
                    <category>
                        <![CDATA[ Programación ]]>
                    </category>
                
                    <category>
                        <![CDATA[ c ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Anna Aimeri ]]>
                </dc:creator>
                <pubDate>Thu, 22 Sep 2022 17:33:19 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/espanol/news/content/images/2022/08/5f9c9db2740569d1a4ca3922.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>Artículo original:</strong> <a href="https://www.freecodecamp.org/news/c-ternary-operator/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Ternary Operator in C Explained</a>
      </p><p>Los programadores usan el <strong>operador ternario</strong> para tomar decisiones en lugar de sentencias condicionales <strong>if </strong>y <strong>else </strong>más largas.</p><p>El operador ternario toma tres argumentos:</p><ol><li>Un argumento de comparación</li><li>El resultado si esa comparación devuelve true</li><li>El resultado si esa comparación devuelve false</li></ol><p>Es de ayuda pensar en el operador ternario como una forma corta de escribir una sentencia if-else. A continuación un ejemplo simple de toma de decisiones usando <strong>if </strong>y <strong>else</strong>:</p><pre><code class="language-c">int a = 10, b = 20, c;

if (a &lt; b) {
    c = a;
}
else {
    c = b;
}

printf("%d", c);</code></pre><p>Este ejemplo tiene más de 10 líneas, pero eso no es necesario. El programa puede escribirse en 3 líneas de código usando un operador ternario.</p><h3 id="sintaxis"><strong><strong><strong>S</strong>intaxis</strong></strong></h3><p><code>condición ? valor_true : valor_false</code></p><p>Esta sentencia se evalúa a <code>valor_true</code> si se cumple la <code>condición</code>, y a <code>valor_false</code> en caso contrario.</p><p>Este es el ejemplo de arriba usando el operador ternario:</p><pre><code class="language-c">int a = 10, b = 20, c;

c = (a &lt; b) ? a : b;

printf("%d", c);</code></pre><p>El output del ejemplo de arriba es:</p><pre><code class="language-c">10</code></pre><p><code>c</code> toma el valor de <code>a</code>, porque se cumplió la condición <code>a &lt; b</code>.</p><p>Recordemos que los argumentos de <code>valor_true</code> y <code>valor_false</code> deben tener el mismo tipo, y deben ser expresiones simples en lugar de sentencias completas.</p><p>Los operadores ternarios pueden anidarse al igual que las sentencias if-else. Consideremos el siguiente código:</p><pre><code class="language-c">int a = 1, b = 2, ans;
if (a == 1) {
    if (b == 2) {
        ans = 3;
    } else {
        ans = 5;
    }
} else {
    ans = 0;
}
printf ("%d\n", ans);</code></pre><p>Este es el código de arriba escrito con operadores ternarios anidados:</p><pre><code class="language-c">int a = 1, b = 2, ans;
ans = (a == 1 ? (b == 2 ? 3 : 5) : 0);
printf ("%d\n", ans);</code></pre><p>El output de ambos programas debería ser:</p><pre><code class="language-c">3</code></pre> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
