C++一道错误程序

[复制链接]
查看11 | 回复4 | 2011-6-4 14:54:56 | 显示全部楼层 |阅读模式
#include
int input(int a[][4],int size);
void main()
{
        int sum1=0,sum2=0;
        int a[4][4];
        while(input(a,4);)
        {
                cout>a[j];
                        if(!cin)
                        {
                                cin.clear();
                                return 1;
                        }
                }
        }
        return 0;
}
运行时陷入死循环。。。

回复

使用道具 举报

千问 | 2011-6-4 14:54:56 | 显示全部楼层
#includeint input(int a[][4],int size);void main(){int sum1=0,sum2=0;int a[4][4];while(input(a,4))
//多了一个分号{cout<<"错误!请重新输入!"<<endl;//input(a,4);
这句多余,要删除}for(int i=0;i<4;i++)sum1+=a;cout<<"主对角线之和:"<<sum1<<endl;for(int i=0;i<4;i++...
回复

使用道具 举报

千问 | 2011-6-4 14:54:56 | 显示全部楼层
一: while(input(a,4);){cout<<"错误!请重新输入!"<<endl;input(a,4);}上面这个函数有点冗余,改成:while(input(a,4);){cout<<"错误!请重新输入!"<<endl;}二: if(!cin){...
回复

使用道具 举报

千问 | 2011-6-4 14:54:56 | 显示全部楼层
你的while语句有错误,改成while(input(a,4))就可以了,运行结果没有问题。...
回复

使用道具 举报

千问 | 2011-6-4 14:54:56 | 显示全部楼层
第二个函数的第四行for(int=1;i<size;i++)size的值???改成4试试!我这没平台,没法测试!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行