看起来是矩阵的转置
把int [i][j];这句改一下,然后加一句,最终是这样的
int i, j;
for(i = 0; i < 3; i ++)
完整的代码就是
#include <stdioh>void main()
{
int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, b[4][3];
int i, j;//这里改一下
for (i = 0;i < 3; i++)//这里加一句,不加也可以
for (j = 0; j < 4; j++){
b[j][i] = a[i][j];
}
for (i = 0; i < 4; i++){
for (j = 0; j < 3; j++)
printf ("%5d", b[i][j]);
printf ("\n");
}
}
从变量名(函数名)来理解,主程序通过设定a和b的值,调用子程序(计算面积的?)area,得到变量c的值,并且将变量c、a、b的值打印到屏幕(标准输出)。
但是从函数接口来看,这个程序是有问题的。调用area子程序时,输入变量a,b的维数与子程序中声明的变量维数不一致,存在隐患。
就是变量 x、y之间的值交换,没有返回值,但是有个静态变量 count,在再次进入此过程调用时,count会是上一次的值,而不会是 0,只是如果没有下一步的处理的话,这个值也没什么用
修改后的C++程序如下(只修改一处):
#include <iostream>
using namespace std;
#include <stdlibh>
class Store
{
public:
Store(int n, int q, float p):num(n),quantity(q),price(p){}
void sum_s();
static void ave_Store(){ave = sum / n;}
static void display(){cout<<"当日此商品的总销售款为:"<<Store::sum<<endl<<"当日的每件商品的平均售价为:"<<Store::ave<<endl;}
private:
int num;
int quantity;
float price;
float sum_personal;
void sum_jisuan();
static float discout;
static float sum;
static int n;
static float ave;
};
void Store::sum_s()
{
sum_jisuan();
sum += sum_personal;
n += quantity;
}
void Store::sum_jisuan()
{
if(quantity > 10)
sum_personal = quantity price discout;
else
sum_personal = quantity price;
}
float Store::discout = 098;
float Store::sum = 0;
int Store::n = 0;
float Store::ave = 0; //修改处
int main()
{
Store s1(101, 5, 235), s2(102, 12, 2456), s3(103, 100, 215); //修改处
s1sum_s();
s2sum_s();
s3sum_s();
Store::ave_Store();
Store::display();
system("pause");
return 0;
}
运行测试:
现在的编译器是不支持你的char x[]这种写法的,书上也许是这么教的,c99才支持,但大部分工具不支持,所以要写清楚大小,你把a10长度定义这么小,肯定要越界的,第二你把xi+1替换成xi,那你原来的xi+1不见了,怎么办?可以说这么程序几乎全是错误,不过对于初学者还是值得赞赏的。
出现这个提示是系统临时文件太多了,或是磁盘出了问题引起的,看看下面的方法。
1)任务栏右下角出现这种提示(某文件损坏,请运行运用chkdsk工具修复),一般是系统垃圾文件太多导致的,主要是上网产生的垃圾文件,清理一下就好了。
打开一个网页,点击“工具”菜单/Internet选项/在“常规”标签下点击“删除cookies(I)”,“删除文件”d出窗口,点击“确定”(包括脱机文件),然后重启一下电脑(不需要用提示说的Chkdsk工具)。
2)系统自带的磁盘修复方法:(如果故障依旧,就是你的磁盘有问题了,请修复一下磁盘,每个磁盘都修复一下)
具体步骤如下:在我的电脑中选中盘符后单击鼠标右键选属性,在d出的驱动器属性窗口中依次选择“工具→开始检查”并选择“自动修复文件系统错误”和“扫描并恢复坏扇区”,然后点击开始,扫描时间会因磁盘容量及扫描选项的不同而有所差异(按上面的方法做后,会d出一个框,点是,自动关机后在开机进行修复)。
3)还是不行可能是硬盘有问题了,用软件修复试试。硬盘坏道将导致电脑系统文件损坏或丢失,电脑无法启动或死机。硬盘坏道可以采用NDD磁盘工具或Scandisk来修复。
4)如果故障依旧,请还原一下系统或重装(还是不行格式化硬盘重新分区重装,在不行就要换硬盘了,或检修一下去吧)。
以上就是关于C语言,这个程序是什么功能怎么改错。纯小白全部的内容,包括:C语言,这个程序是什么功能怎么改错。纯小白、Fortran程序 请问这个程序是什么意思,运行结果是什么 implicit none exte、求大神帮我讲解一下这个程序......等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)