我的程序根据用户输入的大小动态分配数组。 (如果用户输入为' 5'那么我的pixmap = QPixmap.fromImage(qimage).copy()
数组的大小为5)。此数组的每个元素都应包含一个结构。(该结构包含一个名称和10个不同测试的点)。最后我想输出这样的结构:
prog
我的问题是我不知道如何实现这一目标。我唯一能做到的就是这个,下面提到的程序(我输入的最后一个数据改变了一切):
a
1 2 3 4 5 6 7 8 9 10
b
4 5 3 2 3 7 8 9 11 12
我花了好几个小时,我觉得我完全迷失了。
a
1 2 3 4 5 .... 10
b
1 2 3 4 5 .....10
答案 0 :(得分:1)
问题在于,在嵌套的for循环中,使用j
来索引prog
而不是i
,并且必须将指针传递给scanf
中的int }:
for(i=0;i<N;i++){
printf("Please enter the name of the student: \n");
scanf("%s",(prog+i)->name);
for(j=0,j<10,j++){
printf("Please enter point %d: \n", j+1);
scanf("%d", &((prog+i)->partpoints+j)); // no more PROBLEM now
}
注意:您可能需要在scanf
格式字符串中添加一个空格,以便跳过空格和cr / lf:" %d"
(我不是扫描专家)。