编写实现对两个位数不超过30的十进制求加,减的程序。

来源:百度知道 编辑:UC知道 时间:2024/06/03 05:38:41
求c语言程序

怎么老要给你编写完整程序嘛,我没环境,测试不了,给你说一下思路吧。

void add30(char a30[],char b30[],char *sum30){
/*为了实现个位对齐,需要进行数组逆转*/
char a[30],b[30],s[30];
int i,j,k,x;
/*初始化*/
for (i=0;i<30;i++) a[i]=b[i]=s[i]='0';
/*逆转a30到a*/
j=0;
i=strlen(a30);
while(i>=0) a[j++]=a30[i--];
/*逆转b30到b*/
j=0;
i=strlen(b30);
while(i>=0) b[j++]=b30[i--];
/*下面开始计算结果,存入s,变量k为进位数*/
k=0;
for (i=0;i<30;i++)
{x=a[i]-'0'+ (b[i]-'0') + k;
if (x>9) {k=1;x-=10;}
else {k=0;}
s[i]='0'+x;
}
/*把结果s中最后面的'0'变为'\0'*/
i=29;
while(i>=0 && s[i]=='0'){s[i]='\0';i--;}
/*在把s逆转到结果sum30中即可*/
j=0;
i=strlen(s);
while(i>=0) sum30[j++]=s[i--];
}

/*减法的你自己做哈,我相信你能行的,先把我这个看懂*/
main(){
char a[30],b[30],s[30];
printf("请输入30位以内的数a=");scanf("%s",a);
printf("请输入30位以内

编写实现对两个位数不超过30的十进制求加,减的程序。 设计一个程序实现两个位数不超过 n 位的长整数的高精度加法? 100 <= n <= 1000 用java编写.谢谢 设计一个程序实现两个位数不超过 n 位的长整数的高精度加法? 100 <= n <= 1000 1、 编写程序,输入一个不超过5位的正整数,输出它的个位数,并指出它是几位数。 编写程序,输入一个不超过5位的正整数,输出它的个位数,并指出它是几位数。 编写C程序,实现交换两个变量值的操作。 编写程序,实现两个字符串拷贝的函数strcopy。 编写函数实现任意一个四位数n的逆序输出,如n为4563,输出3654。 急求用分治法实现两个大整数(要求位数无限制)相乘的C/C++源代码? 1.编写函数实现计算一元二次方程的两个实根,然后编写主函数调用此函数。