帮我做三道C语言题,谢谢!

来源:百度知道 编辑:UC知道 时间:2024/05/29 18:34:28
1.main()
{
int a,b,k;
scanf("%d,%d ",&a,&b);
k=a;
if(aelse k=b%a;
printf("%d\n ",k);
}
2.main()
{
int x=1,y=3;
printf("%d,",x++);
{ int x=0;x+=y*2;
printf("%d,%d, ",x,y);
}
printf("%d,%d\n",x,y);
}
3.main()
{
int i;
int a〔3〕〔3〕={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf("%d ",a〔2-i〕〔i〕);
}
希望能得到详细讲解!谢谢!题中[ ]是什么意思?X++是什么意思?本人系初学者望能得到详细解答!第一题:
1.main()
{
int a,b,k;
scanf("%d,%d ",&a,&b);
k=a;
if(a else k=b%a;
printf("%d\n ",k);
}

第一题这里少了东西:
if(aelse k=b%a;

可能是想写:
if(a>b) k=a%b; //如果a大于b那么k等于 a余b;
else k=b%a; //否则 k等于b余a ;
“余”就是前一个数被后一个数整除后剩下的数。

1.不对吧?

2.
main()
{
int x=1,y=3; /*设整型变量x,y,其中x=1,y=3*/
printf("%d,",x++);
/*输出x++的结果,x++表示x参与运算后自加1,这时x的值为2*/
{ int x=0;x+=y*2;
/*令x=0,运算x+y*2,并将结果赋予x中,这时x的值为6*/
printf("%d,%d, ",x,y); /*输出x和y的值,分别为6和3*/
}
printf("%d,%d\n",x,y);
/*最后输出x和y的值之后换行。因为此处的x和y值没有被{}里的语句影响而改变,仍然是2和3*/
}

3.
main()
{
int i; /*设整型变量i*/
int a[3][3]={1,2,3,4,5,6,7,8,9}; /*设整型二维数组a[3][3]*/
for(i=0;i<3;i++)
/*循环,当i=0时开始,当i<3时执行i的值自加1,否则跳出循环*/
printf("%d ",a[2-i][i]); /*输出a[2-i][i]的结果*/
}

第一题,不知道你写的是什么。太乱了!
第二题,x++先输出x的值再x+1,所以先输出1,而现在的x的值为2;
{}里面的x=0,x+=y*2等价于x=x+y*2,x=0,y=3,所以x=6,输出6和3;
最后x=2,y=3,输出2,3
第三题,a[3