三维数组 输出-关于三维数组的输出问题

问题描述

关于三维数组的输出问题

#include
#include
#include
#include
using namespace std;
#define pi 3.1415;
#define a 2
#define R 300
#define H 300
#define n 10
#define LB
int main()
{
int i,j,k;
double x[H][LB][R*n],y[H][LB][R*n],z[H];
double v[H][R*n][2],vk[H][R*n][2],vkz[H][R*n][2];
for(i=0;i<R*n;i++)
{
v[0][i][0]=(-i/n)*sin(i/n)+cos(i/n);
}
for(i=0;i<R*n;i++)
cout<<v[0][i][0]<<endl;
return 0;
}
这个编译没问题,但是无法得到结果输出,请问如何解决啊

解决方案

要不你试下把数组初始化一下
然后再运行
就你给出的程序而言,并不需要用到三维数组
你可以先弄成一维的
double v[n*R]=0;试试
for(int i=0;i<n*r;i++)
v[i]=(-i/n)*sin(i/n)+cos(i/n);

解决方案二:

double x[H][LB][R*n],y[H][LB][R*n],z[H];
数组的维度定义时,应该用常量。而不应该用计算表达式。

解决方案三:

缺少数组初始化,还没有分配空间

解决方案四:

应该是数据类型的问题,代码 -i/n 执行的结果,在 i 小于 n 的情况下都是零。
如果还找不到答案,建议你调试一下,将下面的语句:

 v[0][i][0]=(-i/n)*sin(i/n)+cos(i/n);

进行分析,看看各个部分是否得到想要的结果。如果看 v 指定的位置是否正确存在数值。

解决方案五:

把i转成double的再做除法

时间: 2025-01-01 14:17:22

三维数组 输出-关于三维数组的输出问题的相关文章

java数组-这是我的代码,如何才能让数组实现连续的输入和输出

问题描述 这是我的代码,如何才能让数组实现连续的输入和输出 public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); System.out.println(""请输入数字个数""); int n = sc.nextInt(); System.out.println(""请输入数字&

php foreach输出二维数组

/* *标题:foreach输出二维数组 *函数:foreach() *创建时间:2015年5月16日 *注意事项: */ //输出一维数组 $array1 = array(); $array1[0] = '楚留香'; $array1[1] = '胡铁花'; $array1[2] = '姬冰燕'; //只有value的情况,也就是只输出值. foreach ($array1 as $value) { echo $value.' '; } echo ' '; //输出键值对 foreach ($a

php将数组转换成csv格式文件输出的方法

 本文实例讲述了php将数组转换成csv格式文件输出的方法.分享给大家供大家参考.具体实现方法如下: <?php $sales = array( array('east','2005-01-01','2005-02-01',12.54), array('west','2005-01-01','2005-02-01',546.33), array('south','2005-01-01','2005-02-01',93.26), array('north','2005-01-01','2005-0

c-C 复制数组的一点小问题 复制后输出结果和源数组不一样

问题描述 C 复制数组的一点小问题 复制后输出结果和源数组不一样 #include <stdio.h>int i=5;void input_array ( int array[] ){ int a; for ( a=0; a<i; a++ ){ scanf ( ""%i"" &array[a] ); }}void output_array ( int array[] ){ int a; for ( a=0; a<i; a++ ){ p

c++-字符数组连接为整型,输出非预期问题

问题描述 字符数组连接为整型,输出非预期问题 从文件中读取数据,在连接成整型,头一二个没问题,第三个就全是非预期的数值,求解文件读取查不出什么问题.char dicii[256*sizeof(int)] = {0};char dici1[256][sizeof(int)] = {0};int dici[256] = {0};//.........省略fin.seekg(0std::ios::cur);fin.read(cpq3*sizeof(long long)); //没问题fin.read(

iostream-C++怎么使用递归实现数组前N个元素倒序输出

问题描述 C++怎么使用递归实现数组前N个元素倒序输出 顺便看一下这个该怎么改 #include <iostream> using namespace std; int n; int fun(int str[]); int main() { int str[101]; for(int i=0;i<=100;) { str[i] = i++; } int n; cout << "输入:" << endl; cin >> n; fun(

一维数组,二维数组,三维数组,数组与指针,结构体数组,通过改变指针类型改变访问数组的方式

 打印数组中的每个元素,打印每个元素的地址: #include <stdio.h> #include <stdlib.h>   void main(void) {     int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };     for (int *p = a; p < a + 10;p++)  //指针类型决定4个字节     {         printf("\n%p,%d", p, *p);    

c语言-C中对排序好了后的数组中插入一个数在输出

问题描述 C中对排序好了后的数组中插入一个数在输出 用冒泡排序法对输入的20个数进行降序排序存入数组中,然后在输入一个数插入到该数组,要求保持原序不变输出该数组的21个数! 解决方案 int main(void) { int i,j,array[20],temp; printf("Input 20 integer:"); /*输入20个整数*/ for(i=0;i<20;i++) scanf("%d",&array[i]); printf("

ThinkPHP模板Volist标签嵌套循环输出多维数组的方法_php实例

本文实例讲述了ThinkPHP模板Volist标签嵌套循环输出多维数组的方法.分享给大家供大家参考,具体如下: ThinkPHP 中对 volist 标签嵌套使用可实现多维数组的输出. volist 嵌套使用 一般的二维数组,可以用 volist 标签直接循环输出.对于多维数组,则需要对其中的数组成员再次使用 volist 标签嵌套循环输出. 构建一个多维数组: $food = array(); $food[0]['fruits'][0]['fruits1'] = '苹果1'; $food[0]

C语言将数组中元素的数排序输出的相关问题解决_C 语言

 问题描述:输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个.例如输入数组{32,  321},则输出这两个能排成的最小数字32132.请给出解决问题的算法,并证明该算法.       思路:先将整数数组转为字符串数组,然后字符串数组进行排序,最后依次输出字符串数组即可.这里注意的是字符串的比较函数需要重新定义,不是比较a和b,而是比较ab与 ba.如果ab < ba,则a < b:如果ab > ba,则a > b:如果ab = ba,则a = b.比