标题:关于二维数组赋值的问题
只看楼主
o天道酬勤o
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2016-11-4
结帖率:94.44%
已结贴  问题点数:10 回复次数:4 
关于二维数组赋值的问题
程序代码:
#include<stdio.h>
#include<string.h> 
#include<stdlib.h>
int main()
{
    int n,m,p,q,i,w,r;
    int j[100][100]={0};
    char a[99]={0},b[99]={0},*c[100][100]={0};
    p=0;q=0;
    scanf("%d",&n);//指定输入的组数,每组输出两个字符或数组。
    for(i=1;i<=n;i++)
    {
        scanf("%s ",a);
        scanf("%s",b);
        if(a[0]<=57&&a[0]>=48&&b[0]<=57&&b[0]>=48)//如果均为数字,将这两个数相加。
        {
            int num=atoi(a);
            r=atoi(b);
            r=num+r;
        j[q][100]={r};/*这种写法是不是不正确?能否将r的值赋给数组j? 如果不可以,那怎样修改呢? */ 
        printf("%d",j[0]);
        q++;
        }
        else//反之,将他们连起来输出,比如:输入:12 yes 输出:12yes
        {
        c[p][10]=strcat(a,b);/*这种写法是不是不正确?*/ 
        p++;
        }
    }
    
    for(w=0;w<q;w++)
    printf("%d\n",j[w]);
    for(i=0;i<p;i++)
    printf("%s\n",c[i]);
    return 0;
}

疑问处见程序中的注释(可能表述不清,还请见谅

[此贴子已经被作者于2016-12-3 23:58编辑过]

搜索更多相关主题的帖子: 西餐厅 绵阳 
2016-12-03 23:18
天行健二世
Rank: 1
等 级:新手上路
帖 子:1
专家分:5
注 册:2016-12-3
得分:5 
回复 楼主 o天道酬勤o
可以用字符型数组啊,将r的值赋给数组
2016-12-03 23:53
o天道酬勤o
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2016-11-4
得分:0 
回复 2楼 天行健二世
若均为数字,还要进行相加,那就要转换成int型,接下来直接赋值给int型数组不方便吗?
2016-12-04 00:01
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
得分:5 
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
 {
     int n,m,p,q,i,w,r;
     int j[100][100]={0};
     char a[99]={0},b[99]={0},*c[100][100]={0};
     p=0;q=0;
     scanf("%d",&n);//指定输入的组数,每组输出两个字符或数组。
    for(i=1;i<=n;i++)
     {
         
         scanf("%s ",a);
         scanf("%s",b);
         if(a[0]<=57&&a[0]>=48&&b[0]<=57&&b[0]>=48)//如果均为数字,将这两个数相加。
        {
             int num=atoi(a);
             r=atoi(b);
             r=num+r;
         j[q][99]=r;/*这种写法是不是不正确?能否将r的值赋给数组j? 如果不可以,那怎样修改呢? */
         printf("%d",j[q][99]);
         q++;
         }
         else//反之,将他们连起来输出,比如:输入:12 yes 输出:12yes
        {
         c[p][99]=strcat(a,b);/*这种写法是不是不正确?*/
         p++;
         }
     }
     
     for(w=0;w<q;w++)
     printf("%d\n",j[w][99]);
     for(i=0;i<p;i++)
     printf("%s\n",c[i][99]);
     return 0;
 }

早知做人那么辛苦!  当初不应该下凡
2016-12-04 08:52
o天道酬勤o
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2016-11-4
得分:0 
   j[q][100]为什么不可以
2016-12-04 10:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-471939-1-1.html




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

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