MuLinnnnn @ 2022-11-04 19:03:04
#include <iostream>
#include <cstring>
using namespace std;
char chch[1],eql[1]= {'='};
char brr[55][25];
int main() {
int n,cnt1=0,cnt2=0,q=0,w=0,num1=0,num2=0,ans=0;
char num[13],ch='\0',n1[6],n2[6];
char num1ch[6],num2ch[6],ansch[10];
char arr[25];
scanf("%d",&n);
getchar();
for(int i=0; i<n; i++) {
cin.get(num,13);
getchar();
cnt1=0;
cnt2=0;
memset(n1,'\0',sizeof(n1));
memset(n2,'\0',sizeof(n2));
if(num[0]>='a' && num[0]<='z') {
ch = num[0];
for(q=2;; q++) {
if(isspace(num[q])) {
for(int k=2; k<q; k++) {
n1[cnt1] = num[k];
cnt1++;
}
break;
}
}
for(int j=q+1; j < int(strlen(num)); j++) {
n2[cnt2] = num[j];
cnt2++;
}
} else {
for(w=0;; w++) {
if(isspace(num[w])) {
for(int k=0; k<w; k++) {
n1[cnt1] = num[k];
cnt1++;
}
break;
}
}
for(int j=w+1; j < int(strlen(num)); j++) {
n2[cnt2] = num[j];
cnt2++;
}
}
num1 = atoi(n1);
num2 = atoi(n2);
if(ch == 'a') {
chch[0] = '+';
ans = num1 + num2;
} else if(ch == 'b') {
chch[0] = '-';
ans = num1 - num2;
} else {
chch[0] = '*';
ans = num1 * num2;
}
sprintf(num1ch,"%d",num1);
sprintf(num2ch,"%d",num2);
sprintf(ansch,"%d",ans);
strcpy(arr,num1ch);
strcat(arr,chch);
strcat(arr,num2ch);
strcat(arr,eql);
strcat(arr,ansch);
for(int j=0; j < int(strlen(arr)); j++) {
brr[i][j]=arr[j];
}
}
for(int i=0; i<n; i++) {
for(int j=0; j < int(strlen(brr[i])); j++) {
cout << brr[i][j];
}
cout << "\n" << strlen(brr[i]);
if(i!=n-1){
cout << "\n";
}
}
return 0;
}
by Xy_top @ 2022-11-04 19:09:59
@bj12z_dingbolin 看上一篇帖子,不要用