C语言编程题目求解...

来源:百度知道 编辑:UC知道 时间:2024/06/08 21:37:57
一共四道题目
1,读入一个只含加减运算的表达式,数据都是整数,除第一个数外,其余数前都有运算符,表达式以;结束 例如:输入1+2+3-5;得出结果为1.
求出表达式的值。
2,输入整数i,sum=1+2+....+i,若i小于等于5;
sum=100-i-(i-1)-....-1,若i大于5小于等于10;
sum=i*i,若i大于10;
3,输入一整数,求出各位相加的和。例如,输入1345,输出1+3+4+5=13,要输出值13.
拜托各路大侠了.....这些题目好难呀....

第1题:

#include <stdio.h>

main()
{
int n = 0;
int p = 0;
int value = 0;
int minus = 0;
char s[200];
printf("Input the express: ");
scanf("%s", s);

while (1)
{
if (s[p] == ';')
{
if (minus == 1)
value -= n;
else
value += n;
break;
}
else if (s[p] == '-')
{
if (minus == 1)
value -= n;
else
value += n;
minus = 1;
n = 0;
}
else if (s[p] == '+')
{
if (minus == 1)
value -= n;
else
value += n;
minus = 0;
n = 0;
}
else
{
n = n * 10 + s[p] - 48;
}
p++;
}

printf("the value of express is: %d\n", value);
}

第2题: 条件: sum=1