标题:求救:关于数组作为参数在函数间传递的问题
只看楼主
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
结帖率:100%
 问题点数:0 回复次数:2 
求救:关于数组作为参数在函数间传递的问题
这个是字符之间比大小,将输入的20个字符存到letters数组中,并把这个数组传递给一个比较大小的函数比较,具体代码:
#include<iostream.h>

void compared(char);  //比较大小的函数,声明

void main()
{
    char letters[20];   //数组声明
    cout<<"输入20个字符:"<<endl;
    for(int i = 0;i<20;i++)   //输入字符
        cin>>letters[i];
    compared(letters[]);   //进行比较
}

void compared(char a[])
{
    int maxIndex,minIndex;
    maxIndex = minIndex = 0;
    for(int j = 0;j<=19;j++)
    {
        if(a[j]>=a[maxIndex])
            maxIndex = j;
        if(a[j]<a[minIndex])
            minIndex = j;
    }
    cout<<"最大字符为:"<<a[maxIndex]<<endl
        <<"最小字符为:"<<a[minIndex]<<endl;
}

编译以后出现这个错误:
Compiling...
字符比大小.cpp
E:\工作空间\字符比大小\字符比大小.cpp(11) : error C2059: syntax error : ']'
执行 cl.exe 时出错.

字符比大小.exe - 1 error(s), 0 warning(s)
我这书上关于这部分写的不是很全,大家帮帮忙~谢谢啦
搜索更多相关主题的帖子: 参数 void letters int char 
2008-02-10 19:45
shining100
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-17
得分:0 
//多下去看下书,语法要学好才行,正确的将数组用作函数参数的声明和定义见我修改的程序
#include<iostream.h>

void compared(char a[],int size);  //定义数组做为参数,另一参数为数组的大小

void main()
{
    char letters[5];
    cout<<"输入5个字符:"<<endl;
    for(int i = 0;i<5;i++)
        cin>>letters[i];
    compared(letters,5);   //直接将变量名写入函数中,不要写[]
}

void compared(char a[],int size)
{
    int maxIndex,minIndex;
    maxIndex = minIndex = 0;
    for(int j = 0;j<size;j++)
    {
        if(a[j]>=a[maxIndex])
            maxIndex = j;
        if(a[j]<a[minIndex])
            minIndex = j;
    }
    cout<<"最大字符为:"<<a[maxIndex]<<endl
        <<"最小字符为:"<<a[minIndex]<<endl;
}
2008-02-10 23:10
小鸟向前飞
Rank: 1
等 级:新手上路
帖 子:72
专家分:0
注 册:2007-10-25
得分:0 
谢谢楼上指教~

未知是最大的诱惑.
2008-02-11 18:56



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




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

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