运行正常但不显示东西

问题遇到的现象和发生背景

一切都正常就是不显示

问题相关代码,请勿粘贴截图

#include
#include
int main()
{
int a,b,i,k,count1,count2;
for(k=4;k<=100;k+k+2)
{
for(a=2;a<=k/2;a++)
{
//判断a是否为质数
count1=0;
for(i=2;i<=a-1;i++)
{
if(a%i==0)
{
count1++;
break;
}
}
if(count1==0) //如果a为质数
{
b=k-a;
//判断b是否为质数
count2=0;
for(i=2;i<=b;i++)
{
count2++;
break;
}
}
if(count2==0) //如果b也为质数
{
printf("%d=%d+%d",k,a,b);
break; //打印这个解并跳出这个循环
}
}
}
system("pause");
return 0;
}

for(k=4;k<=100;k+k+2)
k+k+2是在干啥,你是认真的吗
这就是个标准死循环,k永远等于4

第一个for.循环有错,你不能那样整,如果你的目的是想找从4-100的话,那个k要写成k++.
而你写的相当于是一个常量,是不变的

修改见注释处,供参考:

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int a, b, i, k, count1, count2;
    for (k = 4; k <= 100; k++) //for (k = 4; k <= 100; k + k + 2) 修改
    {
        for (a = 2; a <= k/2 ; a++) 
        {
            //判断a是否为质数
            count1 = 0; 
            for (i = 2; i <= a - 1; i++)
            {
                if (a % i == 0)
                {
                    count1++;
                    break;
                }
            }
            if (count1 == 0) //如果a为质数
            {
                b = k - a;
                //判断b是否为质数
                count2 = 0;
                for (i = 2; i <= b - 1; i++) //for (i = 2; i <= b; i++)
                {
                    if (b % i == 0) //修改
                    {
                        count2++;
                        break;
                    } // 修改
                }
               //}  修改 
                if (count2 == 0 && b != 1) //如果b也为质数   修改
                {
                    printf("%d=%d+%d\n", k, a, b);
                    break; //打印这个解并跳出这个循环
                }
            }  //修改
        }
    }
    system("pause");
    return 0;
}