#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
int a,b,r;
char op;
scanf("%x%c%x",&a,&op,&b);
if(op == '+')
{
r = a + b;
}
else
{
r = a - b;
}
if(r > 0)
{
printf("%o\n",r);
}
else
{
printf("-%o\n",-r);
}
}
return 0;
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
int a,b,r;
char op;
scanf("%x%c%x",&a,&op,&b);
if(op == '+')
{
r = a + b;
}
else
{
r = a - b;
}
if(r > 0)
{
printf("%o\n",r);
}
else
{
printf("-%o\n",-r);
}
}
return 0;
}
心得:这里面很巧妙的地方就是在输入一串包括数值和运算符的字符串时候用%x%c%x自动匹配,当然这里还要注意一点就是负数的输出问题。
本文介绍了一个使用C语言实现的简单程序,该程序能够读取包含十六进制数值及加减运算符的输入,并输出八进制结果。特别地,程序巧妙地利用了%x%c%x的格式化字符串来匹配输入,同时考虑到了负数输出的特殊情况。
914

被折叠的 条评论
为什么被折叠?



