(多样的加法)程序运行结果不正确,结果总是相似的一串数字,不知道怎么改,求大神帮忙。
程序代码:#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;
q++;
}
else
{
c[p][99]=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;
}运行结果
/*1多样的加法(20分)
题目内容:
加法常常有不同的含义,如果我们看见“4+6”,我们会理解为10,如果我们看见“help+me”,我们会理解为“helpme”。
现在我们从键盘上输入,一组序列,请你来区分,不同的情况,给出不同的“加法”之后的结果。
输入格式:
第一行,输入一个整数N,表示有N组输入,接下来的每一行,有两个序列(整数或字符串),中间用空格分开
输出格式:
每一组输入,对应的结果
输入样例:
4[回车]
123[空格]456[回车]
hello[空格]Xidada[回车]
hello[空格]123[回车]
123[空格]hello[回车]
输出样例:
579[回车]
helloXidada[回车]
hello123[回车]
123hello[回车]
时间限制:500ms内存限制:32000kb*/










