程序改错40Word文件下载.docx

上传人:b****6 文档编号:21214616 上传时间:2023-01-28 格式:DOCX 页数:40 大小:24.97KB
下载 相关 举报
程序改错40Word文件下载.docx_第1页
第1页 / 共40页
程序改错40Word文件下载.docx_第2页
第2页 / 共40页
程序改错40Word文件下载.docx_第3页
第3页 / 共40页
程序改错40Word文件下载.docx_第4页
第4页 / 共40页
程序改错40Word文件下载.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

程序改错40Word文件下载.docx

《程序改错40Word文件下载.docx》由会员分享,可在线阅读,更多相关《程序改错40Word文件下载.docx(40页珍藏版)》请在冰豆网上搜索。

程序改错40Word文件下载.docx

}

returns;

题目2:

函数fun的功能是:

计算正整数num的各位上的数字之积。

例如,输入252,则输出应该是20。

请改正程序中的错误,使它能得出正确的结果。

longfun(longnum)

longk;

do

k*=num%10;

num\=10;

}while(num);

returnk;

longn;

\nPleaseenteranumber:

scanf("

%ld"

n);

\n%ld\n"

fun(longn));

题目3:

用"

冒泡法"

对输入的十个字符排序后按从小到大的次序输出.

#defineN10

main()

{inti;

charstr[N];

/***********FOUND***********/

scanf("

%s"

&

str);

sort(str[N]);

for(i=0;

N;

i++)

%c"

str[i]);

printf("

\n"

sort(charstr[N])

{inti,j;

chart;

for(j=1;

for(i=0;

(i<

N-j)||(str[i]!

='

\0'

i++)

if(str[i]<

str[i+1])

{t=str[i];

str[i]=str[i+1];

str[i+1]=t;

题目4:

求出两个非零正整数的最大公约数,并作为函数值返回。

例如,若给num1和num2分别输入49和21,则输出的最大公约数为7。

intfun(inta,intb)

intr,t;

if(a<

b)

t=a;

b=a;

a=t;

r=a%b;

while(r!

=0)

a=b;

b=r;

r=a/b;

returna;

intnum1,num2,a;

%d%d"

num1,&

num2);

a=fun(num1,num2);

themaximumcommondivisoris%d\n\n"

a);

题目5:

实现交换两个整数的值。

例如给a和b分别输入3和6,输出为a=6b=3

请改正程序中的4个错误,使它能得出正确的结果。

voidfun(inta,b)

{

intt;

b=t;

inta,b;

entera,b:

a,&

b);

fun(&

a=%db=%d\n"

a,b);

题目6:

在一个一维整型数组中找出其中最大的数及其下标。

程序中共有4条错误语句,请改正错误。

floatfun(int*a,int*b,intn)

int*c,max=*a;

for(c=a+1;

c<

a+n;

c++)

if(*c>

max)

max=*c;

b=c-a;

returnmax;

inta[N],i,max,p=0;

pleaseenter10integers:

get("

a[i]);

m=fun(a,p,N);

max=%d,position=%d"

max,p);

题目7:

用冒泡法对10个整数从小到大排序。

voidsort(intx,intn)

inti,j,k,t;

n-1;

for(j=0;

n-i;

if(x[i]>

x[i+1])

{t=x[j];

x[j]=x[j+1];

x[j+1]=t;

inti,n,a[100];

pleaseinputthelengthofthearray:

n);

n;

a[i]);

sort(n,a);

outputthesortedarray:

=n-1;

%5d"

题目8:

fun函数的功能是:

实现3行3列矩阵的转置,即行列互换。

请改正程序中的错误,使它能得出正确的结果。

fun(inta[3][3],intm,intn)

m;

a[i][j]);

%4d"

}

a[i][j]=t;

a[i][j]=a[j][i];

t=a[j][i];

main()

intb[3][3];

fun(b,3,3);

题目9:

下面程序的功能是:

从键盘输入十个学生的成绩,统计最高分,最低分和平均分。

max代表最高分,min代表最低分,avg代表平均分。

