紫竹


私信TA

用户名:urnachan

访问量:29033

签 名:

等  级
排  名 304
经  验 5441
参赛次数 0
文章发表 72
年  龄 0
在职情况 学生
学  校 合肥工业大学
专  业

  自我简介:

TA的其他文章

#include "stdafx.h"                      //自己运行是正确的,但是验证不通过

#include "string.h"                         //顺序提取数字和运算符号

int f(int n, char s[])

{

int i = 0, j = 0, k = 0, x = 0, y = 0, z = 0, flag = 0, temp = 1;

char t[3] = { 0 };

while (s[i] >= '0'&&s[i] <= '9')  

{

t[j++] = s[i];

i++;

k++;

}

for (j = k - 1; j >= 0; j--)

{

x += (t[j] - '0') * temp;

temp *= 10;

}


if (s[i++] == '+')

flag = 1;

else

flag = 0;

memset(t, 0, sizeof(t));

j = 0;

temp = 1;

k = 0;

while (s[i] >= '0'&&s[i] <= '9')

{

t[j++] = s[i];

i++;

k++;

}

for (j = k - 1; j >= 0; j--)

{

y += (t[j] - '0') * temp;

temp *= 10;

}

i = i++;

memset(t, 0, sizeof(t));

j = 0;

temp = 1;

k = 0;

while ((s[i] >= '0'&&s[i] <= '9') || s[i] == '?')

{

t[j++] = s[i];

i++;

k++;

}

temp = 1;

for (j = k - 1; j >= 0; j--)

{

z += (t[j] - '0') * temp;

temp *= 10;

}

if (flag == 1)

{

if (x + y == z)

return 1;

else

return 0;

}

else

{

if (x - y == z)

return 1;

else

return 0;

}

}

int main()

{

char s[10] = { 0 };

int c = 0, len;

while (scanf("%s", s) != EOF)

{

len = strlen(s);

if (f(len, s) == 1)

c++;

memset(s, 0, sizeof(s));

}

printf("%d", c);

return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区