Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ci中交换两个数字只需在c程序中搜索编码,然后我写的代码就不同了_C - Fatal编程技术网

在ci中交换两个数字只需在c程序中搜索编码,然后我写的代码就不同了

在ci中交换两个数字只需在c程序中搜索编码,然后我写的代码就不同了,c,C,我想用c写一个程序来交换两个数字。我只是用谷歌搜索c程序中的编码,然后我写的代码就不同了。有一些误解我无法理解。请有人强调我的问题,谢谢 在这里,我把num1,num2,temp作为变量。然后我把temp值分配给num1,知道后来temp被分配给num2的值(我认为第4行和第5行会给第7行printf作为num1的值,因为交换。然后第6行给第8行printf作为num2的值,作为num1的值)。 不幸的是结果不同 int num1,num2,temp; printf("give no 1

我想用c写一个程序来交换两个数字。我只是用谷歌搜索c程序中的编码,然后我写的代码就不同了。有一些误解我无法理解。请有人强调我的问题,谢谢

在这里,我把num1,num2,temp作为变量。然后我把temp值分配给num1,知道后来temp被分配给num2的值(我认为第4行和第5行会给第7行printf作为num1的值,因为交换。然后第6行给第8行printf作为num2的值,作为num1的值)。 不幸的是结果不同

int num1,num2,temp;
    printf("give no 1 and no 2  ");
    scanf("%d %d",&num1, &num2);
   num1=temp;
   temp=num2;
   num2=num1;
 printf("\n After swapping,num1=%d" ,num1);
    printf("\n afterswapping, num2=%d",num2);
预期两个数字被交换,我给变量的值是什么?我收到的输出num1为34,num2也为34

int num1,num2,temp;
    printf("give no 1 and no 2  ");
    scanf("%d %d",&num1, &num2);
    temp = num1;
    num1 = num2;
    num2 = temp;
    printf("\n After swapping,num1=%d" ,num1);
    printf("\n afterswapping, num2=%d",num2);
画一个跟踪表,看看你写的不是交换。 FOA,在temp变量中保存一个数字,然后您可以运行使用第二个num保存的值的变量,然后,将保存在temp中的值放在num1中

注意:您可以在不使用Temp变量的情况下以更优雅的方式执行此操作:

num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2

试试看!

只需阅读您编写的代码。在纸上绘制代表变量的框,并逐步应用更改。您现在所做的没有任何意义。此外,您的程序不会检查
scanf
的返回值,这是一个错误。这应该会有帮助: