社区讨论

70分,不知道卡哪里了,求解

P1957口算练习题参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@locibru9
此快照首次捕获于
2023/10/30 14:16
2 年前
此快照最后确认于
2023/11/05 01:39
2 年前
查看原帖
CPP
#define LENGTH 53
#include <stdio.h>
#include<stdlib.h>
#include <string.h>
#include <iostream>
#include <algorithm>
int main() {
	char a[LENGTH],b, c[LENGTH];
	int n=0,x,y;

	scanf("%d", &n);
	for (int  i = 0; i < n; i++)
	{
		scanf("%s", a);
		switch (a[0])
		{
			int temp;
		case 'a':
			scanf("%d%d", &x, &y);
			temp = x + y;
			sprintf(c,"%d+%d=%d", x, y,temp );
			printf("%s\n%d\n", c, strlen(c));
			break;
		case 'b':
			scanf("%d%d", &x, &y);
			temp = x - y;
			sprintf(c,"%d-%d=%d", x, y, temp);
			printf("%s\n%d\n", c, strlen(c));
			break;
		case 'c':
			scanf("%d%d", &x, &y);
			temp = x * y;
			sprintf(c,"%d*%d=%d", x, y, temp);
			printf("%s\n%d\n", c, strlen(c));
			break;
		default:
			x = atoi(a);
			scanf("%d",&y);	
			
			switch (b)
			{				
			case 'a':temp = x + y;b = '+';break;
			case 'b':temp = x - y;b = '-';break;
			case 'c':temp = x * y;	b = '*';break;
			}
			sprintf(c,"%d%c%d=%d", x,b, y, temp);
			printf("%s\n%d\n", c, strlen(c));
			break;
		}
		if (a[0]=='a'|| a[0] == 'b'|| a[0] == 'c')
		  b = a[0];
	}
}

回复

2 条回复,欢迎继续交流。

正在加载回复...