C语言 必须用指针方法编程 输入一个一维实型数组,输出其中最大值、最小值和平均值。

作者&投稿:壬喻 (若有异议请与网页底部的电邮联系)
C语言编程 从键盘输入3个实型数数据float类型输出最小值~

float a,b,c,min;
printf("请输入三个数据:");
scanf("%f%f%f",&a,&b,&c);
min=a;
if(min>b)
min=b;
else if(min>c)
min=c;
else
min=min;
printf("最小的数为:%f
",min);

long int a[5]=0;
int i=0;
do{
while(i<3)
{
cout<<"enter new value";
cin>>a[i++];
if(a[--i]1000000)
cout<<"error!,reenter valid value:"<<endl;
else
{
a[4]=a[i]<a[4]?a[4]:a[i];
i++;
}
if(a[4]==0) /*此处之所以这样写,其实,如果全部输入的是0,那么a[4]肯定是0啦,不信,你去看看第2个循环*/
break;
cout<<"This time the max value of you enterd is:"<<a[4]<<endl;
}
while(3);

1 创建数组;

2 输入数组各个元素值;

3 遍历,求最大,最小,和平均值;

4 输出结果。

为提高效率,其中2,3两步可在同一个循环中完成。

代码如下:

int main()
{
    float a[10];
    int i;
    float *p, *pmax,*pmin, ave = 0;
    p = pmax= pmin = a;
    scanf("%f",p);
    for(i; i < 10; i++)
    {
        scanf("%f", ++p);
        if(*pmax < *p) pmax = p;
        if(*pmin>*p)pmin=p;
        ave+=*p;
    }
    ave/=10;
    printf("最大值=%f, 最小值=%f,平均值=%f
",*pmax,*pmin,ave);
}


/*给你改好了, 具体的都在代码里加了注释, 只要输入的时候每次输入一个数字就按下回车,当输入了10个数字后自然会显示出结果*/

#include <stdio.h>

main()
{float a[10],i,n=0,*pa=a,sum=0.0,max,min;
for(i=0;i<10;i++)
{
scanf("%f",pa);
//if((*pa)=='\n') break; /*这句话不用, 只要你每次输入一个数字按下回车,等输到10个时自然会停止*/
sum += *pa;
n++;
pa++;

} //这里不用加分号了
max=*pa;
min=*--pa;
pa=&a[0];
for(i=0;i<10;i++)
{if(max<*pa) max=*pa;
if(min>*pa) min=*pa;
pa++;} //这里不用加分号了

printf("n=%f\n",n);
printf("max=%f\n",max);
printf("min=%f\n",min);
printf("sum=%f\n",sum/n);
} //这个分号是中文模式的, 要改成英文模式的

你的数组不是字符型 ,所以不能用'\n'判断输入是否完成.


镇原县19733763685: C语言 必须用指针方法编程 输入一个一维实型数组,输出其中最大值、最小值和平均值. -
文适冻干: /*给你改好了, 具体的都在代码里加了注释, 只要输入的时候每次输入一个数字就按下回车,当输入了10个数字后自然会显示出结果*/#include <stdio.h> main() {float a[10],i,n=0,*pa=a,sum=0.0,max,min; for(i=0;i<10;i++) { scanf("%f",pa); //if((*...

镇原县19733763685: C语言编程:输入一整数,求各位数之和,积,用指针操作 -
文适冻干: #include "stdio.h" void main() { int m,a[10],x=0,i,*p,sum=0,count=1; printf("输入元素\n"); scanf("%d",&m); printf("倒序\n"); while(m) { a[x++]=m%10; m/=10; } p=a; for(i=0;i<x;i++) { sum+=*p; count*=*p; p++; } printf("和为:%d,积为:%d",sum,count); }

镇原县19733763685: c语言 用指针方法处理:输入一行字符,统计并输出其中大写字母、小写字母、空格、数字及其它字符的个数. -
文适冻干: #include<stdio.h> void main() { int a=0,b=0,c=0,d=0,e=0,i=0; char *p,s[20]; while((s[i]=getchar())!='\n')i++; p=s; while(*p!=10) { if(*p>='A'&&*p<='Z') a++; else if(*p>='a'&&*p<='z') b++; else if(*p==' ') c++; else if(*p>='0'&&*p<='9') d++; else e++; p++; } ...

镇原县19733763685: C语言编程,要用指针.输入十个数,将最小值与第一个互换,最大值与最后一个互换,输出十个数. -
文适冻干: 1234567891011121314151617181920212223242526 intnum[10] = { 2, 3, 4, 5, 6, 7, 8, 9, 0, 1 }; inttemp; int*begin = num; int*end = num + 9;for(int*pointer = begin; pointer <= end; pointer ++) { if(*pointer < *begin) { temp = *pointer; *pointer = *...

镇原县19733763685: 利用指针编写程序,实现从键盘输入一个字符串,将此字符串从m个字符开始的n个字符复制成另一个字符串 -
文适冻干: #include void fun(char *s1,int m,char *s2) { for(s1+=m;*s1;*s2++=*s1++); *s2='\0'; } void main() { char s1[100],s2[100]; int m; printf("输入字符串:"); gets(s1); printf("输入开始复制位置:"); scanf("%d",&m); fun(s1,m,s2); printf("复制的字符串:%s",s2); }

镇原县19733763685: C语言编程(要求用指针)
文适冻干: #include<stdio.h> #include<string.h> //提供一个思路,就是首位元素互相交换,直到2个指针相遇 //下面是函数 void reverseSTR(char *str) { char *strTemp=str; //先定义一个指针strTemp,指向原字符串,然后指到尾部 while(*strTemp!='\0') { ...

镇原县19733763685: C语言编程:用指针编程序实现,输入一个人民币小写金额值,转化为大写金额值输出. -
文适冻干: #include "stdafx.h"#include<stdio.h>#define NUM1 1 #define NUM2 2 #define NUM3 3 #define NUM4 4 #define NUM5 5 #define NUM6 6 #define NUM7 7 #define NUM8 8 #define NUM9 9 #define NUM 10 #define NUM10 11 #define NUM...

镇原县19733763685: 用C语言指针编写一程序 -
文适冻干: #include int main() { int *p,i; p=(int*)malloc(sizeof(int)*10); for(i=0;i

镇原县19733763685: C语言中,哪些情况必须用指针类型,哪些情况可以不用指针类型而是改为直接使用结构类型 -
文适冻干: 指针使用非常的灵活,当然适用的范围也非常的广,但是有时使用不当会造成内存的泄漏,而且指针还有指向指针的指针甚至3级或更多...

镇原县19733763685: c语言要求编一程序主函数输入周几,通过调用指针函数,在主函数中输出该周几的英文 -
文适冻干: //不好意思没看清你的要求,现在更正了#include <stdio.h>#include <string.h> char *printfDay(int index,char *eng) { strcpy(eng,""); char *week[] = {"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"}; ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网