
#include<iostream>
usingnamespacestd;
void zhuang zhi(int a[3][3])
{int m,n,i;
for(m=0;m<2;m++)
for(i=0;i<3;i++)
{if(m!=1||i!=0)
{n=a[i][m];
a[i][m]=a[m][i];
a[m][i]=n;
}
}
}
int main()
{
inta[3][3];
inti,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
cin>>a[i][j];
zhuang zhi(a);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
cout<<a[i][j]<<"";
cout<<endl;
}
return0;
}
运行效果:
扩展资料:
return语句有以下形式:
return;//不带返回值的return语句
return 0;//带返回值的return语句,或者返回一个变量或一个函数。
return 1//表示函数异常结束
不带返回值的return语句用于,中断返回值为void类型的函数的执行,而带返回值的return则不行。
#include<iostream>
using namespace std;
void f(){
cout<<"begin"<<endl;
return 0;此处有问题,此时return;的作用相当于break;用于中断循环的作用。所以不该返回某个具体的值。
cout<<"end"<<endl;
}
int main(){
f();
return 0;
}
将return 0;换为return;后,运行成功:
总结:
return;的作用相当于break;用于中断循环的作用;return 0;则是return的另一种用法,专用于返回值非void的函数返回其值。
#include<stdioh>
int main()
{
int a[3][3],sum=0;
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j||(i+j==2))
sum=sum+a[i][j];
printf("sum=%d\n",sum);
return 0;
}
扩展资料
fun()只是一个函数名称,括号内的函数体的功能取决于填写的内容。比如:
void fun()
{
printf("这个fun()函数的功能就是输出文字\n")
}
void fun()
{
int a,b,c;
a=7;
b=8;
c=a+b;
printf("这个fun()函数的功能就是计算a+b的值。c=%d\n",c);
}
参考资料:
C语言数组定义,中括号中必须是一个常量,而不能是一个变量;
数组不能重名的;
转置函数参数列表中没有要转置的数组,就相当于没有 *** 作对象, *** 作对象是不会有反应的,在里面使用要转置的数组也是行不通的;
核心语句也错了:
应该是:
for(i=0;i<3;i++)
for(j=0;j<i;j++) //这里控制条件是j<i;而不应该是j<3;
//否则调换之后再调换相当于没有调换。
// 就是下三角与上三角交换,当然,对角线不用参与;
{
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
#include<stdioh>
void fun(int a[3][3])
{
int x,y,m,n,b[3][3];
for( x=0;x<3;x++)
{
for( y=0;y<3;y++)
{
b[y][3-x-1]=a[x][y];
}
}
printf("打印置换后的二维数组\n");
for( m=0;m<3;m++)
{
for( n=0;n<3;n++)
{
printf("%d ",b[m][n]);
}
printf("\n");
}
}
void main()
{
int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j;
printf("打印置换前的二维数组\n");
for( i=0;i<3;i++)
{
for( j=0;j<3;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
fun(a);
}
打印置换前的二维数组
1 2 3
4 5 6
7 8 9
打印置换后的二维数组
7 4 1
8 5 2
9 6 3
Press any key to continue
#include <stdioh>
int main()
{
int a[3][3], b, c, d;
for (b = 0; b<3; b++)
for (c = 0; c<3; c++)
scanf("%d",&a[b][c]);
printf("\n");
for (b = 0; b<3; b++)
for (c = b+1; c<3; c++)
{
d = a[b][c];
a[b][c] = a[c][b];
a[c][b] = d;
}
for (b = 0; b<3; b++)
{for (c = 0; c<3; c++)
printf("%d ",a[b][c]);
printf("\n");
}
return 0;
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)