当前位置:首页 » 编程语言 » 输入nn1的最大值c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

输入nn1的最大值c语言

发布时间: 2022-06-13 19:28:20

c语言,求n个数得的最大值,最小值,平均值,用函数,不要用数组

#include"stdio.h"

structnumber
{
floatvalue;//值
structnumber*next;//指向后继
};

structnumber*head=NULL;//头指针
structnumber*p1;//活动指针
structnumber*p2;//尾指针

floatmax,min,sum,count;//最大值、最小值、和、数量

//输入数值
voidinput()
{
for(;;)
{
//申请内存空间并赋值
p1=(structnumber*)malloc(sizeof(structnumber));
scanf("%f",&p1->value);
p1->next=NULL;

//判断是否等于-1
if(p1->value==-1)
{
free(p1);
return;
}

//判断头指针是否为空
if(head==NULL)
head=p1;
else
p2->next=p1;
p2=p1;
}
}

//求最大值、最小值、和、数量
voidmaxMin()
{
//初始化三个值
p1=head;
max=min=p1->value;
sum=count=0;

while(p1!=NULL)
{
//找最大值
if(p1->value>max)
max=p1->value;

//找最小值
if(p1->value<min)
min=p1->value;

sum+=p1->value;//求和
count++;//数量
p1=p1->next;
}
}

//输出所有值
voidprint()
{
p1=head;
while(p1!=NULL)
{
printf("%g",p1->value);
p1=p1->next;
}
printf(" ");
}

intmain()
{
printf("请连续输入n个整数,输入-1结束 ");
input();
printf("************** ");
maxMin();
printf("最大值=%g ",max);
printf("最小值=%g ",min);
printf("平均值=%g ",sum/count);
}

Ⅱ c语言:输入N个数,然后将最大数输出

#define N 100 //N是你要定义的个数
main()
{
int i,a[N],max;
for(i=0;i<N;i++)
{
printf("第%d个:",i+1);
scanf("%d",&a[i]);
}
max=a[0];
for(i=1;i<N;i++)
{
if(max>a[i]) max=a[i];
}
printf("最大值为%d",max);
}

Ⅲ ,输入n个数,求其中的最大值, C语言循环结构

利用C语言在一批数中找最大数的一般方法如下:

(1)将数据存入一个一维数组中,例如存入a数组中。

(2)在数组中找最大值(假设用变量max存放最大值)。首先将a[0]视为最大数,即首先使max=a[0]。将除a[0]之外的其他所有元素(用a[i]表示)逐个与max比较,若a[i]>max,则a[i]为目前的最大数,使max=a[i]。在所有元素比较完之后,max即为最大数。

(3)输出最大数(max的值)。

这个问题涉及C语言for循环嵌套和一维数组内容,以6个数为例,具体程序如下:

#include<stdio.h>

int main(void)

{

int a[6],i,max;

for(i=0;i<6;i++) //将6个数输入a数组

scanf("%d",&a[i]);

max=a[0]; //首先将a[0]视为最大数,将a[0]存入max

for(i=1;i<6;i++) //将其余5个数与max比较,大者存入max

if(a[i]>max) max=a[i];

printf("max=%d ",max); //输出最大值

return 0;

}

程序运行结果:

10 2 14 6 5 11

max=14

(3)输入nn1的最大值c语言扩展阅读:

一维数组是最简单的数组,其逻辑结构是线性表。要使用一维数组,需经过定义、初始化和应用等过程。

数组声明:

(1)在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。

(2)数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。

利用new运算符为数组元素分配内存空间的方式称为动态分配方式。

举例:

int[]x; //声明名称为x的int型数组

x=new int[10]; //x数组中包含有10个元素,并为这10个元素分配内存空间

在声明数组时,也可以将两个语句合并成一行,格式如下:

数据类型[]数组名= new 数据类型[个数];

利用这种格式在声明数组的同时,也分配一块内存供数组使用。如上面的例子可以写成:

int[]x = new int [10];

等号左边的int[]x相当于定义了一个特殊的变量x,x的数据类型是一个对int型数组对象的引用,x就是一个数组的引用变量,其引用的数组元素个数不定。

等号右边的new int[10]就是在堆内存中创建一个具有10个int型变量的数组对象。int[]x = new int [10];就是将右边的数组对象赋值给左边的数组引用变量。

Ⅳ c语言如何写一个自定义函数,随意输入n个数,求出这n个数中的最大值

// 这里为了方便就表示num是正整数
void test(){
int num;
int max=0;
while(1){
scanf("%d",&num);
if(num <= 0)break;

if(max < num){
max = num;
}
}
printf("max=%d\n",max);
}

Ⅳ C语言编程:输入n个整数,求其中最大值和最小值,并输出他们俩对应的序号,不用数组。 这个怎么写呀

#include<stdio.h>
#include<math.h>
intmain()
{intn,i,x,max,min,i1=0,i2=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{scanf("%d",&x);
if(i==0)max=min=x;
elseif(x>max){max=x;i1=i;}
elseif(x<min){min=x;i2=i;}
}
printf("最大的数是第%d个,是%d 最小的数是第%d个,是%d ",i1+1,max,i2+1,min);
}

Ⅵ 跪求c语言编程:输入N个数,求最大值!

求最大值:
#include<stdio.h>
void main()
{
int n,max,min,a,i;
printf("请输入N的值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("请输入一个数:");
scanf("%d",&a);
if(i==1)
{
max=min=a;
}
if(i!=1&&max<a)
max=a;
if(i!=1&&min>a)
min=a;
}
printf("这%d个数中最大值是",n,max);
}

求阶乘:
#include "stdio.h"
void main()
{
int fun(int x);
float jc(int x);
int n,i;
float k;
printf("type in the n!\n");
scanf("%d",&n);
i=fun (n);
k=jc (n);
printf("%d! is %10.0f\nthere are %d zero!\n",n,k,i);
}

int fun(int x)
{
int i=0;
while(x!=0)
{
x=x/5;
i+=x;
}
return (i);
}

float jc(int x)
{
float i;
if (x==0||x==1)
i=1;
else
i=jc(x-1)*x;
return (i);
}

Ⅶ 求一个C语言编程 输入N个数 求最大值 最小值 平均数

定义一个数组,用冒泡法来找出最大、最小值,平均值比较好求吧