#include<stdio.h>
int main()
{
int s[1000];
int i,n,max;
printf("请输入数组元素个数n:\n");
scanf("%d",&n);
printf("请输入%d个数:(空格隔开)\n",n);
for(i=0; i<n; i++)
{
scanf("%d",&s[i]);
}
max=s[0];
for(i=1; i<n; i++)
{
if(max<s[i]){max=s[i];}
}
printf("最大值为 %d \n",max);
return 0;
}
参考代码如下,有帮助的话采纳一下哦,有问题可以继续交流!
1.数据固定写死
#include <stdio.h>
int main() {
int s[10]; // 定义数组
// 初始化数组
for (int i = 0; i < 10; i++) {
s[i] = i;
}
// 定义变量 max 用于存储最大值
int max = s[0];
// 找出数组中的最大值
for (int i = 0; i < 10; i++) {
if (s[i] > max) {
max = s[i];
}
}
// 显示数组中的最大值
printf("The maximum value in the array is %d\n", max);
return 0;
}
至于max等于0,我刚开始写的就是s[0],后面因为他用VC++跑,编辑器没搞好的原因各种跑不通,我最后整个都按最简洁的改成最容易理解的,那我继续再改回来吧!
2.完善版本,手动输入数据个数n和数据
#include <stdio.h>
int main()
{
int n;
int arr[20] = {0};
int i, j;
int a = 0;
printf("请输入数组元素个数n:\n");
scanf("%d" , &n);
for (i = 0; i <n; i++)
{
printf("请输入第%d个数字的大小:\n", ++a);
scanf("%d",&arr[i] );
}
int max = arr[0];
for ( j = 0;j < n;j++)
{
if (max < arr[j])
{
max = arr[j];
}
}
printf("最大值max=%d\n", max);
return 0;
}
设最大值为数组第一个元素,从第二个元素开始遍历,有比max大的值,max就更新,这样就可以找出最大值了
有帮助请采纳哦
#include<stdio.h>
int main()
{
int t[255];
int n;
printf("输入n:");
scanf("%d",&n);
printf("输入%d个数:",n);
for(int i=0; i<n; i++)
scanf("%d",&t[i]);
int max=t[0];
int i;
for(i=1; i<n; i++)
if(max<t[i]) max=t[i];
printf("最大值 %d \n",max);
return 0;
}
代码实现和详细解释如下,望采纳
#include <stdio.h>
// 定义函数,用于求数组s中的最大元素
int get_max(int s[], int n) {
// 定义变量,用于记录当前遍历到的最大元素
int max = s[0];
// 遍历数组s,找出最大元素
for (int i = 1; i < n; i++) {
if (s[i] > max) {
max = s[i];
}
}
// 返回最大元素
return max;
}
int main() {
// 定义数组s
int s[] = {1, 2, 3, 4, 5};
// 调用函数,求出数组s中的最大元素
int max = get_max(s, 5);
// 输出结果
printf("数组s中的最大元素为:%d\n", max);
return 0;
}
在这段代码中,我们定义了一个函数,用于求数组s中的最大元素。该函数首先通过循环遍历数组s,找出最大元素,然后将该元素返回。在主函数中,我们调用上述函数,求出数组s中的最大元素,并输出该结果。
输入数组各个元素,然后从大到小排序,完成后,新数组第一个元素就是最大值了
题意:输入n和含有n个元素的数组s,输出s中的最大值。
思路:初始化maxn为-1,输入数组,只要数组中的元素比maxn大,maxn就更新为这个元素。
代码:
#include <iostream>
using namespace std;
int main(){
int n, s[105], maxn = -1;//定义n, s数组, 初始化用于记录最大值的maxn。
cin >> n;//输入n。
for (int i = 0; i < n; i++){//循环n次输入s数组中的n个元素。
cin >> s[i];//输入s[i]。
if (s[i] > maxn) maxn = s[i];//只要输入的元素比maxn大,maxn就更新为这个元素。
}
cout << maxn;//输出最大值。
return 0;
}
这个应该没问题,如果有帮助,望采纳。
如有帮助,望采纳
#include<stdio.h>
double fun(
int a[],
int n,
int *max,
int *min)
{int i,s;
*max=*min=s=a[0];
for(i=1;i<n;i++)
{if(a[i]>*max)*max=a[i];
if(a[i]<*min)*min=a[i];
s+=a[i]; }
return (float)s/n; }
int main()
{int n,max,min,i,a[100];
float av; scanf("%d",&n);
for(i=0;i<n-1;i++)
scanf("%d,",&a[i]);
scanf("%d",&a[i]);
av=fun(a,n,&max,&min);
printf("%d\n%d\n%f\n",max,min,av);
return 0;}