C语言中可以使用数组元素做赋值运算吗?

如题所述

可以,但是输入数据的时候一定也要加上逗号。

用scanf()读取数据时,输入的格式必须和scanf()的格式控制字符串对应,比如说:

1、scanf("%d,%d",&a,&b);因为两个%d之间有一个逗号,所以在输入时两个整数之间只能用逗号分隔,如果用其它符号分隔就会出错(比如说此时用空格、回车分隔就会出错)

2、scanf("%d%d",&a,&b);这个格式控制字符串就可以用空白分隔(空格,回车都可以)

扩展资料:

C语言逗号运算符:

逗号运算符是所有运算符中级别最低的,遇到逗号运算符表示运算结束;

int i=0;

int j=(i++,i++,i++);

printf("i=%d,j=%d\n", i,j);//i=3,j=2;i++遇;才算结束

i=0;

int k=(i++)+(i++)+(i++);

printf("i=%d,k=%d\n", i,k);//i=3,k=0

int a=10;

int b;

int num = (a = 19, b = 10, a + 1);

printf("a=%d,b=%d,num=%d\n", a,b,num);//a=19,b=10,num=20 

C语言逗号表达式:

这种类型的运算符成为逗号表达式,又称为“顺序求值运算符”。 

int a=10;

a = 3 * 5, a * 4;

printf("%d\n", a);//15;把a = 3 * 5作为一个整体,是一个赋值语句;后面a * 4是另外一个语句;

a=10;

printf("%d\n", (a = 3 * 5, a * 4));//60;括号内是一个整体,它的值是最后一个表达式的值,先运行得出a=15,后运算15*4=60;

a=10;

printf("%d\n", a = 3 * 5, a * 4);//15;这里的逗号是作为参数的分隔作用,a=15,后面的a * 4没有打印;

a=10;

printf("%d,%d\n", a = 3 * 5, a * 4);//15,40;

温馨提示:答案为网友推荐,仅供参考
相似回答