C中的双数组打印输出给了我奇怪的输出 a=(float**)malloc(num*sizeof(float*); 如果(!a){ printf(“无法分配!\n”); 出口(1); } 对于(i=0;i
这是num:3 这是一个[s][t]:0表示s:0和t:4198765 这是s:1和t:4199061的a[s][t]:0 这是s:2和t:4199061的a[s][t]:0 这是s:0和t:4199061的[s][t]:1 这是s:1和t:4199061的[s][t]:1 这是s:2和t:4199061的[s][t]:1 这是s:0和t:4199061的a[s][t]:2 这是s:1和t:4199061的[s][t]:2 这是一个[s][t]:2代表s:2和t:4199061 //这是矩阵输入 5 1 3 6 3 7 2 8 36996C中的双数组打印输出给了我奇怪的输出 a=(float**)malloc(num*sizeof(float*); 如果(!a){ printf(“无法分配!\n”); 出口(1); } 对于(i=0;i,c,C,这是num:3 这是一个[s][t]:0表示s:0和t:4198765 这是s:1和t:4199061的a[s][t]:0 这是s:2和t:4199061的a[s][t]:0 这是s:0和t:4199061的[s][t]:1 这是s:1和t:4199061的[s][t]:1 这是s:2和t:4199061的[s][t]:1 这是s:0和t:4199061的a[s][t]:2 这是s:1和t:4199061的[s][t]:2 这是一个[s][t]:2代表s:2和t:4199061 //这是矩阵输入
//订货根本不对 您应该使用
%f
打印浮点数,并检查每个fscanf
是否成功。很抱歉此问题格式不好。我在这里提出的第一个问题。对于a[s][t]
(双精度,浮点)问题的内容完全不清楚。无论是你的第一个问题还是第二个问题,你都应该在帖子正文中发布实际问题!
a = (float**)malloc(num * sizeof(float*));
if( !a) {
printf("Cannot allocate a!\n");
exit(1);
}
for(i = 0; i < num; i++) {
a[i] = (float *)malloc(num * sizeof(float));
if( !a[i]) {
printf("Cannot allocate a[%d]!\n",i);
exit(1);
}}
for(i = 0; i < num; i++) {
for(j = 0; j < num; j++)
fscanf(fp,"%f ",&a[i][j]);
}
// in a method called after a is initialized and elements are recorded.
int s, t;
printf("This is num: %d\n", num);
for (s = 0; s < num; s++) {
for (t = 0; t < num; t++) {
printf("This is a[s][t]:%d for s:%d and t:%d\n", a[s][t], s, t);
}
}