例子如下:
直接编译,程序输出结果中任意输入两个数字,程序执行结果如下图所示:
知识扩展:
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境裤颤支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器胡手败(单片机或称MCU)以及超级电脑等作业平台。
C语言属于高级程序语言的一种,它的前身是“ALGOL”。其创始人是布朗·W·卡尼汉和丹尼斯·M·利奇。C语言问世时是带有很大的局限性,因为它只能用于UNIX系统上。然而随着科学技术的进步,计算机工业的发展,C语言逐渐脱离UNIX。1987年美国标准化协会制定了C语言的国薯升际标准,简称“ANSI C”,从此以后它便成为一种广泛使用的程序语言。
供参考
#include <stdio.h>void reverse(char *str)
{
char *p = str, c
while(*p)p++
p --
while(str < p)
{
c = *str
*str = *p
*p = c
str ++
p --
}
}
void add(char *a, char *b, 迅或char *r)
{
int d = 0
while(*a && *b)
{
*r = (*a-'0') + (*b-'0') + d
if(*r >= 10)
{
d = *r/10
*r%=10
}
*r += '0'
a++
b++
r ++
}
if(*b) a=b
while(*a)
{
*r = *a-'0'+d
if(*r >= 10)
{
d = *r/10
*r%=10
}
*r += '0'
r ++
a ++
}
if(d)*r++=d+'0'
*r = 0
}
void minus(char *a, char *b, char *r)
{
int d = 0
while(*a && *b)
{
*r = (*a-'0') - (*b-'0') - d
d = 0
while(*r <亩轮伍 0)
{
d ++
*r+=10
}
*r += '0'
a++
b++
r ++
}
while(*a)
{
*r = *a-'0'-d
d = 0
while(*r < 0)
{
d ++
*r+=10
}
*r += '0'
r ++
a ++
}
r 桐哗--
while(*r == '0') *r-- = 0
}
int main()
{
char a[100]={0}, b[100]= {0}, c[100] = {0}
char op
int i
i = 0
while(1)
{
a[i] = getchar()
if(a[i] > '9' || a[i]<'0') break
i++
}
op = a[i]
a[i] = 0
while(op != '-' && op != '+')op = getchar()
while(b[0]> '9' || b[0]<'0')b[0]=getchar()
i = 1
while(1)
{
b[i] = getchar()
if(b[i] > '9' || b[i]<'0') break
i++
}
b[i] = 0
reverse(a)
reverse(b)
if(op == '+') add(a,b,c)
else if(op == '-') minus(a,b,c)
reverse(c)
puts(c)
return 0
}
输入 *** 作数a +/- *** 作数b
比如
1234+12
3423-345
思路:定义两个变量a和b,利用标准输入scanf函数输入两个手漏整型并赋值给a和b,加法可以直接使用a+b得出的就是a与b的和,颤薯余茄滚最后利用标准输出printf函数输出计算结果。
参考代码:
#include<stdio.h>int main()
{
int a,b
scanf("%d%d",&a,&b)
printf("%d\n",a+b)
return 0
}
/*
输出:
15 20
35
*/
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)