一个相同长度的数组,对该数组进行求和

#include <stdio.h>
#include <math.h>

int length(int arr[], int len) {
	int i;
	for(i = len-1; i >= 0; i--) {
		if(arr[i]) {
			return i + 1;
		}
	}
	return len;
}


void main() {
	/*
		加法运算
	*/
	int nums1[10] = {2, 2, 2};
	int nums2[10] = {9, 8, 7};
	int carry = 0;
	int i, n, count = 1, result = 0;
	int len = sizeof nums1 / sizeof nums1[0];

 	for(i = length(nums1, len) - 1; i >= 0; i--) {
		n = nums1[i] + nums2[i] + carry;
		carry = floor( n/10 );
		
		if(count == 1) {
			result = result + n % 10;
			count *= 10;
			continue;
		}

		result = result + n % 10 * count;
		count *= 10;
	}

	if( carry ) result += count;

	printf("%d\n", result);
}
posted @   TnT…  阅读(26)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
点击右上角即可分享
微信分享提示