份二C上机编程题题目Word文档格式.docx

上传人:b****5 文档编号:17376122 上传时间:2022-12-01 格式:DOCX 页数:59 大小:35.12KB
下载 相关 举报
份二C上机编程题题目Word文档格式.docx_第1页
第1页 / 共59页
份二C上机编程题题目Word文档格式.docx_第2页
第2页 / 共59页
份二C上机编程题题目Word文档格式.docx_第3页
第3页 / 共59页
份二C上机编程题题目Word文档格式.docx_第4页
第4页 / 共59页
份二C上机编程题题目Word文档格式.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

份二C上机编程题题目Word文档格式.docx

《份二C上机编程题题目Word文档格式.docx》由会员分享,可在线阅读,更多相关《份二C上机编程题题目Word文档格式.docx(59页珍藏版)》请在冰豆网上搜索。

份二C上机编程题题目Word文档格式.docx

F(n)=F(n-1)+F(n-2)

当t=1000时,函数值为:

1597。

doublefun(intn)

main()/*主函数*/

printf("

%f\n"

fun(1000));

第4题、

根据以下公式计算s,计算结果通过形指针sn传回;

s通过形参传入。

1111  (-1)^n

sn=──-──+──-──+ …… ────

1357   2n+1

若n的值为11时,输出的结果是:

S=0.764601N=11。

voidfun(float*sn,intn)

{intn=11;

floats;

fun(&

s,n);

S=%fN=%d\n"

s,n);

第5题、

编写函数fun,它的功能是计算:

s=(In

(1)+In

(2)+In(3)+……+In(m))^0.5,s作为函数值返回。

在C语言中可调用log(n)函数求In(n)。

log函数的引用说明是:

doublelog(doublex)。

例如,若m的值为:

20,fun函数值为:

6.506583。

doublefun(intm)

fun(20));

第6题、

编写函数fun,它的功能是计算下列数级和,和值由函数值返回。

x^2x^3x^n

s=1+x+──+──+……+──

2!

3!

n!

例如,当n=10,x=0.3时,函数值为1.349859。

doublefun(doublex,intn)

{printf("

fun(0.3,10));

第7题、

计算并输出下列级数和:

111

s=───+───+……+─────

22×

3n×

(n+1)

例如,当n=10时,函数值为:

0.909091。

fun(10));

第8题、

请编写一个函数fun,它的功能是:

根据以下公式求π的值(要求满足精度0.0005,即某项小于0.0005时停止迭代):

π11×

21×

3 1×

41×

…×

n

─=1+─+──+────+─────+……+────────

233×

53×

7 3×

93×

(2n+1)

程序运行后,如果输入精度0.0005,则程序输出为3.14…。

doublefun(doubleeps)

main()

{doublex;

Inputeps:

"

);

scanf("

%lf"

&

x);

\neps=%lf,PI=%lf\n"

x,fun(x));

第9题、

请编写函数fun,其功能是:

计算并输出当x<

0.97时下列多项式的值,直到|S(n)-S(n-1)|<

0.000001为止。

S=1+0.5x+0.5(0.5-1)x2/2!

+……+0.5(0.5-1)(0.5-2)--------(0.5-n+1)xn/n!

例如,在主函数中从键盘给x输入0.21后,输出为:

s=1.100000。

doublefun(doublex)

{doublex,s;

Inputx:

"

);

s=fun(x);

s=%f\n"

s);

B类数学的最大与最小值(1-4)

第1题、

请编写一个函数fun,它的功能是:

找出一维整型数组元素中最大的值和它所在的下标,最大的值和它所在的下标通过形参传回。

数组元素中的值已在主函数中赋予。

主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。

stdlib.h>

voidfun(inta[],intn,int*max,int*d)

{inti,x[20],max,index,n=10;

for(i=0;

i<

n;

i++){x[i]=rand()%50;

%4d"

x[i]);

\n"

fun(x,n,&

max,&

index);

Max=%5d,Index=%4d\n"

max,index);

请编写一个函数intfun(int*s,int*t,int*k),用来求出数组中值最大的元素在数组中的下标并存放在k所指的存储单元中,并且将最大值增添在数组的最后。

形参t所指存储单元中存放数组中数据的个数。

例如,数组中的数据如下:

876675896101301401980431451777

则输出最大值的下标为:

6,数组中的内容为:

876675896101301401980431451777980

#defineN80

voidfun(int*s,int*t,int*k)

}main()

{inta[N]={876,675,896,101,301,401,980,431,451,777},i,n,mi;

n=10;

\nTheoriginaldata:

for(i=0;

i<

n;

i++)printf("

a[i]);

fun(a,&

n,&

mi);

Theindexofmaxis:

%d\n"

mi);

Theresult:

请编一个函数voidfun(inttt[M][N],intpp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。

二维数组中的数已在主函数中赋予。

#defineM3

#defineN4

voidfun(inttt[M][N],intpp[N])

{intt[M][N]={{22,45,56,30},

{19,33,45,38},

{20,22,66,40}};

intp[N],i,j,k;

Theoriginaldatais:

M;

i++){

for(j=0;

j<

N;

j++)

%6d"

t[i][j]);

fun(t,p);

\nTheresultis:

for(k=0;

k<

k++)printf("

p[k]);

第4题、

请编写一个函数intfun(int*s,intt,int*k),用来求出数组的最大元素在数组中的下标,用k返回。

例如,输入如下整数:

876675896101301401980431451777

则输出结果为:

6,980

intfun(int*s,intt,int*k)

inta[10]={876,675,896,101,301,401,980,431,451,777},k;

fun(a,10,&

k);

%d,%d\n"

k,a[k]);

