c语言存入1,2,3,4,5,6,7,8,9逆序输出·
时间: 2023-10-28 12:07:21 浏览: 121
可以使用数组或链表来存储1,2,3,4,5,6,7,8,9这些数字,然后进行逆序输出。下面给出两种方法:
方法一(使用数组):
1. 定义一个长度为9的数组a;
2. 依次输入1,2,3,4,5,6,7,8,9,并存储到数组a中;
3. 从数组a的最后一个元素开始,依次输出每个元素。
代码如下:
```
#include <stdio.h>
int main() {
int a[9];
int i;
printf("请输入1-9这9个数字:\n");
for (i = 0; i < 9; i++) {
scanf("%d", &a[i]);
}
printf("逆序输出:\n");
for (i = 8; i >= 0; i--) {
printf("%d ", a[i]);
}
return 0;
}
```
方法二(使用链表):
1. 定义一个链表节点结构体node,包含一个整型变量id和一个指向下一个节点的指针next;2. 定义一个头节点head,并将其指向NULL;
3. 依次输入1,2,3,4,5,6,7,8,9,并将每个数字存储到一个新的节点中,将新节点插入到链表的头部;
4. 遍历链表,依次输出每个节点的id。
代码如下:
```
#include <stdio.h>
#include <stdlib.h>
struct node {
int id;
struct node *next;
};
int main() {
struct node *head = NULL;
struct node *s;
int i;
printf("请输入1-9这9个数字:\n");
for (i = 1; i <= 9; i++) {
s = (struct node *)malloc(sizeof(struct node));
s->id = i;
s->next = head;
head = s;
}
printf("逆序输出:\n");
s = head;
while (s != NULL) {
printf("%d ", s->id);
s = s->next;
}
return 0;
}
```
阅读全文