2014-09-05 72 views
-1

我试图打印从1到20的所有数字的立方体(n )。我想知道在我的代码如何评估C编程中for循环的表达式?

printf("Enter an integer value\n"); 

是必要的。这条线的目的是什么?有人可以解释吗?谢谢。这是我第一天学习C.

#include <stdio.h> 
#include <stdlib.h> 

/* 
* 
*/ 
int main(int argc, char** argv) 
{ 
    int num; 
    printf("Enter an integer value\n"); 
    scanf("%d", &num); 
    for (num=1; num<21; num++){ 
     printf("The cube of %d is %d\n", num, num*num*num); 
    } 
    getchar(); 
} 
+3

你谷歌'printf'?请参阅[printf(3)](http://man7.org/linux/man-pages/man3/printf.3.html) – 2014-09-05 05:30:27

+1

并且由于您正在开始学习C:在编译器中启用所有警告和调试信息(例如,如果使用[GCC](http://gcc.gnu.org/),使用'gcc -Wall -g'进行编译和**现在学** * * **如何使用调试器**(例如'gdb')。 – 2014-09-05 05:32:43

+0

@BasileStarynkevitch或者只是使用Visual Studio并切换到调试 – 2014-09-05 05:33:34

回答

0

它不适用于你的代码中的任何东西。

你所得到的变量num但你很快for (num=1 ...

如果你想把它当作一个有用你可以做类似的事情而忽略它:

int num, i; 
printf("Enter an integer value\n"); 
scanf("%d", &num); 
for (i=1; i<num; i++){ // print the cube of all numbers less than the entered value 
    printf("The cube of %d is %d\n", i, i*i*i); 
} 
getchar(); 

否则,你可以删除那两行代码:

printf("Enter an integer value\n"); 
scanf("%d", &num); 
2

这是没有意义的

printf("Enter an integer value\n"); 
scanf("%d", &num); 

它只是显示信息和读取键盘的价值,但在for循环
当你将1至变量NUM然后以前NUM替代的价值。

0

line printf(“输入整数值\ n”);

显示写着“输入整数值”的程序的用户,

在代码旁边线已经没有什么意义,在这里你要求用户输入一个整数,然后保存这个数字:

printf("Enter an integer value\n"); 
scanf("%d", &num); 

,因为在接下来的行设置参数NUM为1

这一个码扫描用户输入,然后计算出立方体:

int main(int argc, char** argv) 
{ 
    int num; 
    printf("Enter an integer value\n"); 
    scanf("%d", &num); 
    printf("The cube of %d is %d\n", num, num*num*num); 
} 
3

通过使用printf()您正在打印msg“输入整数值”。 通过使用scanf()你正在服用哪些你在屏幕上输入的数值为num变量(即初始化num)。但在for循环您重新初始化您num变量设置为“1”到“21”。所以printf()scanf()只是浪费时间,在这里。

如果你想有一个具体的数字魔方,然后就去做如下,

#include <stdio.h> 
#include <stdlib.h> 
void main() 
{ 
    int num; 

    printf("Enter an integer value\n"); 
    scanf("%d", &num); 

    printf("The cube of %d is %d\n", num, num*num*num); 

    getchar(); 
}