| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 975 人关注过本帖
标题:c语言问题啊!!!!!!!
只看楼主 加入收藏
z6439186
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2011-11-15
结帖率:33.33%
收藏
 问题点数:0 回复次数:9 
c语言问题啊!!!!!!!
怎么输入多个数组啊,求解啊!!!!
描述

编写程序用来检查二维数组是否对称(即:对所有i,j都有a[i][j]=a[j][i])

输入


输入要判断的二维数组个数n,

然后依次输入n个二维数组

对于每个二维数组,先输入M,N(1<M,N<101),表示有M行N列,然后依次输入M*N个数据作为二维数组的元素值。


输出


输出各个二维数组是否对称的判断结果。


样例输入

3
2,2
1 2
2 1
3,3
1 2 3
3 2 1
1 2 3
10,10
1 2 3 4 5 6 7 8 9 10
2 1 2 3 4 5 6 7 8 9
3 2 1 2 3 4 5 6 7 8
4 3 2 1 2 3 4 5 6 7
5 4 3 2 1 2 3 4 5 6
6 5 4 3 2 1 2 3 4 5
7 6 5 4 3 2 1 2 3 4
8 7 6 5 4 3 2 1 2 3
9 8 7 6 5 4 3 2 1 2
10 9 8 7 6 5 4 3 2 1

样例输出

Yes
No
Yes
搜索更多相关主题的帖子: 编写程序 c语言 元素 
2011-11-25 18:56
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
是多组测试数据吧  你把题目网址发下

                                         
===========深入<----------------->浅出============
2011-11-25 18:57
逐鹿Internet
Rank: 1
等 级:新手上路
帖 子:10
专家分:1
注 册:2011-8-31
收藏
得分:0 
晕,先来个小数组测试下
2011-11-26 01:04
z6439186
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2011-11-15
收藏
得分:0 
书上面的,谁能告诉我下要怎么才能输入多个数组啊
2011-11-26 09:19
于祥
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1047
专家分:4132
注 册:2011-4-24
收藏
得分:0 
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
    int a[100][100];
    int i,j,m,n;
    char c;
   
    while("循环")
    {
      printf("输入二维数组的行数:");
      scanf("%d",&m);
      printf("输入二维数组的列数:");
      scanf("%d",&n);
      for(i=0;i<m;i++)
        for(j=0;j<n;j++)
         scanf("%d",&a[i][j]);
      
      printf("是否继续?Y/N:");
      scanf(" %c",&c);
      if(c=='n'||c=='N') break;
    }
}
这只是输入多个数组的方法,希望对你有用。

最基础的往往是你最容易忽略的!
2011-11-26 09:33
nanhua
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-11-26
收藏
得分:0 
程序代码:
#include<stdio.h>
#define MAX 100
int test(int a[][MAX],int m,int n);
void main()
{
    int m;//数组个数
    int a,b,c=0,d;
    int array[MAX][MAX];
    int result[MAX];
    scanf("%d",m);
    while(c++<m)
    {
        int j,k;
        scanf("%d%d",a,b);
        printf("\n");
        for(j=0;j<a;j++)
            for(k=0;k<b;k++)
            {
                scanf("%d%d%d",array[j][k],array[j][k],array[j][k]);
                printf("\n");
            }
            result[c]=test(array,a,b);
    }
    for(d=0;d<m;d++)
    {
        if (result[d]==1)
            printf("Yes\n");
        else
            printf("No\n");
    }


}
int test(int a[][MAX],int m,int n)
{
    int i,j;
    for( i=0;i<m;i++)
        for( j=0;j<n;j++)
            if(a[i][j]==a[j][i])
                ;
            else
                return 0;

            return 1;
}
2011-11-26 10:38
keaixiaou
Rank: 2
等 级:论坛游民
帖 子:9
专家分:21
注 册:2011-11-23
收藏
得分:0 
    for (i=0;i<M;i++)
    {
        for (j=i;j<N;j++)
        {
            if (a[i][j]!=a[j][i])
            {
                break;
            }
        }
        if (j>=N)
        {
            break;
        }
    }
    if (i>=M)
    {
        ...../表示不符合
    }
2011-11-26 14:40
nanhua
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-11-26
收藏
得分:0 
用C写了居然出现内存不能读取的错误,不知道什么原因唉!!
后来用C++写。代码如下
程序代码:
#include<iostream.h>
#define MAX 100
int test(int a[][MAX],int m,int n);
void main()
{
    int m;//数组个数
    int a,b,c=0,d=0;
    int array[MAX][MAX]={0};
    int result[MAX]={-1};
    cin>>m;
    while(c<m)
    {
        int j,k;
       cin>>a>>b;
        for(j=0;j<a;j++)
            for(k=0;k<b;k++)
                cin>>array[j][k];

            result[c]=test(array,a,b);
            c++;
    }
    for(d=0;d<m;d++)
    {
        if (result[d]==1)
           cout<<"Yes"<<endl;
        else
           cout<<"No"<<endl;
    }


}
int test(int a[][MAX],int m,int n)
{
    int i,j;
    for( i=0;i<m;i++)
        for( j=0;j<n;j++)
            if(a[i][j]==a[j][i])
                ;
            else
                return 0;

            return 1;
}


图片附件: 游客没有浏览图片的权限,请 登录注册



没想到C++运行后没多久也出现了内存读取错误。。那位高手教下小弟。。
2011-11-27 09:01
z6439186
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2011-11-15
收藏
得分:0 
我想问下那要怎么样才能输出多组数组呢,能让系统记住已经输入的多组数组,并把它输出呢
2011-11-27 14:06
nanhua
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-11-26
收藏
得分:0 
回复 9楼 z6439186
用结构体
程序代码:
struct array
{
    int a;
    int b;
    intArr[max][max];
} ARR[max];

将输入的每个数组的信息都保存在ARR中。
2011-11-28 20:34
快速回复:c语言问题啊!!!!!!!
数据加载中...
 
   



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

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