如何使用C语言从键盘输入连续的整数,直到用户输入0为止,并将这些非零整数存储到顺序表中?
时间: 2024-11-06 07:16:00 浏览: 23
在C语言中,你可以使用循环和数组结构来实现这个功能。首先,你需要定义一个顺序表(这里我们可以简单地理解为一维数组),然后通过`scanf`函数从键盘获取用户输入,判断是否为0,如果不是就将其存入数组。当用户输入0时,停止循环。
以下是大致的代码实现示例:
```c
#include <stdio.h>
#define MAX_NUMS 10 // 定义最大能存储的整数个数
// 假设我们的顺序表是一个整型数组
int sequence[MAX_NUMS];
// 主函数
int main() {
int num;
// 循环等待用户输入
while (1) {
printf("请输入一个整数(输入0结束):");
scanf("%d", &num);
if (num == 0) { // 如果用户输入0,跳出循环
break;
}
// 将非零整数存储到数组
if (sizeof(sequence) - 1 > 0) { // 防止数组溢出
sequence[sequence_size] = num; // 增加序列大小(假设size为实际元素个数)
sequence_size++; // 更新元素计数
} else {
printf("数组已满,无法继续添加。\n"); // 提醒用户数组已满
}
}
// 打印输入的所有非零整数
for (int i = 0; i < sequence_size; i++) {
printf("第 %d 个数字是:%d\n", i+1, sequence[i]);
}
return 0;
}
```
阅读全文