编程输入至少一个整数,且不输入整数的个数,求这些整数的和,C语言
时间: 2024-12-17 08:49:12 浏览: 13
在C语言中,你可以通过动态内存分配和循环结构来实现这个功能,让用户不断输入整数直到他们选择停止。这里有一个简单的示例程序:
```c
#include <stdio.h>
#include <stdlib.h> // 需要用到malloc函数
int main() {
int *numbers = NULL; // 存放输入整数的指针
int current_number = 0, sum = 0;
char input;
// 动态分配内存
numbers = (int*) malloc(sizeof(int)); // 初始分配一个存储空间
do {
printf("请输入一个整数(输入非数字字符结束):");
scanf("%d", ¤t_number);
sum += current_number; // 累加当前输入的整数
// 扩展内存空间以存储更多整数
numbers = (int*) realloc(numbers, sizeof(int) * (sizeof(int) + 1));
numbers[sizeof(int) - 1] = current_number; // 更新最后一个元素
} while (scanf("%*[^\n]", &input) == 1); // 循环直到遇到非数字字符
// 输出总和并释放内存
printf("所有输入整数的和是:%d\n", sum);
free(numbers); // 释放之前动态分配的空间
return 0;
}
阅读全文