haiouda 发表于 2015-3-4 23:18:30

关于定义函数的问题?

/*****************************
在10个数中找出最大值和最小值

*********************************

#include <stdio.h>   //用数组下标做函数参数

int max,min;

void main()
{
        void bjsz(int b[]);
        int a,i;
        printf("请输入整数:");
       
        for (i=0;i<10;i++)
        {
                scanf("%d",&a);
        }
        bjsz(a);
       
        printf("最大的数是%d\n",max);
        printf("最小的数是%d\n",min);
}


void bjsz(int b[])
{
        int i;
        max=min=b;
        for (i=0;i<10;i++)
        {
                if(b > max )
                {
                        max=b;
                }
                else if (b < min )
                {
                        min=b;
                }
        }
       
}

*******************************************************************/


#include <stdio.h>   //用指针做函数参数

double max,min;

void main()
{
        double bjsz(double *p);
        double a;
        int i;
        printf("请输入一个数:");
       
        for (i=0;i<10;i++)
        {
                scanf("%lf",&a);
        }
        bjsz(a);
       
        printf("最大的数是%3.2lf\n",max);
        printf("最小的数是%3.2lf\n",min);
}


double bjsz(double *p)
{
        int i ;

        max=min=*p;
        for (i=0;i<10;i++,p++)
        {
                if(*p > max )
                {
                        max=*p;
                }
                else if (*p < min )
                {
                        min=*p;
                }

        }
        return 0;
}

牡丹花下死做鬼 发表于 2015-3-4 23:18:31

haiouda 发表于 2015-3-5 08:45
对呀,把 void double…… 或者void int…… 一起用,为可不让用呀?

error C2120: 'void' illegal with all types

haiouda 发表于 2015-3-4 23:22:49

这是C视频,指针第三节的课后题;
我的问题是:        void double bjsz(double *p);这样子为什么不可以呀?害得我最后还得加上 return 0;

类似的void intbjsz(int *p) ;int voidbjsz(int *p) ; 也不可以?

想要为函数加上类型,为什么就不能同时设为无返回值?

牡丹花下死做鬼 发表于 2015-3-4 23:53:40

void double??

haiouda 发表于 2015-3-5 08:45:08

牡丹花下死做鬼 发表于 2015-3-4 23:53
void double??

对呀,把 void double…… 或者void int…… 一起用,为可不让用呀?

liyf 发表于 2015-3-5 08:54:15

你太牛了,这个都可以整
void是虚拟的,没有返回值,int,double 等必须返回值的,怎么能用在一起呢,你说
你能用一个

haiouda 发表于 2015-3-5 08:54:28

牡丹花下死做鬼 发表于 2015-3-5 08:49
error C2120: 'void' illegal with all types

谢谢

haiouda 发表于 2015-3-5 08:57:05

牡丹花下死做鬼 发表于 2015-3-4 23:53
void double??

追问一下,long long int a;
这样子为什么我的VC6.0,也不让呀?

牡丹花下死做鬼 发表于 2015-3-5 09:15:05

haiouda 发表于 2015-3-5 08:57
追问一下,long long int a;
这样子为什么我的VC6.0,也不让呀?

VC6.0是98年出的 Long long int都是C99标准的 VC6.0肯定不支持
PS:目前最新C11标准 且C99之后就是C11

haiouda 发表于 2015-3-5 09:43:28

牡丹花下死做鬼 发表于 2015-3-5 09:15
VC6.0是98年出的 Long long int都是C99标准的 VC6.0肯定不支持
PS:目前最新C11标准 且C99之后就是C11

非常感谢 {:5_110:}

wxy245791 发表于 2015-3-12 15:48:28





来了

wxy245791 发表于 2015-3-12 15:48:59

推荐chrome浏览器.~

wxy245791 发表于 2015-3-12 15:51:36


好久没碰了,说错了还希望有大神指正
页: [1]
查看完整版本: 关于定义函数的问题?