C语言程序【例6-12】先输入正整数n,再输入任意n个整数存入数组中,计算并输出这n个元素的和。要求使用动态内存分配方法来为这个一维数组分配空间。 【输入输出样例1】
时间: 2024-10-28 08:11:48 浏览: 39
C语言程序【例6-12】首先会提示用户输入一个正整数n,代表需要存储的整数个数。然后,它会动态地分配一个大小为n的整型数组,通过`malloc()`函数来获取所需的内存。接下来,用户会被要求依次输入这n个整数,它们会被逐一存入该数组。最后,程序会计算数组中所有元素的总和,并将结果输出到屏幕上。
例如,如果用户输入n=5,接着分别输入数字10、20、30、40、50,程序将会打印出这5个数的和150。
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int n;
printf("请输入正整数n: ");
scanf("%d", &n);
// 动态分配内存
int* arr = (int*) malloc(n * sizeof(int));
if (arr == NULL) { // 检查内存分配是否成功
printf("内存分配失败!\n");
return 1;
}
int sum = 0;
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个整数: ", i + 1);
scanf("%d", &arr[i]);
sum += arr[i];
}
printf("这%d个数的和是: %d\n", n, sum);
free(arr); // 释放动态内存
return 0;
}
```
阅读全文