一下C++程序哪里出错了?怎么改?

[复制链接]
查看11 | 回复3 | 2011-5-11 18:22:51 | 显示全部楼层 |阅读模式
#include
#define N 4
double str[N][N];
double s1;
double s2;
double s3;
void input()
{
extern double str[N][N];
int i,j;
cout>str[j];
}
void count()
{
extern double s1=0;
extern double s2=1;
extern double s3;
extern double str[N][N];
int i,j,k,l;
for(i=0;i<N;i++)
s1+=str;
for(i=0;j<N;j++)
s2*=str[j][3-j];
s3=str[0][0];
for(k=0;k<N;k++)
for(l=0;l<N;l++)
{
if(s3<str[k][l])
         s3=str[k][l];
}
cout<<"主对角线之和为:"<<s1<<endl;
cout<<"辅对角线之积为:"<<s2<<endl;
cout<<"最大的元素为:"<<s3<<endl;
}
void main()
{
input();
count();
}

回复

使用道具 举报

千问 | 2011-5-11 18:22:51 | 显示全部楼层
for(i=0;j<N;j++)
s2*=str[j][3-j];//这个for循环出错,把 i=0 改成 j=0.
回复

使用道具 举报

千问 | 2011-5-11 18:22:51 | 显示全部楼层
我刚调试了一下, 你的程序没有错呀你是不是把你的程序保存成了.c,应该是.cpp还有,用#include “iostream”using namspace std;试试希望能帮到你
回复

使用道具 举报

千问 | 2011-5-11 18:22:51 | 显示全部楼层
#include不要加 .h前面加一个 using namespace std;还有extern double s1=0;extern double s2=1; 声明的时候不要赋值, 把=0和=1去掉; OK 。
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行