标准库函数使用与编译预处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
创建时间:
#include
#define N 20
void main()
{
char s1[N],s2[N];
int a[N]={0},b[N]={0},l1,l2,c,k,i; puts("Input two number s1 and s2:"); gets(s1);
gets(s2);
l1=strlen(s1);
l2=strlen(s2);
if(l1 k=l2; else k=l1; c=k; for(i=0,i a[k]=s1[l1-1-i]-'0'; for(k=c,i=0,i b[k]=s2[l2-1-i]-'0'; printf("\n"); for(k=c;i>=0;i--) { a[i]+=b[i]; if(a[i]>=10) { a[i]=a[i]-10; a[i-1]++; } } printf("此两数所加之和为:"); if(a[0]!=0) { for(i=0;i<=c;i++) printf("%d",a[i]); } else { for(i=1;i<=c;i++) printf("%d",a[i]); } printf("\n"); } #include #include #define N 20 void main() { char s1[N],s2[N]; int a[N]={0},b[N]={0},l1,l2,j,k,i; printf("Input s1 and s2"); gets(s1); gets(s2); l1=strlen(s1); l2=strlen(s2); { if(i=k,j=l1-1,j>=0;i--;j--) { 请编制程序实现功能:利用字符数组实现两个大整数的加法string plus_1(const string &a,const string &b) { string result; char ttemp[2]; int alen,blen,i,j; int add,temp; ttemp[1]='\0'; alen=a.size(); blen=b.size(); add=0; for(i=alen-1,j=blen-1;i>=0&&j>=0;i--,j--) { temp=add+((int)a[i]-48)+((int)b[j]-48); add=temp/10; ttemp[0]=temp%10+48; result.insert(0,ttemp); } while(i>=0) { for(;i>=0;i--) { temp=add+(a[i]-48); add=temp/10; ttemp[0]=temp%10+48; result.insert(0,ttemp); } } while(j>=0) { for(;j>=0;j--) { temp=add+(b[j]-48); add=temp/10; ttemp[0]=temp%10+48; result.insert(0,ttemp); } } if (add!=0) {ttemp[0]=add%10+48; result.insert(0,ttemp); } return result; }