#include <stdio.h> #define n 3 int i, j, a[n][n]; int main() { int *p; void pf(); void array(int *p); void prf(); pf(); p = &a[0][0]; array(p); prf(); return 0; } void pf() { int i, j; printf("输入\n"); for (i = 0; i < n; ++i) { for (j = 0; j < n; j++) scanf("%d", &a[i][j]); } printf("a[][]:\n"); for (i = 0; i < n; ++i) { for (j = 0; j < n; j++) printf("%5d", a[i][j]); printf("\n"); } } void array(int *p) { int temp; for (i = 0; i < n; i++) for (j = 0; j < n; j++) { temp = *(p + 3 * i + j); *(p + 3 * i + j) = *(p + 3 * j + i); *(p + 3 * j + i) = temp; } } void prf() { printf("a[][]NOW\n"); for (i = 0; i < n; ++i) { for (j = 0; j < n; j++) printf("%5d", a[i]j); printf("\n"); } }
时间: 2023-12-10 11:06:23 浏览: 36
这段代码是一个简单的矩阵转置程序。它定义了一个3x3的整数矩阵`a`,并使用指针进行矩阵转置操作。下面是代码的解释:
1. 首先,在`main`函数中声明了一个指向整数类型的指针`p`,并调用了三个函数:`pf()`、`array()`和`prf()`,分别用于输入矩阵、进行矩阵转置和输出转置后的矩阵。
2. `pf()`函数用于输入矩阵元素。它使用两个嵌套的循环来遍历矩阵的每个元素,并通过`scanf`函数从用户输入中读取每个元素的值。
3. `array()`函数用于进行矩阵转置。它使用两个嵌套的循环遍历矩阵的每个元素,并通过指针操作交换行和列的值,实现转置操作。
4. `prf()`函数用于输出转置后的矩阵。它使用两个嵌套的循环遍历矩阵的每个元素,并使用`printf`函数将每个元素的值打印出来。
你可以通过在`main`函数中调用这些函数来运行程序,并查看转置前后的矩阵输出结果。
相关问题
求一批数中最大值和最小值的积 #include <stulib.h> #include <stdio.h> #define N 30
这是一个求一批数中最大值和最小值的积的代码模板,其中 #define N 30 定义了数组的长度为 30。下面是完整的代码:
```
#include <stdio.h>
#define N 30
int main() {
int a[N];
int n, i, max, min;
// 读入数据
printf("请输入数据个数:");
scanf("%d", &n);
printf("请输入 %d 个数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
// 求最大值和最小值
max = min = a;
for (i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];
}
if (a[i] < min) {
min = a[i];
}
}
// 输出结果
printf("最大值为 %d,最小值为 %d,它们的积为 %d\n", max, min, max * min);
return 0;
}
```
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdint.h> #define SHA1_BLOCK_SIZE 20 #define SHA1_DIGEST_SIZE 5
SHA-1是一种密码散列函数,用于产生消息的数字指纹。SHA-1算法的输出长度为160位,即20个字节。在C语言中,可以使用以下代码来实现SHA-1算法:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#define SHA1_BLOCK_SIZE 20
#define SHA1_DIGEST_SIZE 5
void sha1(const uint8_t *message, size_t message_len, uint8_t *digest) {
// TODO: 实现SHA-1算法
}
int main() {
uint8_t message[] = "hello world";
uint8_t digest[SHA1_DIGEST_SIZE];
sha1(message, strlen((char *)message), digest);
printf("SHA-1 digest: ");
for (int i = 0; i < SHA1_DIGEST_SIZE; i++) {
printf("%02x", digest[i]);
}
printf("\n");
return 0;
}
```
相关推荐
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/x-gzip](https://img-home.csdnimg.cn/images/20210720083646.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)