当前位置:   article > 正文

d1,数组求和,C/C++,对比_c++求和比较

c++求和比较

数组求和,C

#include<stdio.h>
 
 int addarray(int array[],int n);
 
 int main()
 {
	int data[] = {0,1,2,3,4,5,6,7,8,9};
	int size = sizeof(data)/sizeof(data[0]);//sizeof求字节数,总的/每个元素的
     
	printf("data:%d/n",sizeof(data));	//数组总字节数,4*10
	printf("sum:%d/n",addarray(data,size));
	
	return(0);
 }
 
 int addarray(int array[],int n)
 {
	 int sum=0;
	 int i;
    //传数组实参时会把array当成指针(指针指向首地址)
    //理解为int *array等于int array[],数组名代表首地址,看下个程序理解
    //只传首地址之后再寻址操作,比传所有数组元素快捷多
	 printf("array:%d/n",sizeof(array));//64位系统,64/8=8		 
	 for(i=0;i<n;i++)
		{
			sum += array[i];
		}
	return(sum);
 }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
输出为:
data:40
array:8
sum:45
  • 1
  • 2
  • 3
  • 4

数组求和,指针,C

 #include<stdio.h>
 
 int addarray(int *array,int n);
 
 int main()
 {
	int data[] = {0,1,2,3,4,5,6,7,8,9};
	int size = sizeof(data)/sizeof(data[0]);//sizeof求字节数,总的/每个元素的
     
	printf("data:%d/n",sizeof(data));	//数组总字节数
	printf("sum:%d/n",addarray(data,size));
	
	return(0);
 }
 
 int addarray(int *array,int n)
 {
	 int sum=0;
	 int i;
    //传指针(指针指向首地址)
	 printf("array:%d/n",sizeof(array));		 
	 for(i=0;i<n;i++)
		{
			sum+=*array++;
		}
	return(sum);
 }

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

数组求和,C++

//此为c99版本,在c92中没有namespace,但要用#include <iostream.h>兼容
#include <iostream> 

//using namespace std; //标准库的命名空间,namespace避免变量覆盖问题
  
int addarray(int *array,int n);

int main()
{
int data[] = {0,1,2,3,4,5,6,7,8,9};
int size = sizeof(data)/sizeof(data[0]);//sizeof求字节数,总的/每个元素的

//cout为输出流对象,是basic_ostream类的对象,console out控制台输出的缩写
std::cout << "sum:" << addarray(data,size) << std::endl;//<<左移操作符重载
//cout << "sum:" << addarray(data,size) << endl;//
return(0);
}
    

int addarray(int *array,int n)
{
 int sum=0;
 int i;
		 
 for(i=0;i<n;i++)
    {
        sum+=*array++;
    }
return(sum);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/64298
推荐阅读
相关标签
  

闽ICP备14008679号