我正在创建一个质量中心程序,并试图对其进行概括,它最多仅适用于 3D。使用具有 3D 和质量元素的结构。类型对象的变量数量,我希望由用户而不是我来定义。但我找不到使用循环创建变量的方法。也许有不同的方法可以做到这一点,但我只是不知道。这是我的代码示例,它不是完整的代码,但所有方程的逻辑都是相同的。
#include <stdio.h>
#include <stdlib.h>
struct objects
{
int Xcdnt;
int Ycdnt;
int Zcdnt;
int Mass;
};
int main()
{
int objectcount = 0;
int dimensioncount = 0;
printf("How many objects are there?");
scanf(" %d", &objectcount);
printf("How many dimensions are used?");
scanf(" %d", &dimensioncount);
for(int i = 0; i < objectcount; i++)
{
struct objects (i);
}
for(int i = 0; i < objectcount; i++)
{
printf("X coordinate is %d.\n", (i).Xcdnt);
}
return 0;
}
您需要 malloc 一个对象数组。您当前的代码只是循环创建和销毁同一个代码
struct objects* objects = malloc(objectcount * sizeof(struct objects));
for(int i = 0; i < objectcount; i++)
{
objects[i].Xcdnt = 42;
.....
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)