weixin_46081766 2019-12-24 22:56 采纳率: 0%
浏览 117

C 求解 把一维阵列变成二维阵列

利用scanf("%d %d",&row,&col)表示要输出二维阵列元素的行列数,若是row或col输入0则结束此程式,接着输入row x col个元素最后输出一个row*col的二维矩阵
举例
输入:
3 2
1 2 3 4 5 6

输出:
1 2 3
4 5 6

int main(void) {
int i,j,row,col;
int b[row][col],a[row*col];
while(scanf("%d %d",&row,&col)){
if(row==0||col==0)
break;
for(i = 0; i < row; ++i){
for(j = 0; j < col; ++j){
scanf(" %d " , &a[j]);
b[i][j] = a[i * col + j];
}
}
for(i = 0; i < row; ++i){
for(j = 0; j < col; ++j){
printf("%d\t", b[i][j]);
}
puts("");
}
}
return 0;
}

写了个程式码,只有第一行是正确的,第一行以下的行数的元素皆跟第一行相同,求解错在哪呢

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-12-25 10:20
    关注

    C#没有scanf,应该用Console.ReadLine()代替。

    评论

报告相同问题?

悬赏问题

  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退