{inti;

floata[8],min,max,avg;

input10score:

=9;

inputascoreofstudent:

%f"

max=min=avg=a[1];

for(i=1;

if(min<

a[i])

min=a[i];

if(max<

a[i])

max=a[i];

avg=avg+a[i];

avg=avg/10;

max:

%f\nmin:

%f\navg:

%f\n"

max,min,avg);

题目10:

下面程序的功能是利用二维数组输出如图所示的图形。

*******

*****

***

*

conio.h>

#defineN=7

chara[N][N];

inti,j,z;

clrscr();

a[i][j]=;

z=0;

(N+1)/2;

{

for(j=z;

N-z;

a[i][j]='

*'

;

z=z+1;

for(i=(N+1)/2;

{z=z-1;

题目11:

下列给定程序中,函数fun的功能是:

求1到10的阶乘的和。

主函数和fun函数中,各有两个错误,请改正,使其能得到正确的运行结果。

inti;

floatt,s=0;

floatfac(intn);

for(i=1;

10;

s=fac(i);

s);

floatfac(intn)

inty=1;

for(i=1;

y=y*i;

return;

题目12:

将一个字符串中第m个字符开始的全部字符复制成为另一个字符串。

程序中共有4条错误语句,请改正错误。

#include<

voidstrcopy(char*str1,char*str2,intm)

charp1,p2;

inti,j;

=str1+m;

p2=str2;

if(*p1);

*p2++=*p1++;

*p2='

inti,m;

char*p1,*p2,str1[80],str2[80];

p1=str1;

gets(p1);

m);

strcat(str1[0],str2[0],m);

puts(p1);

puts(p2);

题目13:

给定n个实数,输出平均值,并统计在平均值以下(含平均值)的实数个数。

例如,n=6时,输入23.5,45.67,12.1,6.4,58.9,98.4所得平均值为40.828335,在平均值以下的实数个数应为3。

intfun(floatx[],intn)

intj,c=0;

floatj=0;

xa+=x[j];

xa=xa/n;

ave=%f\n"

xa);

if(x[j]<

=xa)c++;

returnxa;

floatx[]={23.5,45.67,12.1,6.4,58.9,98.4};

%d\n"

fun(x,6));

 

答案:

1).floatxa=0;

或floatxa=0.0;

2).for(j=0;

j++)或for(j=0;

n>

j;

n-1>

=j;

3).for(j=0;

4).returnc;

或return(c);

题目14:

找出大于m的最小素数,并将其作为函数值返回。

intfun(intm)

inti,k;

for(i=m+1;

for(k=1;

k<

i;

k++)

if(i%k!

=0)break;

if(k<

i)

1).for(k=2;

k++)或for(k=2;

i>

k;

2).if(★i%k★==★0★)break;

3).if(i<

=k)或if(k>

=i)或if(★k★==★i★)

4).returni;

或return(i);

题目15:

在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。

计算数组元素中值为正数的平均值(不包括0)。

例如,数组中元素的值依次为39,-47,21,2,-8,15,0,则程序的运行结果为19.250000。

doublefun(ints[])

intsum=0.0;

intc=0,i=0;

while(s[i]=0)

if(s[i]>

0)

{sum+=s[i];

c++;

i++;

sum\=c;

returnc;

intx[1000];

inti=0;

{scanf("

x[i]);

while(x[i++]!

=0);

fun(x));

题目16:

实现两个字符串的连接。

例如:

输入dfdfqe和12345时,则输出dfdfqe12345.

chars1[80],s2[80];

voidscat(chars1[],chars2[]);

gets(s1);

gets(s2);

scat(s1,s2);

puts(s1);

voidscat(chars1[],chars2[])

inti=0,j=0;

while(s1[i]=='

)i++;

while(s2[j]=='

s2[j]=s1[i];

j++;

s2[j]='

题目17:

根据整型形参m的值,计算如下公式的值。

t=1-——-——-...-——

2x23x3mxm

例如,若m=5,则应输出:

0.536389

doublefun(intm)

doubley=1.0;

for(i=2;

i--)

y-=1/(i*i);

returnm;

intn=5;

\ntheresultis%lf\n"

题目18:

编写函数fun求20以内所有5的倍数之积。

#defineN20

#include"

stdio.h"

{intsum;

sum=fun(5);

%d以内所有%d的倍数之积为:

%d\n"

N,5,sum);

getch();

intfun(intm)

ints=0,i;

if(i%m=0)

s=*i;

题目19:

编写函数fun其功能是:

输入两个实数,按代数值由小到大输出它们,并在fun()

函数中输出。

(输出的数据都保留2位小数)

{fun();

fun(floata,floatb)

floatt

%f%f"

if(a<

{t=a;

a=b;

b=t;

%5.2f,%5.2f\n"

题目20:

编写函数fun计算下列分段函数的值:

x*20x<

0且x≠-3

f(x)=sin(x)0≤x<

10且x≠2及x≠3

x*x+x-1其它

#include"

math.h"

floatfun(floatx)

floaty

if(x<

0||x!

=-3.0)

y=x*20;

elseif(x>

=0&

&

x<

10.0&

x!

=2.0&

=3.0)

y=sin(x);

elsey=x*x+x-1;

returnx;

{floatx,f;

Inputx="

x);

f=fun(x);

x=%f,f(x)=%f\n"

x,f);

题目21:

/**********FOUND

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

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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