文档库 最新最全的文档下载
当前位置:文档库 › 二级C改错填空编程 2

二级C改错填空编程 2

二级C改错填空编程 2
二级C改错填空编程 2

二、改错题

Cmody191.c

修改程序,用以计算1~100之间所有的偶数之和。#include

#include

void main( )

{

int i=1;

/**/ int sum=2 /**/;

while(i++,i<=100)

{ if(/**/ i==(i/2)*2 /**/)

continue;

sum+=i;

}

printf("Sum is %d\n",sum);

getch();

}

Cmody192.c

修改程序,将二维数组表示的方阵左下半三角(不含对角线)各元素加4,右上半三角(含对角线)各元素乘2。

#include

#define N 5

void main()

{

int a[N][N],i,j;

for(i=0;i

for(j=0;j

a[i][j]=i*5+j+11;

printf("\nArray a is:\n");

for(i=0;i

{for(j=0;j

printf("%3d ",a[i][j]);

printf("\n");

}

for(i=0;i

/**/ for(j=0;j<=i;j++)/**/

a[i][j]+=4;

for(i=0;i

/**/ for(j=i+1 ;j

a[i][j]*=2;

printf("\nArray a is turned:\n");

for(i=0;i

{for(j=0;j

printf("%3d ",a[i][j]);

printf("\n");

}

getch();

}

Cmody201.c

修改程序,计算满足以下条件的整数n的最大值。22+42+62+82+……+n2<1000

#include

#include

void main()

{

int n=0, sum=0;

/**/ while(sum<1000); /**/

{

/**/ sum+=n^2 /**/;

n++,n++;

}

printf("n=%d\n",n-2);

getch();

}

Cmody202.c

修改程序,实现从键盘输入一串字符,并在字符串中从第m个字符串开始截取n个字符。

例如:输入的字符串为”welcome”,m=2, n=3, 则截取的字串为”elc”

#include

#include

void main()

{

char str[100],sub[100];

int m,n,len,i;

printf("Enter string:");

gets(str);

printf("\nEnter m n:");

scanf("%d%d",&m,&n);

len=strlen(str);

if( m-1+n>len )

printf("Can't run with %d and %d!\n",m,n); else

{ i=0;

/**/ while(i<=n) /**/

{

/**/ sub[i]=str[m+i]; /**/

i++;

}

/**/ sub[i]='\n'; /**/

printf("sub string is:%s\n",sub);

}

getch();

}

Cmody211.c

修改程序,实现输入一整型二维数组,计算其中数组元素的最大值与最小值的差。

#include

#include

#define ROW 3

#define COL 4

void main()

{

int a[ROW][COL],max,min,i,j,result;

clrscr();

printf("Enter array a:\n");

for(i=0;i

for(j=0;j

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

/**/ max=min=0; /**/

for(i=0;i

for(j=0;j

{if(/**/ min

min=a[i][j];

if(a[i][j]>max)

/**/ max=a[i][j] /**/

}

printf("Result= %d\n",max-min);

getch();

}

Cmody212.c

修改程序cmody212.c,实现从键盘输入一串字符和一个字串,输出该子串在原字符串中出现的次数。#include

#include

void main()

{

int i,j,k,count;

char s1[100],s2[100];

printf("Enter main String:");

gets(s1);

printf("Enter Sub String:");

gets(s2);

count=0;

/**/ for(i=0;*s1!='\0';i++) /**/

{

/**/ for(k=0; (s1[j]==s2[k])&&(s1[j]!='\0'); j++,k++ ); /**/

if(s2[k]=='\0') count++;

}

printf("\nCount=%d\n",count);

getch();

}

Cmody221.c

修改程序,输出存储在结构体数组中8位学生成绩的平均分以及最高学生的姓名

#include

/**/ structure student /**/

{

char name[10];

float score;

};

void main( )

{

struct student stu[8]={{"Mary",76},{"John",85}, {"Tom",81},{"Susa",87},{"Wilu",79},{"Yili",65},{"S onmu",73},{"Lichar",70}};

int i=0,mrk;

float total=0,aver,max;

max=stu[0].score;

mrk=0;

while(i<8)

{

/**/ total=total+stu[i]; /**/

if(stu[i].score>max)

{max=stu[i].score;

mrk=i;

}

/**/ i++ /**/

}

aver=total/8;

printf("\naver=%.2f \n Best is %s\n",aver,stu[mrk].name);

getch();

}

Cmody222.c

修改程序,完成其中n个字符串的升序排列

#include

#include

#define ROW 5

#define COL 30

void fun(char s[][COL],int n)

{

char temp[COL];

int i,j;

for(i=0; i

/**/ for (j=i+1; j

if(strcmp(s[i],s[j])>0)

{

strcpy(temp,s[i]);

strcpy(s[i],s[j]);

strcpy(s[j],temp);

}

}

void main()

{

int i;

char

str[][COL]={"DEF","BAEELCS","FHIAME","CBAD F","APMAE"};

/**/ fun(str,COL); /**/

clrscr();

for(i=0;i

printf("%s\n",str[i]);

getch();

}

Cmody231.c

修改程序cmody231.c,实现将输入的十进制正整数转换成十六进制数,且用字符串存放该十六进制数#include

#include

#include

void main()

{

int x,b,i,j;

char s[5];

printf("Input a number(Dec): ");

scanf("%d",&x);

/**/ i=1; /**/

while(x>0)

{b=x%16;

if(b>9)

s[i]=b-10+'A';

else

/**/ s[i]=b /**/;

x=x/16;

i++;

}

printf("\nHex number is: ");

for(j=i-1;j>=0;j--)

putchar(/**/ s[i] /**/);

getch();

}

Cmody232.c

修改程序cmody232.c,输出下列9行数字金字塔1

121

12321

1234321

………………………

12345678987654321

#include

void main()

{

int i,j,k;

for(k=1;k<=9;k++)

{

/**/ for(i=0;i<=k;i++) /**/

printf(" ");

for(i=1;i<=k;i++)

printf("%d",i);

/**/ for(j=k-1;j>1;j--) /**/

printf("%d",j);

printf("\n");

}

getch( );

}

三、填空题

Ccon191.c

程序ccon191.c,从键盘输入3个实型值,若它们能构成一个三角形(即任意两边之和大于第三边),则根据以下公式求该三角形面积;否则,提示相应信息。

#include

#include

void main()

{

float a,b,c,d,area;

printf("Please input 3 numbers:\n");

scanf("%f,%f,%f",&a,&b,&c);

if( a+b>c /**/ /**/)

{d = (a+b+c)/2;

area = /**/ /**/;

printf("area is %.2f\n",area);

}

else

printf("Not Triangle!\n");

getch();

}

Ccon192.c

程序ccon192.c,计算:已知大货车限载8吨、中型货车限载3吨、微型货车限载1吨,需50辆车运输100吨货物时,应配备的大、中、微型车分别多少辆?共有多少种解决方案?

#include

#include

int /**/ /**/( )

{

int big,median,small,n=0;

printf(" big median small \n"); for(big=0;big<=13;/**/ /**/)

for(median=0;median<=33;median++)

{

small=100-8*big-3*median;

if(/**/ /**/==50)

{

n++;

printf("%d-->%2d %2d %2d\n",

n,big,median,small);

}

}

return n;

}

void main()

{

int num;

num = fun();

printf("\n There are %d solutions.\n",num);

getch();

}

Ccon201.c

程序ccon201.c,按照以下袋装情况求一堆苹果的总数,总数在100~300之间。若按每袋装8个苹果则多出5个,若按每袋装7个苹果,则多出4个,若按每袋装5个苹果,则多出2个。

#include

void main()

{

int n;

for( n=300; /**/ /**/;n-- )

{if( n%8 == 5)

if( !((n-4)%7) /**/ /**/)

printf("n=%d\n", n);

}

getch();

}

Ccon202.c

程序ccon202.c中的swap函数,通过指针变量实现两个变量值的交换。

#include

void swap(/**/ /**/)

{ int sum;

sum = *p1+*p2;

*p1 =/**/ /**/;

*p2 = sum-*p1;

}

void main()

{

2

) )(

)(

(

c

b

a

d

c

d

b

d

a

d

d

area

+

+

=

--

-

=

其中:

int x,y;

printf("please input 2 numbers:\n");

scanf("%d,%d",&x,&y);

printf("\nOriginal: x=%d y=%d\n",x,y);

swap(&x,&y);

printf("\nNow: x=%d y=%d\n",x,y);

getch();

}

Ccon211.c

程序ccon211.c,按每行最多5个数方式输出100~400之间能同时被7和4整除的所有数及它们之和。

#include

void main()

{

int i,n;

int sum=0;

/**/ /**/

for(i=101;i<=399;i++)

{

if(/**/ /**/ && !(i%4) )

{printf("%d ",i);

sum+=/**/ /**/;

n++;

if(n%5==0)

printf("\n");

}

}

printf("\n sum=%d\n",sum);

getch();

}

Ccon212.c

程序ccon212.c中的cmob函数用以输出等式a*b*c+a*c*c=560的所有a,b,c的组合(其中a,b,c 只取1~9之间的一位整数)。如a=7, b=2, c=8时,7*2*8+7*8*8=560

#include

void comb(/**/ /**/)

{int a,b,c;

for( a=1;a<10;a++ )

for( b=1;b<10;b++ )

for( c=1;c<10;c++ )

{

if(/**/ /**/ ==m)

printf("a=%d,b=%d,c=%d\n",a,b,c);

}

}

void main()

{

int result=560;

comb(result);

getch();

}

Ccon221.c

程序ccon221.c,输出如下图形

% % % % % % %

& & & & & &

% % % % %

& & & &

% % %

& &

%

#include

#include

void main()

{

int row,col;

for (row=1;row<=7;row++)

{

printf("\t");

for(col=1;col<=/**/ /**/ ;col++)

if(row%2)

printf("%c",/**/ /**/);

else

printf("%c",/**/ /**/);

printf("\n");

}

getch();

}

Ccon222.c

程序ccon222.c中的pnt函数,根据参数n(2≤n≤10),输出类似如下所示的方针(n=5).

1 2 3 4 5

10 9 8 7 6

11 12 13 14 15

20 19 18 17 16

21 22 23 24 25

#include #include #define M 10

void pnt(int a[M][M],int n) {int i,/**/ /**/; for(i=0;i

a[i][j]=/**/ /**/; else

a[i][j]=i*n+n-j; }

printf("array a(n=%d) is:\n",n); for(i=0;i

printf("%3d",a[i][j]); printf("\n"); } }

void main() {

int a[M][M]; int n;

printf("Input n(2<=n And n<=10):"); scanf("%d",&n); pnt(/**/ /**/,n); getch(); }

Ccon231.c

程序ccon231.c, 计算以下分数序列的前18项之和

#include void main() {

int i;

float sum,a=2,b=1,t; /**/ /**/; for (i=1;i<=18;i++) {

sum+=/**/ /**/; t=a;

a=a+b;

b=/**/ /**/; }

printf("sum=%f\n",sum); getch(); }

Ccon232.c

程序ccon232.c 中的inv 函数,通过指针变量将字符串str 的内容”asdfjk ”,调用inv 函数后,变成:”kjfdsa ”。 #include #include void inv(char *str) {int i,j,k;

j=/**/ /**/; for(i=0;i

*(str+i)=*(str+j);

*(str+j)=/**/ /**/; } }

void main( ) {

char str[]="asdfjk";

printf("\n Original is: %s\n",str); inv(str);

printf("\n Now is: %s\n",str); getch(); }

四、编程题

cprog191.c

打开程序cprog191.c,完成其中的fun 函数:根据输入的汇款数额,求应交的汇费。设应交汇费的计算公式如下:

,8

13

,58,35,23,12???

?

??

?

>≤<≤<≤-=50005000200020005005004444)2000(008.001.05)(x x x x x x fun

#include #include double fun(float x) { /**/

/**/ }

void main() {

float x; double y; clrscr();

printf("Please input a number:\n"); scanf("%f",&x); y = fun(x);

printf("f(%.2f)=%.2f\n",x,y); getch(); }

cprog192.c

打开程序cprog192.c ,完成其中的fun 函数:对4×4矩阵从顶行开始各行按从左到右顺序查找,找出各行中0元素之后的所有负数,并按元素出现的先后顺序存放到数组b 中,并返回这些负数之和。如矩阵为:

则调用函数fun( )后,数组b 各元素依次为-3,-1,-4,-3,-12,-13,并返回-36. #include #include #define ROW 4 #define COL 4 #define LEN 12

int fun(int a[][COL],int b[]) { /**/

/**/ }

void main( ) {

int arra[ROW][COL]={{-2,0,-3,-1},{-8,2,0,-4}, {0,3,-3,-12},{21,0,-13,3}}; int arrb[LEN],i,result; for(i=0;i

result=fun(arra,arrb); printf("array arrb is:\n"); for(i=0;i

if(arrb[i]==0) printf(" "); else printf("%4d",arrb[i]); printf("\nresult=%d",result); getch( ); }

cprog201.c

打开cprog201.c ,完成其中的函数fun ,该函数的数学表达式是

#include #include double fun(float x) { /**/

/**/ }

void main( )

?

?

???

?

??????-------313021

12330402813

2??

?

?

?≤+>-=-10

)2sin()3(10)

1/(1)(x x x x e x fun x

{

float x; double y;

printf("Please input a number:\n"); scanf("%f",&x); y = fun(x);

printf("f(%.3f)=%.3f\n",x,y); getch(); }

cprog202.c

打开程序cprog202.c ,完成其中的fun 函数: 函数fun(double x, int n),用以下公式近似计算cos(x)的值:

#include void main() {

double x; int n;

double fun(double x,int n); printf("Please enter x,n:"); scanf("%lf%d",&x,&n);

printf("cos(%lf)=%lf\n",x,fun(x,n)); getch(); }

double fun(double x,int n) {

/**/

/**/ }

cprog211.c

打开cprog211.c ,完成其中的函数fun ,该函数的数学表达式是

#include #include double fun(float x) { /**/

/**/ }

void main( ) {

float x; double y; clrscr();

printf("Please input a number:\n"); scanf("%f",&x); y = fun(x);

printf("f(%.2f)=%.2f\n",x,y); getch( ); }

cprog212.c

打开程序cprog212.c ,完成其中的fun 函数:对两个字符串中小写英文字母的个数进行比较,并返回比较的结果。(注:第1个字符串比第2个字符串的小写英文字母个数多,则返回正数,相等返回0,个数少则返回负数)

例如:字符串str1为“abc123”,字符串str2为”abcd ”,则函数fun 的返回值应小于0。 #include

int fun(char *str1, char *str2) { /**/

/**/ }

??

?

??<<≤-≥=1

1011

210)3ln()(x x x x x x x fun )!

2()1(!6!4!21)cos(2642n x x x x x n

n -++-+-=

void main( )

{

int rela;

char *str1,*str2;

clrscr();

printf("Please input string NO.1:");

gets(str1);

printf("Please input string NO.2:");

gets(str2);

rela=fun(str1,str2);

if(rela>0)

printf("Numbers of Lower char in %s > Numbers of Lower char in %s",str1,str2);

if(rela==0)

printf("Numbers of Lower char in %s = Numbers of Lower char in %s",str1,str2);

if(rela<0)

printf("Numbers of Lower char in %s < Numbers of Lower char in %s",str1,str2);

getch();

}

cprog221.c

打开程序cporg221.c,完成其中的fun函数:根据输入的x和y的值,按如下公式计算:

将计算结果的整数部分存入数组元素arr[0],并将该计算结果的小数部分的前两位存入arr[1]中。

#include

#include

void fun(int arr[],double x,int y)

{

/**/

/**/

}

void main()

{

int y;

double x;

int arra[2];

printf("Please enter x(1

scanf("%lf%d",&x,&y);

if((x>1.0 &&x<2.0)&&(y>0 && y<=6))

{

fun(arra,x,y);

printf("\npart1=%d,part2=%d",arra[0],arra[1]);

}

else

printf("x or y is out of range!");

getch();

}

cprog222.c

打开程序cprog222.c,完成其中的fun函数:将一个升序数组a和一个降序数组b中的所有元素按降序存入数组c中。

例如:数组a为{5,10,15,27,46},数组b为{50,45,42,29,15,8,5,2},则数组c就应为{50,46,45,42,29,27,15,15,10,8,5,5,2}。#include

#define N 5

#define M 8

void fun(int a[],int b[],int c[])

{

/**/

/**/

}

void main()

{

int

arra[N]={5,10,15,27,46},arrb[M]={50,45,42,29,15,8,5 ,2};

int arrc[N+M],k;

fun(arra,arrb,arrc);

printf("array arra is:");

for(k=0;k

printf("%d ",arra[k]);

printf("\narray arrb is:");

6

0,0.2

0.1

)2

(

)

,

(≤

<

<

<

+

=y

x

x

y

y

x

fun y

for(k=0;k

printf("%d ",arrb[k]); printf("\nresult arrc is:"); for(k=0;k

cprog231.c

打开程序cprog231.c ,完成其中的函数fun ,该函数的递归公式是:

#include #include void main() {

double x; int n;

double fun(double x,int n); printf("Please enter x,n:\n"); scanf("%lf%d",&x,&n); printf("fun=%lf\n",fun(x,n)); getch(); }

double fun(double x,int n) { /**/

/**/ }

cprog232.c

打开程序cprog232.c,完成其中的fun 函数:返回一维数组中的次大数(即仅小于最大数的数),设数组a 中没有重复的元素。

例如:数组元素为{45,58,33,24,40,20,30,28,31},函数fun 的返回值为45. #include #define ROW 9 int fun(int a[ ]) {

/**/

/**/ }

void main() {

int arra[ROW]={45,58,33,24,40,20,30,28,31}; int max_pre,i;

max_pre=fun(arra); printf("array arra is:"); for(i=0;i

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

printf("\nmax_pre is %d",max_pre); getch(); }

??

?

>-+==1

)1,()1(1),(n n x f x n x n x f

参考答案

二、改错题

cmody191.c

/**/ int sum=2 /**/;→int sum=0;

/**/ int sum=2 /**/;→if(i!=(i/2)*2)

cmody192.c

/**/ for(j=0;j<=i;j++)/**/→for(j=0; j

/**/ for(j=i+1 ;j

cmody201.c

/**/ while(sum<1000); /**/→while(sum<1000)

/**/ sum+=n^2 /**/;/**/ →sum+=n*n

cmody202.c

/**/ while(i<=n) /**/→while(i

/**/ sub[i]=str[m+i]; /**/→sub[i]=str[m-1+i];

/**/ sub[i]='\n'; /**/→sub[i]= '\0'

cmody211.c

/**/ max=min=0; /**/→max=min=a[0][0];

/**/ mina[i][j]

/**/ max=a[i][j] /**/→max=a[i][j];

cmody212.c

/**/ for(i=0;*s1!='\0';i++) /**/

→for(i=0;*(s1+i)!=’\0’;i++)

/**/ for(k=0; (s1[j]==s2[k])&&(s1[j]!='\0'); j++,k++ ); /**/→

for(k=0,j=i; (s1[j]==s2[k]&&(s2[k]!=’\0’); j++, k++);

cmody221.c

/**/ structure st udent /**/→struct student

/**/ total=total+stu[i]; /**/→

total=total+stu[i].score

/**/ i++ /**/→i++;

cmody222.c

/**/ for (j=i+1; j

Cmody231.c

/**/ i=1; /**/→i=0;

/**/ s[i]=b /**/→s[i]=b+’0’;Cmody232.c

/**/ for(i=0;i<=k;i++) /**/→for(i=0; i<9-k; i++) /**/ for(j=k-1;j>1;j--) /**/→for (j=k-1; j>=1; j--)

三、填空题

Ccon191.c

if( a+b>c /**/&&b+c>a&&c+a>b/**/)

area = /**/sqrt(d*(d-a)*(d-b)*(d-c)) /**/

Ccon192.c

int /**/ fun /**/( )

for(big=0;big<=13;/**/big++ /**/)

if(/**/ big+median+small /**/==50)

Ccon201.c

for( n=300; /**/ n>=100 /**/;n-- )

if( !((n-4)%7) /**/ &&(n-2)%5= =0 /**/)

Ccon202.c

void swap(/**/int *p1, int *p2 /**/) *p1 =/**/ *p2 /**/;

Ccon211.c

/**/ n=0 /**/

if(/**/!(i%7) /**/ && !(i%4) )

sum+=/**/i /**/;

Ccon212.c

void comb(/**/ int m /**/)

if(/**/ a*b*c+a*c*c /**/ ==m)

Ccon221.c

for(col=1;col<=/**/ row /**/ ;col++) printf("%c",/**/ ‘%’ /**/);

print f("%c",/**/ ‘&’ /**/);

Ccon222.c

int i,/**/ j /**/;

a[i][j]=/**/i*n+j+1 /**/;

pnt(/**/ a /**/,n);

Ccon231.c

/**/sum=0 /**/;

sum+=/**/ a/b /**/;

b=/**/ t /**/;

Ccon232.c

j=/**/strlen(str)-1 /**/; *(str+j)=/**/ k /**/;

四、编程题

cprog191.c

double fun(float x)

{

/**/ double y;

if(x<=500) y=5;

else if(x<=2000) y=0.01;

else if(x<=5000) y=0.008*(x-2000); else y=44;

return y;

/**/

}

cprog192.c

int fun(int a[][COL],int b[])

{

/**/

int i, j, k, t=0, sum=0;

for(i=0; i

for(j=0; j

if(a[i][j]==0)

{ for(k=j+1; k

if(a[i][k]<0)

{ b[t]=a[i][k]; sum+=b[t]; t++;}

}

return sum;

/**/

}

cprog201.c

double fun(float x)

{

/**/

double y;

if(x>10) y=1/(1-exp(-x));

else y=(x+3)*sin(2*x);

return y;

/**/

}

cprog202.c

double fun(double x,int n)

{

/**/

int i; double t=1, sum=0;

for(i=1; i<=n; i+=)

{ sum+=t;

t=t*(-x)*x/(2*i)/(2*i-1);

}

return sum;

/**/

}

cprog211.c

#include

#include

double fun(float x)

{

/**/

double y;

if(x>=10) y=log(3*x);

else if(x>=1) y=sqrt(2*x-1); else y=fabs(x);

return y;

/**/}

cprog212.c

#include

int fun(char *str1, char *str2) {

/**/ int n=0, m=0;

char *p1, *p2;

for(p1=str1; *p1!=’\0’; p1++)

if(*p1>=’a’&&*p1<=’z’) n++; for(p2=st r2; *p2!=’\0’; p2++)

if(*p2>=’a’&&*p2<=’z’) m++; return(n-m);

/**/

}

#include

#include

void fun(int arr[],double x,int y) {

/**/

double z;

z=(y+2)*pow(x,y)

arr[0]=(int)z;

arr[1]=(int)(z*100)%100;

/**/

}

cprog222.c

void fun(int a[],int b[],int c[])

{

/**/int i, j, t;

for(i=0; i

for(j=0; j

for(i=0; i

for(j=0; j

if(c[j]

{t=c[j]; c[j]=c[j+1]; c[j+1]=t;}

/**/

}

cprog231.c

double fun(double x,int n)

{

/**/

double y;

if(n==1) y=x;

else if(n>1) y=(x+1)*fun(x, n-1);

return y;

/**/

}

cprog232.c

#include

#define ROW 9

int fun(int a[ ])

{/**/(方法一)(假设法)

int i, j, max1, max2;

max1=a[0]>a[1]?a[0]:a[1];

max2=a[0]

for(i=2; i

if(a[i]>max1) { max2=max1; max1=a[i];} else if(a[i]>max2) a[i]=max2;

}

return max2;

}

/**/

(方法二) (先排序,后返回次最大值)/**/

int i, j, t;

for(i=0; i

for(j=O; j

if(a[j]

{t=a[j]; a[j]=a[j+1]; a[j+1]=t;}

return a[1];

/**/ (方法三)

int i, j, k, t;

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

{k=i;

for(j=i+1; j

if(a[j]>a[k]) k=j;

if(k!=i) {t=a[k]; a[k]=a[i]; a[i]=t;} }

return a[1];

/**/

C语言改错题库

C语言改错题库 目录 C语言改错题库 (1) 从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。 (3) 2.求一维数组a中的值为偶数的元素之和。 (3) 3.求二维数组a中的最大值。 (4) 5.猴子第一天摘下若干桃子 (5) 6. 将长整型数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。 (5) 7.求出a所指数组中最大数(规定最大数不在a[0]中),最大值和a[0]中的数对调。 (6) 8.输出200~300之间的所有素数,要求每行输出8个素数。 (6) 9.打印九九乘法表 (6) 10.输出100~200之间既不能被3整除也不能被7整除的整数并统计这些整数的个数,要求每行输出8个数。 (7) 10.输出100~200之间既不能被3整除也不能被7整除的整数并统计这些整数的个数,要求每行输出8个数。 (7) 11.打印输出以下图形 (8) 12.求:1!+2!+3!+ ...... + 20! (8) 13.输入一个百分制成绩,打印出五级记分成绩。 (8) 14.求一维数组a中值为奇数的元素的平均值。 (9) 15.将[m,n]之间的所有素数存放到一维数组a中,并输出。 (9) 16.求一维数组a中所有元素的平均值。 (10) 17.将[2,100]之间的所有素数存放到一维数组a中,并输出这些素数。 (10) 18.求一维数组a中所有元素的平均值,结果保留两位小数。 (11) 19. 当M为5时,如果从键盘上输入的5个数 (11) 20. 在第一个循环中给a数组的前10个数组元素 (12) 21. 把数组a(大小为M)中前M-1个元素中的最大值放入a的最后一个元素中。 (12) 22.求排列组合的值 (12) 23. 计算正整数num的各位上的数字之和。 (13) 24.从键盘上输入一个正整数n,计算并输出n的阶乘。 (13) 25.从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字符串转换成一个十进制数. 例如:从键盘上输入2345, (14) 26. 求一维数组a中素数的个数。 (14) 27.输出Fabonacci数列:1,1,2,3,5,8,......的前20项的值,要求每行输出5个数。 .. (15) 28.求一维数组a中非素数之和。 (15) 29.求两个正整数m,n之间的非素数之和(包含m和n)。 (16) 30.将无符号八进制数字构成的字符串转换为十进制整数。 (16) 31.计算1到M(M为100)之间的奇数之和及偶数之和。 (16) 32.实现在N行M列的二维数组中,找出每一行上的最大值,且原数组值不变。 (17)

C语言程序改错2

1、以下程序的功能是求如下表达式: 1 1 1 S = 1 + ——+ ———+ ...... + ——————— 1+2 1+2+3 1+2+3+......+n 『答案』:1 scanf("%d",&n); 2 float fun(int n) 3 for(i=1;i<=n;i++) 4 s+=1.0/t 或s= s + 1.0 /t; 2、题目:函数fun的功能是:根据整型形参m的值,计算如下公式的值。 1 1 1 t = 1- ——- ——- ... - —— 2x2 3x3 mxm 例如,若m=5,则应输出:0.536389 『答案』:1 for(i=2;i<=m;i++)或for(i=2;i 2 float s=0,t=1,p=1; 3 while(fabs(t)>1e-4)或while(fabs(t)>0.0001) 4 printf("pi=%f\n", s * 4 ); 4、功能:计算正整数num的各位上的数字之积。例如,输入252,则输出应该是20。『答案』:1 long k=1; 或long int k=1; 2 num/=10; 或num=num/10; 3 scanf("%ld",&n); 4 printf("\n%ld\n",fun(n)); 5、功能:(与上题略有不同)计算正整数num的各位数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。 『答案』:1 {long k=1; 2 num/=10; 或num=num/10; 3 } while(num) ; 或}while(num!=0); 或}while(num>0); 6、题目:判断m是否为素数,若是返回1,否则返回0。 『答案』:1 int fun( int m) 或fun( int m) 2 for(i=2;isqrt(i)) 4 return i; 或return (i);

C语言常见改错

C语言改错题常见错误归纳 一、书写错误 1:mian→(main)见例一 2:print→(printf) 3:include→(#include) 二、类型定义错误 1:在主函数中,要注意计算时用到的与定义是否一致。(int是十进制整数,float是实数,double是双精度、只是较float更精确)见例四 2:在子函数中注意大括号外定义类型与里面的要相同。见例三 三、格式错误 1:常见格式int→%d,long→%ld,float→%f,double→%lf 2:所需输出结果与已定义类型不同,可以利用强制转换符。如定义sum为int,但要输出实数float,可以(float)sum 。见例一 四、固定语句格式错误 1:for(;;); 2:while(); 3:switch(){ };(for,while,switch后面无分号)见例五 4:do{ }while();(do{ }while结构后面有分号)

五、赋值错误 1:未赋初值。如求和时一般sum=0,求阶乘时一般n=1。见例一 2:注意题中赋值是否正确。如究竟i是赋1还是0。见例五 六、大小关系错误 1:大于号和小于号与所求程序不符。见例一 2:是否携带等号<=,>= 七、返回值错误 1:在子函数中,return (i)i 是要返回到主函数的值。 2:在子函数中,return(1)返回主函数是执行后yes 的结果,return(0) 返回执行后no的结果。见例二 3:一般在主函数中很少涉及返回值的错误 八、其他错误 1、参数未定义:程序中出现的任何变量i或常量j=1,都要定义他们的类型。 2、等号与赋值弄混好:==为等号,=为赋值号。见例二 3、与scanf搭配未加地址符, 也不可加\n换行符在d 后面,scanf(“%d”,&i); 4、行末未加分号,每行后面需要分号。 5、子函数中形参为定义好。见例六 经典例题

C语言程序改错题

第12次上机程序改错第1题 【程序改错】 -------------------------------------------------------- 功能:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积。 例如:输入圆的半径值:19.527 输出为:s = 598.950017。 ------------------------------------------------------*/ #include #include /**********FOUND**********/ double fun( r) double fun(double r) { double s; /**********FOUND**********/ s=1/2*3.14159* r * r; s=1.0/2*3.14159*r*r; /**********FOUND**********/ return r; return s; } main() { float x;

printf ( "Enter x: "); scanf ( "%f", &x ); printf (" s = %f\n ", fun ( x ) ); } 第2题【程序改错】 功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。 例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为:“EDCBAABCDE”。 ------------------------------------------------------*/ #include #include #include void fun (char *s, char *t) { /**********FOUND**********/ int i; int sl,i; sl = strlen(s); for (i=0; i

齐齐哈尔大学C语言题库 程序改错(部分)

1.【程序改错】 题目:在一个一维整型数组中找出其中最大的数及其下标。 程序中共有4条错误语句,请改正错误。 #define N 10 /**********FOUND**********/ float fun(int *a,int *b,int n) int fun(int *a,int *b,int n) { int *c,max=*a; for(c=a+1;cmax) { max=*c; /**********FOUND**********/ b=c-a;} *b=c-a;} return max; } main() { int a[N],i,max,p=0; printf("please enter 10 integers:\n"); for(i=0;i

C语言程序改错题

第1题【程序改错】 功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。 例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为:“EDCBAABCDE”。 ------------------------------------------------------*/ #include #include #include void fun (char *s, char *t) { /**********FOUND**********/ int i; sl = strlen(s); for (i=0; i

C语言改错题

题号:1 题目:在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列 /************FOUND***********/ a[i]=a[i-1]; /************FOUND***********/ exit;} 正确答案:a[i+1]=a[i]; break;} 题号:2 题目:以下程序的功能是求如下表达式: /************FOUND***********/ print("%d",n) ; /************FOUND***********/ fun(int n) 正确答案:scanf(“%d”,&n); float fun(int n) 题号:3 题目:函数fun的功能是:根据整型形参m的值,计算如下公式的值。 /**********FOUND**********/ y-=1/(i*i); /**********FOUND**********/ return m; 正确答案:y-=1.0/(i*i); return c; 题号:4 题目:以下程序把一由小到大的有序数列放在a[1]到a[n]中,a[0]用做工作单元,程序把读入的x值插入到a数组中,插入后,数组中的数仍有序。 /************FOUND***********/ { a[i]=a[i+1]; /************FOUND***********/

for(i=0;i<=n;i++) 正确答案:{ a[i+1]=a[i]; for(i=1;i<=n;i++) 题号:5 题目:函数scopy的功能是:将一个字符串前面n个子字符送到一个字符型数组中去 ,然后再加上一个'\0'。不用系统提供的函数strcpy。请改正程序中的2个错误,使它能得出正确的结果。 /**************FOUND**************/ scanf("%d",n); /**************FOUND**************/ scopy(str1,str2); 正确答案:scanf("%d",&n); scopy(str1,str2,n); 题号:6 题目:函数fun的功能是:求n!。主函数的功能是计算: x!+y!+z!的值。请改正程 序中的错误,使它能得出正确的结果。 /**********FOUND**********/ scanf("%d,%d,%d",x,y,z); /**********FOUND**********/ printf("Sum=%d\ n",sum); 正确答案:scanf("%d,%d,%d",&x,&y,&z); printf("Sum=%ld\ n",sum); 题号:7 题目:编写函数fun求整数n以内(不包括n)3的倍数之和,在main函数中由键盘输 入n值,并输出运算结果。 /**********FOUND**********/ scanf("%d",n); /**********FOUND**********/ result=fun( ); 正确答案:scanf("%d",&n); result=fun(n); 题号:8 题目:函数fun的功能是:求1到20的阶乘的和。 /**********FOUND**********/ s+t=s; /**********FOUND**********/ printf("jiecheng=%d\n",s);

C语言改错题以及参考答案

改错参考答案: (3)将字符串yy在屏幕上输出 #include void main(){/*********Found************/ char yy[100] = "ok??\n"; /*********Found************/ f0r (; *yy; yy++){putchar(*yy);}} #include void main(){/*********Found************/ char*yy="ok??\n"; /*********Found************/ for (; *yy; yy++){putchar(*yy);}} (4)计算半径为2+3的圆的面积 #include #define PI 3."14 /*********Found************/ #define S(r) PI*r*r void main(){/*********Found************/ int mianJi;

mianJi = S(2+3); printf("mian ji=% 5."2f\n", mianJi);}#include #define PI 3."14 /*********Found************/ #define S(r) PI*(r)*(r) void main(){/*********Found************/1floatmianJi; mianJi = S(2+3); printf("mian ji=% 5."2f\n", mianJi);}(8)打开文件d: \te.c用于读并判断打开是否成功 #include void main(){FILE *fp; /*********Found************/ char fileName[] = "d: \te.c"; /*********Found************/ fp = fopen(fileName, "w"); /*********Found************/ if (fp == EOF){puts("File Open Error!");

C语言程序改错题及答案

程序调试1、 #include #include void fun(char *s,char *t) { int i,sl; sl=strlen(s); for(i=0;i void main() { int n,i; scanf("%d",&n);

/****** 1 ******/ i=1;// i=2; while(n>1) if(n%i==0) { printf("%d\t",i); n/=i; } else /******** 2 *******/ n++;// i++; } 3、 #include #include void main() { int n,s=0; scanf("%d",&n); n=fabs(n); /******** 1 *******/ while(n>1) { // 1}n 2}n!=0 s=s+n%10; /******** 2 ******/ n=n%10;// n=n/10; } printf("%d\n",s); } 4、

C语言程序改错练习题

程序改错练习题 下面每个程序的划线处有语法或逻辑错误,请找出并改正,使程序符合题意。 1.求1?2?3?4? ?n main() { int sum; 正确:int sum=1; int n,i=1; scanf("%d",n); scanf(“%d”,&n); printf(“\n”); while(ia[j]) if(max

main() { float a,b; int c; float c; scanf("%f,%f",&a,&b); c=sum(a,b); printf("\nSum is %f",sum); printf("\nSum is %f",c); } 4. x , y两个数中,让x中存较大的数,y存较小的数 #include main( ){ int x , y=200 , z=0; x=180; if ( x

c语言试题及答案 ()

第1章C语言概述习题1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成

C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以 */ 符号作为结束标记。

C语言程序改错基本题

北京石油化工学院12级复习题 程序改错 一、下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。 1.求1?2?3?4? ?n main() { long int sum; int n,i=1; scanf("%d",n); printf(“\n”); while(ia[j]) { max=a[j]; m=j; } printf(“下标:%d\n最大值:%d”, j, max) } *3. 求3+4 int a=3,b=4; main() { int a,c; c=a+b; printf(“c=%d”); } 4.用一个函数求两个数之和。

sum(x,y) { float z; z=x+y; return; } main() { float a,b; int c; scanf("%f,%f",&a,&b); c=sum(a,b); printf("\nSum is %f",sum); } 5.用指针作函数参数,对输入的两个整数按大小顺序输出。 swap(int *p1,*p2) { int *p; *p=*p1;*p1=*p2;*p2=*p; } main() { int a,b; int *q1,*q2; scanf("%d,%d",&a,&b); &q1=a,&q2=b; if(a

2013计算机等级考试二级C语言程序改错题

2013计算机等级考试二级C语言程序改错题 1、下列给定程序中,函数fun的功能是:将s所指字符串的郑旭和反序进行连接,形成的新串放在t所指的数组中 2、函数fun的功能是:用下面的公式求π的近似值,知道最后一项的绝对值小于指定的数为止。 3、函数fun的功能是:传入一个整数m,计算如下公式的值。T=1/2-1/m。 4、函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。、从参数1-55,查找能被3整除且有一位上的数值是5的数,把这些数放在b所指的属猪5 中,这些数的个数作为函数值返回。规定函数中a1放个位数,a2放十位数。 6、求出s所指字符串中最后一次出现的t所指字符串的地址,并通过函数值返回,在主函数中输出从此地址开始的字符串;若未能找到,则函数值为null。 7、按以下递归公式求函数的值fun(n)={10 (n=1)。 8、函数fun和funx的功能是:用二分法求方程2x-4x+3x-6=0的一个根,并要求绝对误差不超过0.001。 9、首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的升序字符接在c所指的数组的尾部。 10、计算整数n的阶乘。 11、计算函数F(x,y,z)=(x+y)的值。其中x和y的值不相等,z和y的值不相等。 12、利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回-1。 13、求三个数的最小公倍数。

14、将s所指字符串中最后一次出现的鱼t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。 15、逐个比较p、q所指两个字符串对应位置上的字符,并把ASCII值大或相等的字符一次存放到c所指的数组中,形成一个新的字符串。 16、根据以下公示求π值,并作为函数值返回。 17、将s所指字符串中出现的与t1所指字符串相同的子串全部替换为t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。 18、从s所指字符串中,找出t所指字符串的个数作为函数值返回。 19、对n名学生的学习成绩,从高到地的顺序找出钱m(<10)名学生来,并将这些学生的数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。 20、根据整形参数m,计算如下公式的值y=1/(100*100)+。 21、从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数放在t 中。高位仍在高位,低位仍在低位。 22、将p所指字符串中的所有字符复制到b中,要求每复制3个字符之后插入一个空格。 23、把从主函数中输入的3个数,最大的数放在a中,中间的数放在b中,最小的数放在c中。 24、用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列1,1,2,3,5,。 25、将一个由八进制数字字符组成的字符串转换成十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。 26、按顺序给s所指数组的元素赋予2开始的偶数,然后再按顺序对每5个元素求平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数,则多余部分忽略不计。

C语言改错复习题

6)./*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:求如下表达式: 1 1 1 S = 1 + —— + ——— + ...... + ——————— 1+2 1+2+3 1+2+3+......+n ------------------------------------------------------*/ #include main() { int n; float fun(); printf("Please input a number:"); /**********FOUND**********/ print("%d",n) ; printf("%10.6f\n",fun(n)); } /**********FOUND**********/ fun(int n) { int i,j,t; float s; s=0; /**********FOUND**********/ while(i=1;i<=n;i++); { t=0; for(j=1;j<=i;j++) t=t+j; /**********FOUND**********/ =s+1/t; } return s; } 答案: 【1】scanf("%d",&n); 【2】float fun(int n)

【3】for(i=1;i<=n;i++) 或for(i=1;n>=i;i++) 或for(i=1;ii;i++) 【4】s+=1.0/t; 或s= s + 1.0 /(float)t; 或s= s + 1.0 /t; 或s+=1.0/(float)t; 11)./*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:判断m是否为素数,若是返回1,否则返回0。 ------------------------------------------------------*/ #include main() { int m,k=0; for(m=1;m<100;m++) if(fun(m)==1) { printf("%4d",m);k++; if(k%5==0) printf("\n"); } } /**********FOUND**********/ void fun( int n) { int i,k=1; if(m<=1) k=0; /**********FOUND**********/ for(i=1;ii;i++) 或for(i=2;i<=m-1;i++) 或for(i=2;m-1=>i;i++) 【3】if( m%i == 0 ) k=0; 【4】return k; 12)./*------------------------------------------------------ 【程序改错】

1)全国计算机等级考试二级C语言改错题分析总结

以下对改错题的改错方式做一些总结,当然这些总结只能对大部分改错行有效。 1、若错误行是函数首部,可分为以下几种情况: A、该行最后若有分号则删除,中间若有分号则改成逗号 B、形参类型不一致的问题,特别是指针类型,若后面用到某形参时有指针运算则该形参必为指针类型;若形参是二维数组或指向m个元素的指针变量,则第二维的长度必须与main中对应数组的第二维长度相同 C、函数类型不一致的问题,若函数中没有return语句则函数类型为void,若有return 语句则函数的类型必须与return后变量的类型一致。 2、若错误行是if或while语句,则首先看有没有用小括号将整个表达式括起,若没有则加上小括号。 3、若错误行中有if、while、for则要特别注意条件表达式的错误问题: A、指针变量的应用,若表达式中有指针变量且没有指针运算符,则加上指针运算符 B、若条件表达式中只有一个等于号,则改成两个等于号,若为其它比较运算符则一般是进行逆转或加一个等于号 C、for中要用分号分隔表达式,而不是用逗号 4、语法错误 A、语句缺少分号,若错误行中有语句没有用分号结束,则加上分号。 B、大小写不对,若错误行中有大写字母则一般都改成小写字母。 5、指针变量的运用,若错误行中有指针变量,并且该变量名前没有指针运算符则一般都是加上指针运算符 6、若错误行为return语句,则首先看是否是缺少分号若是则加上分号即可;否则就是return后的变量或表达式错误(此时可通过看题意,来分析该返回哪一变量或表达式) 7、若错误行中见到整型1除以某个表达式时,一概改成1.0。但若是整型变量或表达式则只能用强制转换 8、复合运算符写错 9、字符串结束符写错,若有字符串结束符则要特别注意有没有写错,但第11题例外,因为该题是要将数字字符转换成对应的数字。 10、若错误行是定义语句,则首先看类型是否符合;再看所赋初值是否正确;若以上均不是,则看是否少定义了某个变量或少了花括号。 11、表达式错误(占的份量最多,并且没有统一的改法,我们只能通过题目要求来分析并修改) 12、若错误行中有一条横线,则必须将横线删除再填空。填空题中亦是如此。

C语言程序改错题及答案

C语言程序改错题及答 案 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

程序调试 1、 #include <> #include <> void fun(char *s,char *t) { int i,sl; sl=strlen(s); for(i=0;i #include <> void main() { char a[80]; int n[5]={0},i; gets(a); for(i=0; a[i]!=’\0’; i++) /***** 1 *****/ switch(tolower(a+i)) { // (tolower(a[i])) case 'a': n[0]++; break; case 'e': n[1]++; break; case 'i': n[2]++; break; case 'o': n[3]++; break; /***** 2 *****/ case'U': n[4]++; break; // ‘u’ } for(i=0;i<5;i++) printf("%d\n",n[i]); } 11、在考生目录下,有程序,该程序中"/***** N *****/"的下 一行中有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负) 该程序功能:输入n(0 void main() { int i,j,n; /***** 1 *****/ scanf("%d",n); // &n for(i=1;i<=n;i++) {

C语言改错题分类总结

C语言改错题分类总结

计算机等级C语言上机考试改错题分类总结 改错题总的出错分为两大类:语法出错和逻辑出错,此类题目是比较简单的题型,因此也是最容易把握的知识点。 注意:错误都是出现在/**********found**********/下面的这一行。 只是下面的这一行,其他行都没有错误。不能修改其他行。 做题方法: 1.首先拿到题目,先将题目详细看看,看清题目对做题时很有帮助的,特别是一些逻辑性较强的题目很有用。有的同学可能会觉得题目太难了不想去读,其实在做改错题目时即便你不会也能把题目做对。 2.按照以下的步骤解决题目中的错误的内容,对应着修改。修改完之后保存即可。 1.关键字出错: 在二级C 语言考试中仅仅考查学生对基本的关键字掌握情况,比如:整型就是int 不是Int,知识点简单。 2.格式出错: 在考试中主要考查学生细心的程度,最喜欢考简单的知识点。 (1)少分号:考查的知识点:分号是语句结束的标志。 (2)for 语句的格式:for( ; ; )中间用分号隔开不是用逗号隔开。 (3)if 语句的格式:if(表达式),if 后面必须加上小括号。 (4)命令行格式出错:如include 命令少了#,正确的形式应该是#include “stdio.h”;

2.运算符号出错: (1)C 语言中除号是“/”不是“\” (2)赋值号(=)和等号(= =)混淆,记住在if 语句中出现赋值号(=)一般是讲它改为等号(= =)。 3.表达式的取值范围出错: 当遇到计算表达式的累加或是累减时,一定用到循环来完成相应的操作。例如:要求计算t=1-1/2*2-1/3*3-….-1/m*m 这个表达式,在这个题目中第一空有这样的for 语句:for(i=2;i)、小于(<)等符号的变化,当你查找出错的地方没有语法错误,也没有使用了未定义的变量时,记住这个口诀:将大于改为小于,将小于改为大于! 6.函数的返回值及其参数:重点 int fun(int x,int y) main() { { if(x>y) return x; int a,b,c; else return y; scanf(“%d%d”,&a,&b); } c=fun(a,b);

相关文档