c语言写输入正整数n,然后再输入n个整数,求n个整数中的最大值并输出
时间: 2024-10-19 19:14:13 浏览: 15
在C语言中,你可以使用`scanf`函数获取用户的输入,然后通过循环遍历输入的整数,同时记录当前找到的最大值。以下是简单的代码示例:
```c
#include <stdio.h>
int main() {
int n, num, max_num = 0; // 初始化最大值为0
printf("请输入一个正整数n: ");
scanf("%d", &n); // 输入n
if (n <= 0) { // 验证输入是否为正整数
printf("输入错误! 正整数必需大于0.\n");
return 1;
}
printf("请输入%d个整数:\n", n);
for (int i = 1; i <= n; i++) { // 循环读入n个整数
scanf("%d", &num);
if (num > max_num) { // 如果当前数值大于已知的最大值
max_num = num; // 更新最大值
}
}
printf("这%d个整数中的最大值是: %d\n", n, max_num); // 输出结果
return 0;
}
```
在这个程序中,我们首先读取一个整数`n`,然后验证它是否为正整数。接着,使用for循环读入`n`个整数,并在每次迭代中更新最大值。最后,我们输出最大值。
相关问题
c语言中输入一个正整数n和n个整数,求最大最小数
在C语言中,你可以通过循环遍历用户输入的一组整数来找出其中的最大值和最小值。这里是一个简单的示例代码片段:
```c
#include <stdio.h> // 引入输入输出头文件
int main() {
int n;
printf("请输入一个正整数n:"); // 请求用户输入n
scanf("%d", &n); // 读取用户的输入
if (n <= 0) { // 检查输入是否为正整数
printf("错误:n必须是正整数。\n");
return 1;
}
int numbers[n]; // 创建一个大小为n的数组来存储整数
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个整数:", i + 1);
scanf("%d", &numbers[i]); // 依次读取每个数字并保存到数组中
}
int min = numbers[0], max = numbers[0]; // 初始设置最大值和最小值等于第一个元素
for (int i = 1; i < n; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
if (numbers[i] > max) {
max = numbers[i];
}
}
printf("给定n个整数中的最大值是:%d\n", max);
printf("给定n个整数中的最小值是:%d\n", min);
return 0;
}
```
这个程序首先获取用户输入的整数n,然后创建一个足够大的数组来存储n个整数。接着,它遍历数组,每次比较当前元素和已知的最大值和最小值,更新这两个变量。最后,它会打印出找到的最大值和最小值。
c语言输入一个整数n和n个整数,输出这n个整数的最大值
在C语言中,你可以使用标准库函数`scanf`从用户那里读取整数,并通过循环结构找出最大的那个整数。这里是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int n, num;
// 输入整数n
printf("请输入一个整数n: ");
scanf("%d", &n);
// 初始化最大值为第一个输入的数
int max = num;
// 使用循环遍历接下来的n-1个整数
for (int i = 0; i < n - 1; i++) {
scanf("%d", &num);
// 如果当前数大于已知的最大值,则更新最大值
if (num > max) {
max = num;
}
}
// 输出最大值
printf("这%d个整数中的最大值是: %d\n", n, max);
return 0;
}
```
在这个程序中,我们假设用户会正确地提供一个正整数n。如果需要处理无效输入或边界情况,还需要添加一些错误检查。
阅读全文