用C语言编写程序,输入n个整数链式存放并输出最大值。
时间: 2023-06-24 15:04:10 浏览: 215
以下是用C语言编写程序,输入n个整数链式存放并输出最大值的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构体
typedef struct node {
int data;
struct node *next;
} Node;
int main() {
int n, i, max;
Node *head, *p, *q;
// 输入链表长度n
printf("请输入链表长度n:");
scanf("%d", &n);
// 初始化链表头节点
head = (Node *)malloc(sizeof(Node));
head->next = NULL;
p = head;
// 输入n个整数并添加到链表中
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
q = (Node *)malloc(sizeof(Node));
scanf("%d", &q->data);
q->next = NULL;
p->next = q;
p = q;
}
// 遍历链表查找最大值
p = head->next;
max = p->data;
while (p != NULL) {
if (p->data > max) {
max = p->data;
}
p = p->next;
}
// 输出最大值
printf("最大值为:%d\n", max);
// 释放链表节点内存
p = head;
while (p != NULL) {
q = p->next;
free(p);
p = q;
}
return 0;
}
```
在上述代码中,首先定义了链表节点结构体 `Node`,包含整数数据 `data` 和指向下一个节点的指针 `next`。然后在 `main` 函数中,输入链表长度n,并初始化链表头节点 `head`。接着输入n个整数,并依次添加到链表中。然后遍历链表查找最大值,最后输出最大值并释放链表节点内存。
阅读全文