inta,b,c;a=(a=3,b=4,c=5);
时间: 2024-08-13 17:06:14 浏览: 32
在C语言中,这样的表达式`a = (a=3, b=4, c=5)`是不合法的,因为C语言的语法不支持多重赋值语句同时对三个或更多变量进行赋值。这意味着,不能在一个括号表达式中同时给a、b和c赋值。
正确的做法应该是分别赋值:
```c
int a, b, c;
a = 3;
b = 4;
c = 5;
```
或者,如果这些赋值是相关的,并且希望改变a的值,可以使用逗号运算符,但不会影响其他变量:
```c
int a = 3, b = 4, c = 5;
a = (a, b, c); // 这里只会改变a的值,因为逗号运算符返回最后一个操作数的值
```
相关问题
C语言中a=b=c=0
在C语言中,a=b=c=0的含义是将0赋值给c,然后将c的值赋值给b,最后将b的值赋值给a。这个表达式的值是0,因为赋值运算符的返回值是被赋的值。因此,a、b和c的值都是0。
下面是一个示例代码:
```c
#include <stdio.h>
int main() {
int a, b, c;
a = b = c = 0;
printf("a=%d, b=%d, c=%d\n", a, b, c); // 输出:a=0, b=0, c=0
return 0;
}
```
c语言输入a=3,b=5
您可以使用如下代码来输入a=3和b=5的值:
```c
#include <stdio.h>
int main() {
int a, b;
printf("请输入a和b的值,用逗号分隔:");
scanf("%d,%d", &a, &b);
printf("a=%d, b=%d\n", a, b);
return 0;
}
```
在运行程序后,您需要在终端输入`3,5`,然后按下回车键即可得到输出结果:
```
请输入a和b的值,用逗号分隔:3,5
a=3, b=5
```