标题:实参是数组为什么不能输入
只看楼主
jokerbat
Rank: 2
等 级:论坛游民
帖 子:77
专家分:91
注 册:2012-2-1
结帖率:50%
已结贴  问题点数:20 回复次数:10 
实参是数组为什么不能输入
编译没错误,不能正常输入5个数;
#include<stdio.h>
void f(int);
void f(int c)
{
     printf("%d",c);
}
int main(void)
{
    int a[5],b;
    for(b=0;b<5;b++)
    {
        scanf("%d",&a[b]);
        f(a[b]);
    }
    return 0;
}
下面的代码就可以输入5个数为什么?
#include<stdio.h>
void nzp(int v)
{
    if(v>0)
      printf("%d ",v);
    else
      printf("%d ",0);
}
int main(void)
{
    int a[5],i;
    printf("input 5 numbers\n");
    for(i=0;i<5;i++)
    {
        scanf("%d",&a[i]);
        nzp(a[i]);
    }
    return 0;
}
搜索更多相关主题的帖子: void include numbers return 
2013-02-14 13:41
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
得分:0 
可以啊

仰望星空...........不忘初心!
2013-02-14 13:46
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
得分:0 
只是你要注意一下输入的方式,先按一个数字,再回车2次,在输入数字.....

仰望星空...........不忘初心!
2013-02-14 13:47
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
得分:0 
第一个我用lcc-win32编译一个名为1.c的原文件正常生成一个1.obj的目标文件在用链接程序链接后生成一个名为1.exe的程序问件,可是在dos环境下输入1.exe时什么也没有
2013-02-14 13:58
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
得分:0 
。。。。。

仰望星空...........不忘初心!
2013-02-14 14:00
tompobing
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:260
专家分:809
注 册:2012-12-9
得分:10 
#include <stdio.h>

void f(int c)
{
    printf("%d ",c);
}
int main()
{
    int a[5],b;
    for(b=0;b<5;b++)
    {
        scanf("%d",&a[b]);
        f(a[b]);
    }
    return 0;
}


这个没问题啊,跟下面的程序基本一样,就是下面的程序多了一个判定输入的数是大于0还是小于0,然后根据判定条件输出,别的没什么啊
2013-02-14 14:02
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
得分:10 
所喜所喜

仰望星空...........不忘初心!
2013-02-14 14:05
jokerbat
Rank: 2
等 级:论坛游民
帖 子:77
专家分:91
注 册:2012-2-1
得分:0 
第一个我用lcc-win32编译一个名为1.c的原文件正常生成一个1.obj的目标文件在用链接程序链接后生成一个名为1.exe的程序问件,可是在dos环境下输入1.exe时什么也没有
#include<stdio.h>
void f(int);
void f(int c)
{
     printf("%d",c);
}
int main(void)
{
    int a[5],b;
    printf("input 5 number\n");
    for(b=0;b<5;b++)
    {
        scanf("%d",&a[b]);
        f(a[b]);
    }
    return 0;
}
如果是上面的代码就只能输出input 5 number而不可以输入5个数,求解决啊
2013-02-14 14:10
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
得分:0 
确定你的路径是否正确

仰望星空...........不忘初心!
2013-02-14 14:13
jokerbat
Rank: 2
等 级:论坛游民
帖 子:77
专家分:91
注 册:2012-2-1
得分:0 
编译,连接,生成的可执行文件都是在同一路径下完成的,难到是编译器的问题
2013-02-14 14:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-398589-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.047434 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved