C语言,将变量的值乘以1,得到2

C语言,将变量的值乘以1,得到2,c,C,问题是,我试图为数字1-10显示一个由n和n^2组成的表格,除了第一组数字之外,一切似乎都很好。似乎程序,可能是由于我糟糕的编码,认为1*1=2。我尝试过重新排列代码并使用不同的循环,但我能得到的最接近的结果是正确显示除第一组之外的所有其他数字 代码如下: int main (void) { int num, num2, exp; num = 0; printf ("\nPROGRAM TO DETERMINE SQUARES OF NUMBERS 1 THROUG

问题是,我试图为数字1-10显示一个由n和n^2组成的表格,除了第一组数字之外,一切似乎都很好。似乎程序,可能是由于我糟糕的编码,认为1*1=2。我尝试过重新排列代码并使用不同的循环,但我能得到的最接近的结果是正确显示除第一组之外的所有其他数字

代码如下:

int main (void)
{

    int num, num2, exp;

    num = 0;

    printf ("\nPROGRAM TO DETERMINE SQUARES OF NUMBERS 1 THROUGH 10\n\n");
    printf (" -Numbers---                         ---Squares- \n"); 
    printf ("-------------------------------------------------\n");   

    for (num2 = num + 1; num2 <= 10; exp = num2*num2)   
        {
        printf ("   %3d                                   %3d\n", num2, exp);
        printf ("  ----------------------------------------------\n");
             ++num2; 
        }
}
int main(无效)
{
int num,num2,exp;
num=0;
printf(“\n用于确定数字1到10的平方的程序\n\n”);
printf(“-数字-----正方形-\n”);
printf(“-------------------------------------------------------------\n”);

对于(num2=num+1;num2为什么num会存在?我会这样做,也会将循环内容放在循环中,而不是放在循环控制中--我相信这会使逻辑更简单:

int main (void)
{

    int num2, exp;

    printf ("\nPROGRAM TO DETERMINE SQUARES OF NUMBERS 1 THROUGH 10\n\n");
    printf (" -Numbers---                         ---Squares- \n"); 
    printf ("-------------------------------------------------\n");   

    for (num2 = 1; num2 <= 10; num2++)   
    {
        exp = num2*num2;
        printf ("   %3d                                   %3d\n", num2, exp);
        printf ("  ----------------------------------------------\n");
    }
}
int main(无效)
{
国际货币单位m2,exp;
printf(“\n用于确定数字1到10的平方的程序\n\n”);
printf(“-数字-----正方形-\n”);
printf(“-------------------------------------------------------------\n”);

for(num2=1;num2这不是
for
应该如何使用的…我无法想象你是如何针对如此简单的请求想出这些东西的:使用调试器一步一步地跟踪执行将告诉你哪里出了问题。
exp
为什么存在?
printf(“%3d%3d\n”,num2,num2*num2);
;)@KingsIndian-你的观点理解得很好-这是一个风格问题-我认为
exp
使程序更清晰,而
num
使程序更不清晰。当然,我可以去掉所有变量,但我认为没有那么清楚。@Hogan,这正是我想要它做的,谢谢!!@KingsIndian,实际上,我只有一个num v一开始是可变的,把它改成两个num变量并没有改变任何东西,就像我希望的那样。结果是一样的,不管我有一个还是两个,我只是增加了一个额外的步骤,看看它是否改变了什么,但它没有改变,我忘了把它拿出来。