C类二维数组行列下标(1-6)

请编写函数fun,函数的功能是:

实现B=A+A'

,即把矩阵A加上A的转置,存放在矩阵B中。

计算结果在main函数中输出。

例如,输入下面的矩阵:

其转置矩阵为:

|123||147|

|456||258|

|789||369|

程序输出:

|2610|

|61014|

|101418|

voidfun(inta[3][3],intb[3][3])

{inta[3][3]={{1,2,3},{4,5,6},{7,8,9}},t[3][3];

inti,j;

fun(a,t);

3;

for(j=0;

%7d"

程序定义了N×

N的二维数组,并在主函数中自动赋值。

请编写函数fun(inta[][N]),函数的功能是:

使数组右上半三角元素中的值乘以m。

若m的值为2,a数组中的值为

|197|

a=|238|,则返回主程序后a数组中的值应为

|456|

|21814|

|2616|

|4512|

#defineN5

intfun(inta[][N],intm)

{inta[N][N],m,i,j;

*****Thearray*****\n"

i++)

{for(j=0;

{a[i][j]=rand()%20;

a[i][j]);

dom=rand()%10;

while(m>

=3);

m=%4d\n"

m);

fun(a,m);

THERESULT\n"

j++)printf("

编写程序,实现矩阵(3行3列)的转置(即行列互换)。

例如,输入下面的矩阵:

100200300

400500600

700800900

100400700

200500800

300600900

intfun(intarray[3][3])

intarray[3][3]={{100,200,300},

{400,500,600},

{700,800,900}};

array[i][j]);

fun(array);

Convertedarray:

{for(j=0;

程序定义了N×

N的二维数组,并在主函数中赋值。

请编写函数fun,函数的功能是:

求出数组周边元素的和。

|01279|

|19745|

a=|23831|

|45682|

|59141|

则返回主程序后s的值应为:

54。

doublefun(intw[][N])

{inta[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,6,8,2,5,9,1,4,1};

doubles;

{printf("

s=fun(a);

*****THERESULT*****\n"

Thesumis:

%lf\n"

第5题、

将M行N列的二维数组中的数据按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。

例如,二维数组中的数据为:

33333333

44444444

55555555

则一维数组中的内容应是:

333333334444444455555555。

voidfun(int(*s)[10],int*b,int*n,intmm,intnn)

{intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;

inta[100]={0},n=0;

Thematrix:

for(i=0;

i<

3;

i++)

{for(j=0;

j<

4;

j++)printf("

%3d"

w[i][j]);

fun(w,a,&

n,3,4);

TheAarray:

n;

i++)printf("

\n\n"

将M行N列的二维数组中的数据按列的顺序依次放到一维数组中。

334455334455334455334455。

voidfun(ints[][10],intb[],int*n,intmm,intnn)

/*以下代码仅供参考*/

inti,j,np=0;

/*np用作b数组下标*/

 

*n=np;

{intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;

inta[100]={0},n=0;

i<

4;

j++)printf("

w[i][j]);

fun(w,a,&

n,3,4);

D类素数(1-3)

将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。

例如,若输入:

17,则应输出:

9和46891012141516。

voidfun(intm,int*k,intxx[])

intm,n,zz[100];

\nPleaseenteranintegernumberbetween10and100:

%d"

n);

fun(n,&

m,zz);

\n\nThereare%dnon-primenumberslessthan%d:

m,n);

for(n=0;

n<

m;

n++)

\n%4d\n"

zz[n]);

第2题、

将大于形参m且紧靠m的k个素数存入xx数组中。

voidfun(intm,intk,intxx[])

inti,j=1,t=m+1;

while(j<

=k)

{

/*以下完成判断素数,并存放到数组xx中*/

intm,xx[100],k,i;

scanf("

%d,%d"

m,&

k);

fun(m,k,xx);

for(i=0;

k;

xx[i]);

计算并输出3到n之间所有素数的平方根之和。

例如,在主函数中从键盘给n输入100后,

输出为:

sum=148.874270。

注意:

要求n的值大于2但不大于100。

{intn;

doublesum;

\n\nInputn:

sum=fun(n);

\n\nsum=%f\n\n"

sum);

E类数学其它(1-14)

函数fun的功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中,合并的方式是:

将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的个位和百位上。

例如,当a=45,b=12。

调用该函数后,c=5241。

voidfun(inta,intb,long*c)

{inta,b;

longc;

Inputa,b:

%d%d"

a,&

b);

fun(a,b,&

c);

Theresultis:

%ld\n"

c);

第2题、

(1)

请编写函数fun,它的功能是:

求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。

#defineM200

intaa[1000];

voidfun(int*n)

{intn,k;

fun(&

k++)

if((k+1)%10==0)printf("

elseprintf("

%5d"

aa[k]);

第2题、

(2)

请编写一个函数fun,它的功能是,求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。

例如,若传送给m的值为50,则程序输出:

711142122283335424449

#defineM100

voidfun(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 书信模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1