输入的是1 2 3输出结果是#include <stdio.h> int main(int argc, char *argv[]) { int a= 0; int b= 0; int c= 0; scanf("%d%d%d", &a, &b, &c); if(a>b) c=10; if(b>c) a=1; else b=2; printf("a=%d, b=%d, c=%d\n", a, b, c); return 0;}
时间: 2024-04-04 19:07:42 浏览: 59
根据输入的是 1 2 3,程序的输出结果应该是:
a=1, b=2, c=3
程序根据输入的三个整数,先将它们分别存放在变量 a、b、c 中,即 a=1, b=2, c=3。然后,判断 a 是否大于 b,显然不是,所以不会执行 c=10 的语句。接着,判断 b 是否大于 c,显然也不是,所以会执行 b=2 的语句。最后,使用 printf 函数输出变量 a、b、c 的值,即 a=1, b=2, c=3。
相关问题
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { printf("25600"); return 0; }
这段代码是一个简单的C语言程序,它的作用是输出数字25600。在程序中,使用了两个头文件<stdio.h>和<stdlib.h>,其中<stdio.h>包含了输入输出函数,而<stdlib.h>包含了一些常用的函数,例如atof()和atoi()。在main函数中,使用了三个参数,分别是argc、argv[]和return 0。其中,argc表示传递给程序的参数个数,argv[]表示传递给程序的参数列表,而return 0表示程序正常结束。在这个程序中,由于没有使用传递给程序的参数,因此argc和argv[]没有被使用到。
#include <stdio.h> #include <string.h> int main(int argc, const char *argv[]) { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); printf("%d,%d",*(a+1),*(ptr-1)); return 0; }
这段代码的输出结果是2, 5。
首先,定义了一个整型数组a,其中包含5个元素1, 2, 3, 4, 5。然后定义了一个指针ptr,指向数组a。
在打印语句中,*(a+1)表示取数组a中索引为1的元素,即2。而*(ptr-1)表示取指针ptr指向的地址的前一个地址的值,即5。
需要注意的是,对于数组名a,使用&a会得到整个数组的地址,所以&a+1实际上是指向了数组a的下一个地址。因此,ptr指向的是数组a的下一个地址。
希望能帮助到你!如果还有其他问题,请继续提问。
阅读全文