96 date:2021.2.18
要点: 行列的具体环境下的变化
详细代码如下:
#include <stdio.h>
#define N 4
void fun(int (*t)[N])
{
int j ,r[N];
for(j=0; j<N; j++) r[j]=t[0][j];
for(j=0; j<N; j++)
/**********found**********/
t[0][N-j-1]=t[j][0]; //第一列元素表示为t[0][N-j-1],第一行元素表示为t[j][0],将第一列赋值给第一行
for(j=0; j<N; j++)
t[j][0]=t[N-1][j];
/**********found**********/
for(j=N-1; j>=0; j--)
t[N-1][N-1-j]=t[j][N-1];
for(j=N-1; j>=0; j--)
/**********found**********/
t[j][N-1]=r[j]; //最后将临时数组r中的元素赋值给矩阵最后一列
}
void main()
{
int t[][N]={
21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;
printf("\nThe original array:\n");
for(i=0; i<N; i++)
{
for(j=0; j<N; j++) printf("%2d ",t[i][j]);
printf("\n");
}
fun(t);
printf("\nThe result is:\n");
for(i=0; i<N; i++)
{
for(j=0; j<N; j++) printf("%2d ",t[i][j]);
printf("\n");
}
}
要点: include<math.h>函数库里的函数
double log(double x) log(n)函数求ln(n)
求平方根:double sqrt(double x)
详细代码如下:
#include <math.h>
#include <stdio.h>
double fun( int m )
{
/*
analyse:
遍历,累加开根号
*/
double i,s;
double sum = 0.0;
for(i = 1.0; i <= m; i++)
{
sum += log(i);
}
s =sqrt(sum);
return s;
}
void main()
{
void NONO ( );
printf("%f\n", fun(20));
NONO();
}