计蒜课_加一
Posted 欢迎来到我的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计蒜课_加一相关的知识,希望对你有一定的参考价值。
使用数组的来表示一个较大的数:
1 #include<iostream> 2 using namespace std; 3 void add(int* &a, int length) { 4 int c = 1; 5 //c代表进位,完成对数组的更新,并保留最高为的进位; 6 for (int i = length - 1;i >= 0;i--) { 7 if ((a[i] += c) == 10) { 8 c = 1; 9 a[i] = 0; 10 } 11 else { 12 c = 0; 13 } 14 } 15 if (c == 1) {//最高位发生进位; 16 int*oldElem = a;//保留旧的数组地址; 17 a = new int[++length]; 18 //将就数组数据迁至新数组; 19 for (int i = 0, k = 1;k<length;k++) 20 a[k] = oldElem[i++]; 21 a[0] = 1;//最高位赋值为1; 22 delete[]oldElem; 23 } 24 for (int i = 0;i<length;i++)//数据的输出; 25 cout << a[i] << " "; 26 27 } 28 int main() 29 { 30 int n; 31 cin>>n; 32 int* a = new int[n]; 33 for (int i = 0;i<n;i++) 34 cin >> a[i]; 35 add(a, n); 36 delete[]a; 37 }
//代码较简单,不再解释;
以上是关于计蒜课_加一的主要内容,如果未能解决你的问题,请参考以下文章