c语言函数编程题(c语言函数编程题目)

2023-12-10 08:11:08 数码极客 bianji01

 

C语言编程题 函数的应用?

以下的程序实现的功能为:

主函数中定义一个包含10个浮点型数据的数

自定义函数实现如下功能:

函数func1()的功能是计算并输出数组的平均值;

函数func2()的功能是将数组的每个数取整数(题目未规定取整规则,程序中采用截尾取整),存储到新的数组里,并打印输出。

#include

voidfun1(floata[],intn)

{floats=0;

for(;n;)s+=a[--n];

printf("%f\n",s);

voidfun2(floata[],intb[],intn)

{inti;

for(i=0;i

{b[i]=a[i];

printf("%d",b[i]);

printf("\n");

intmain()

{inti;

floata[10];

intb[10];

for(i=0;i<10;i++)

scanf("%f",&a[i]);

fun1(a,10);

fun2(a,b,10);

return0;

for(;n;)s+=a[--n];

是什么意思?

这是简略写法。它等同于:

for(;n!=0;){--n;s=s+a[n];}

这个c语言编程题如何求解?

如果非要用两个函数,则:sum1函数可以用等差数列求和公式降低时间复杂度时间复杂度O(n)其实sum2本身就有求和公式:1+(1+2)+...+(1+2+...+n)=n(n+1)(n+2)÷6时间复杂度O(1)#include#include#define int unsigned long longusing namespace std;using namespace chrono;//法1(O(n^2))int sum11(int k){int s=0;for(int i=1;i<=k;i++) s+=i;return s;int sum12(int n){int s2=0;for(int i=1;i<=n;i++) s2+=sum11(i);return s2;//法2(O(n))int sum21(int k){return (1+k)*k/2;int sum22(int n){int s2=0;for(int i=1;i<=n;i++) s2+=sum21(i);return s2;int sum32(int n){return n*(n+1)*(n+2)/6;signed main(){auto start1=system_clock::now();cout<<"法1:"<运算结果一定是个整数{case 10:case 9:puts( A );break; //break:当前是用于跳出switch语句case 8:puts( B );break;case 7:puts( C );break;case 6:puts( D );break;default:puts( E );}return 0;}

c语言函数例题

在我的系统中运行你 的程序和你想的一样,是8不是7.string 1,string 2:its a boyboyoffset 8 "boy"in"its a boy"所谓指针就是地址,只是指针会区别它是什么指针,对应的数据占多大内存。如subst,str都是char*类型的,他们是符指针,所以他们指向的类型是字符。*str和str[0]的含义是一样的,意思是取得首字符。在c语言中字符串就是用字符指针来表示的,对应的是“%s”,而加上了*,是取这个字符指针地址的内容,也就是一个字符,用“%c”表示。所以你打印的是字符串,就应该用%s。

C语言函数题目

声明:易趣百科所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系315127732@qq.com
广告位招租
横幅广告