| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1822 人关注过本帖
标题:怎么改错误
只看楼主 加入收藏
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
结帖率:100%
收藏
 问题点数:0 回复次数:12 
怎么改错误
程序代码:
#include<stdio.h>
#define NUMBER1 2
#define NUMBER2 3
int copy_arr(int,int);

int main (void)
{
    int source[NUMBER1][NUMBER2]={{1,2,3},{4,5,6}};
    int target={0};
    printf("操作前:\nsource[1][1]=%d\nsource[1][2]=%d\nsource[1][3]=%d\n",source[0][0],source[0][1],source[0][2]);
    printf("source[2][1]=%d\nsource[2][2]=%d\nsource[2][3]=%d\n",source[1][0],source[1][1],source[1][2]);
    int copy_arr(source,target);
    printf("操作后:\nsource[1][1]=%d\nsource[1][2]=%d\nsource[1][3]=%d\n",source[0][0],source[0][1],source[0][2]);
    printf("source[2][1]=%d\nsource[2][2]=%d\nsource[2][3]=%d\n",source[1][0],source[1][1],source[1][2]);
}



int copy_arr(int source[],int target[])
{
    int i,n;
    for(i=0,n=0;i<2;i++)//先列后排
    {
        source[i][n];//不能这样子吗?
        for(;n<3;n++)
        source[i][n];
         
    }
    return 0;
}

搜索更多相关主题的帖子: 改错 int source target printf 
2017-11-25 21:44
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:0 
用来做什么的?
2017-11-26 08:46
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
收藏
得分:0 
回复 2楼 吹水佬
6.编写一个程序,初始化一个二维double数组,并利用练习2中的任一函数来把这个数组复制到另一个二维数组(因为二维数组是数组的数组,所以可以使用处理一维数组的函数来复制数组的每个子数组)。
能不能在我原程序改,最好改的简单易懂,毕竟我才新学,而且还是自学的那种╮(╯▽╰)╭

[此贴子已经被作者于2017-11-26 16:14编辑过]

2017-11-26 16:11
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
收藏
得分:0 
程序代码:
for(int i = 0; i < NUMBER1; i++) {
    for(int j = 0; j < NUMBER2; j++) {
        target[i][j] = source[i][j];
    }
}
2017-11-26 16:19
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
收藏
得分:0 
回复 4楼 Jonny0201
还是不行
程序代码:
int copy_arr(int source[],int target[])
{
    int i,j;
    for(i=0;i<2;i++)//先列后排 
    {
        for(j=0;j<3;j++)
         target[i][j] =source[i][j];
        
    }
    return 0;
}

出错25    27    E:\代码\zjC\P281 6.c    [Error] subscripted value is neither array nor pointer nor vector
2017-11-26 17:13
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
收藏
得分:0 
回复 5楼 kuaisha
程序代码:
#include <iostream>

using namespace std;
void copy_arr(int source[][3], int target[][3]);
int main(int argc, char *argv[]) {
    int source[2][3] = {{1, 2, 3}, {4, 5, 6}};
    int target[2][3];
    copy_arr(source, target);
    for(int i = 0; i < 2; i++) {
        for(int j = 0; j < 3; j++) {
            cout << target[i][j] << "\t";
        }
        cout << endl;
    }
}
void copy_arr(int source[][3], int target[][3]) {
    for(int i = 0; i < 2; i++) {
        for(int j = 0; j < 3; j++) {
            target[i][j] = source[i][j];
        }
    }
}

cout 就是你写的 printf
2017-11-26 17:27
ljwgogo
Rank: 2
等 级:论坛游民
威 望:1
帖 子:7
专家分:23
注 册:2017-11-15
收藏
得分:0 
回复 6楼 Jonny0201
#include<stdio.h>
#define NUMBER1 2
#define NUMBER2 3
int copy_arr(int [][3],int [][3]);

int main()
{
    int source[NUMBER1][NUMBER2]={{1,2,3},{4,5,6}};
    int target[NUMBER1][NUMBER2]={0};
    printf("操作前:\nsource[1][1]=%d\nsource[1][2]=%d\nsource[1][3]=%d\n",source[0][0],source[0][1],source[0][2]);
    printf("source[2][1]=%d\nsource[2][2]=%d\nsource[2][3]=%d\n",source[1][0],source[1][1],source[1][2]);
    copy_arr(source,target);
    printf("操作后:\nsource[1][1]=%d\nsource[1][2]=%d\nsource[1][3]=%d\n",source[0][0],source[0][1],source[0][2]);
    printf("source[2][1]=%d\nsource[2][2]=%d\nsource[2][3]=%d\n",source[1][0],source[1][1],source[1][2]);
    return 0;
}
int copy_arr(int source[][3],int target[][3])
{
    int i,j;
    for(i=0;i<2;i++)//先列后排
    {
        for(j=0;j<3;j++)
         target[i][j] =source[i][j];
        
    }
    return 0;
}
2017-11-26 19:42
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
收藏
得分:0 
回复 7楼 ljwgogo
谢谢!
2017-11-26 21:17
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
收藏
得分:0 
回复 6楼 Jonny0201
谢谢
2017-11-26 21:18
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
收藏
得分:0 
回复 7楼 ljwgogo
int copy_arr(int [][3],int [][3]);
int copy_arr(int [][],int [][]);这样子不可以吗,不是说C99支持吗?
2017-11-26 21:57
快速回复:怎么改错误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023195 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved