首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

自己编的程序出现的小疑点

2012-09-18 
自己编的程序出现的小问题自学C++不久,编了个程序6000多行,处理数据的程序,VS2010编译,已经按自己的想法完

自己编的程序出现的小问题
自学C++不久,编了个程序6000多行,处理数据的程序,VS2010编译,已经按自己的想法完成,但还想做个循环时出了问题,不知道原因,请高手赐教。
基本结构
#include<math.h>
#include<iostream>
#include <iomanip>
#include<vector>
#include <fstream>
#include <windows.h>
using namespace std;

int q[21][5*50+1], v[41][6];
void fun1();
void fun2();
void main()
{


for(int i=1;i<=20+2;i++) ////
{
for(int j=1;j<=5;j++)//ch
{
v[i][j]=va[i+40-21-2][j-1]; ////
}
}
for(int m=1;m<=20;m++)
{
for(int j=1;j<=5;j++)//ch
{
for(int i=1;i<=5;i++)
{
q[m][5*(j-1)+i]=v[m+2][j]+v[m][i]; ////
if(q[m][5*(j-1)+i]>=10)
q[m][5*(j-1)+i]=q[m][5*(j-1)+i]-10;
}

}
}

..........
}

void fun1();
{......}
void fun2();
{......} 


现在想做个循环(标记处)把2换成变量zj(从1到5)

#include<math.h>
#include<iostream>
#include <iomanip>
#include<vector>
#include <fstream>
#include <windows.h>
using namespace std;

int q[21][5*50+1], v[41][6];
void fun1();
void fun2();
void main()
{

for(int zj=1;zj<6;zj++) //加的循环
{

for(int i=1;i<=20+zj;i++) ////
{
for(int j=1;j<=5;j++)//ch
{
v[i][j]=va[i+40-21-zj][j-1]; ////
}
}
for(int m=1;m<=20;m++)
{
for(int j=1;j<=5;j++)//ch
{
for(int i=1;i<=5;i++)
{
q[m][5*(j-1)+i]=v[m+zj][j]+v[m][i]; ////
if(q[m][5*(j-1)+i]>=10)
q[m][5*(j-1)+i]=q[m][5*(j-1)+i]-10;
}

}
}

..........

}
}

void fun1();
{......}
void fun2();
{......} 

但实际运行的结果,只是做了zj==1的结果,zj=2到5运行结果有逻辑错误,不是分开单独运行的结果。
不知道说清楚没有。因为数据多,如果不做这个循环,要一个个分开运行,浪费时间。
有知道原因的请指教。







[解决办法]
给你建议,既然你要写代码量大的工程,最好规范一下你的命名,不然过一周你自己都不知道写的是什么。
[解决办法]
单步调试就好了。
[解决办法]
单步调试和设断点调试是程序员必须掌握的技能之一。

热点排行