吉林省省二程序改错题

更新时间:2023-11-03 01:10:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.下面程序功能是:输入一个圆的半径,计算圆的周长和面积并输出。 /* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */ l=2*pi*r;

正确:

scanf(\l=2*PI*r;

2.下面程序的功能是:求一元二次方程ax^2+bx+c=0的根,由键盘输入啊,a,b,c,设a!=0,设b^2-4ac>0。 /* * * * FOUND * * * */ disc=b*b-4ac;

/* * * * FOUND * * * */

printf(\

正确:

disc=b*b-4*a*c;

printf(\

3.下面程序的功能是:根据下面分段函数,输入一个x,输出对应的y值。 /* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */ y==5*x*x-1;

正确:

scanf(\y=5*x*x-1;

4.下面程序的功能是:根据输入的百分制成绩score,转换成相应的五分制成绩输出。 /* * * * FOUND * * * */ if(score>100&&score<0); /* * * * FOUND * * * */ else(score>=60)

正确:

if(score>100||score<0); else if(score>=60)

5.下面程序的功能是:判断输入的年份是否为闰年。

/* * * * FOUND * * * */

if(year0!=0);

/* * * * FOUND * * * */ flag=1;

正确:

if(year0==0); flag=0;

6.下面程序的功能是:判别输入的字符是否为大写字母,如果是大写字母,将其转换为小写字母,否则就不转换,最后输出。 /* * * * FOUND * * * */ doublech;

/* * * * FOUND * * * */

ch=(ch>='A'||ch<'Z'?(ch):ch+32);

正确: charch;

ch=(ch>='A'&&ch<'Z'?(ch+32):ch); 7.下面程序的功能是:任意驶入10个整数,找出其中最大值并输出。 /* * * * FOUND * * * */ max=0;

/* * * * FOUND * * * */ if(a

正确: max=a; if(a>max)

8.下面程序的功能是:计算1~10之间的奇数之和和偶数之和并分别输出。 /* * * * FOUND * * * */ a=c=i;

/* * * * FOUND * * * */ b=i;

正确: a=c=0; b=i+1;

9.下面程序的功能是:输出如下所示图形。 * * * * * * * * * * * * * * * * * * * *

/* * * * FOUND * * * */

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

/* * * * FOUND * * * */ for(j=1;j<=i-1;j--)

正确:

for(i=1;i<5;i++) for(j=1;j<=i-1;j++)

10.下面程序的功能是:求1!+3!+5!+……+n!的和。

/* * * * FOUND * * * */ for(i=1;i<=n;i++)

/* * * * FOUND * * * */ f=0;

正确:

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

11.下面程序的功能是:计算并输出500以内最大的10个能被13或17整除的自然数之和。

/* * * * FOUND * * * */ while((k>=2)||(mc<10)) /* * * * FOUND * * * */ if((k=0)||(k)=0)

正确:

while((k>=2)&&(mc<10)) if((k==0)||(k)==0)

12.下面程序的功能是:输出如图所示的杨辉三角的前五行。 /* * * * FOUND * * * */ for(i=1;i<2;i++)

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

正确:

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

for(k=0;k<12-2*i;k++)

13.下面程序的功能是:输入一个整数给m,计算并输出如下公式所示的表达式的值。 /* * * * FOUND * * * */ for(i=2;i

/* * * * FOUND * * * */ y-=1/(i*i);

正确:

for(i=2;i<=m;i++) y-=1.0/(i*i);

14.已知一个数列从第0项开始的前三项分别为0、0、1,以后的各项都是其相邻的前三项的和。下面程序的功能是:计算输出该数列的前10项的平方根之和。 /* * * * FOUND * * * */ s2=0.0

/* * * * FOUND * * * */ sum=sqrt(s);

正确: s2=1.0

sum+=sqrt(s);

15.下面程序的功能是:输出3到100之间所有的素数。

/* * * * FOUND * * * */ for(i=1;i<=k;i++)

/* * * * FOUND * * * */ if(m%i!=0)

正确:

for(i=2;i<=k;i++) if(m%i!==0)

16.下面程序的功能是:将3*4的二维数组中的第0列和最后一列元素的值相交换,第一列和第二列元素的值相交换。 /* * * * FOUND * * * */ for(j=0;j<=4/2;j++)

/* * * * FOUND * * * */ a[i][j]=a[i][3];

正确:

for(j=0;j<4/2;j++) a[i][j]=a[i][3-j];

17.下面程序的功能是:求3*3的矩阵主对角线和次对角线上元素之和。 /* * * * FOUND * * * */ sum+=a[i][j];

/* * * * FOUND * * * */ sum+=a[i][i];

正确:

sum+=a[i][i]; sum+=a[i][j];

18.下面程序的功能是:把str1组下标为偶数的元素中字符复制到str2数组中。 /* * * * FOUND * * * */ while(str1[i]='\\0')

/* * * * FOUND * * * */ i++;

正确:

while(str1[i]!='\\0') i=i+2;

19.下面程序的功能是:在一个意按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。

/* * * * FOUND * * * */ scanf(\/* * * * FOUND * * * */ for(i=N-1;i>=0;i--)

正确:

scanf(\for(i=N-1;i>=0;i--)

20.下面程序的功能是:输出10个整数给数组score,计算数组score中所有元素的平均值并输出。

/* * * * FOUND * * * */ scanf(\

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

正确:

scanf(\sum=score[0];

21.下面程序的功能是:将一个字符串前面n个子字符送到一个字符数组中去,然后再加上一个’\\0’。

/* * * * FOUND * * * */ scanf(\

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

正确:

scanf(\for(i=0;i<=n;i++);

22.下面程序的功能是:计算并输出数组中所有正数的平均值。 /* * * * FOUND * * * */ for(i=0;i<=10;i++)

/* * * * FOUND * * * */ aver=sum*c;

正确:

for(i=0;i<10;i++) aver=sum/c;

23.下面程序的功能是:先从键盘上输入一个3行3列矩阵的各个元素的值,然后输出主对角线上的元素之和sum。 /* * * * FOUND * * * */ sum=sum+a[i][j];

/* * * * FOUND * * * */ printf(\

正确:

sum=sum+a[i][i];

printf(\

24.下面程序的功能是:从键盘输入十个学生的成绩,统计最高分、最低分和平均分。Max中存在最高分,min中存放最低分,avg中存放平均分。

/* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */ if(max==a[i])

正确:

scanf(\if(max

25.下面程序的功能是:给定n个实数,输出平均值和在平均值以下(含平均值)的实数个数。

/* * * * FOUND * * * */ double j=0.0;

/* * * * FOUND * * * */ for(j=2;j<6;j++)

正确:

doublexa=0.0; for(j=0;j<6;j++)

26.下面程序的功能是:从字符串中删除指定字符,字符串和指定字符都从键盘输入。 /* * * * FOUND * * * */ for(i=0;str[i]!='0';i++) /* * * * FOUND * * * */ str[j]=str[i++];

正确:

for(i=0;str[i]!='\\0';i++) str[j++]=str[i];

27.下面程序的功能是:从键盘输入两个整数,通过调用max求两个整数中较大的数,并输出。

/* * * * FOUND * * * */ scanf(\/* * * * FOUND * * * */ return n1>n2?n2:n1;

正确:

scanf(\return n1>n2?n1:n2;

28.下面程序的功能是:输入三个整数,用函数的嵌套调用求三个数中最大数和最小数的差值并输出。 /* * * * FOUND * * * */ voiddif(intx,inty,int z) /* * * * FOUND * * * */ int min(intx,y,z)

正确:

intdif(intx,inty,int z) int min(intx,inty,intz)

29.下面程序的功能是:计算并输出s=1^k+2^k??+N^k。 /* * * * FOUND * * * */ long power=1;

/* * * * FOUND * * * */ sum=f1(i,k);

正确:

long power=n; sum+=f1(i,k);

30.下面程序的功能是:比较两个数组大小。 /* * * * FOUND * * * */ if(large(a[i],b[i])) m++; /* * * * FOUND * * * */ return 1;

正确:

if(large(a[i],b[i])==1) m++; return(flag);

31.下面程序的功能是:用选择法对数组a中的10个整数按由小到大的顺序排序,之后按由小到大的顺序输出数组中的数。 /* * * * FOUND * * * */ for(j=i;j

/* * * * FOUND * * * */ j=k;

正确:

for(j=i+1;j

32.下面程序的功能是:求如下表达式的值并输出。

S=1+1/3+1/6??+1/(1+2+3??n) /* * * * FOUND * * * */ printf(\

/* * * * FOUND * * * */ fun(int n)

正确:

scanf(\float fun(int n)

33.函数fun的功能是:n!。 /* * * * FOUND * * * */ scanf(\/* * * * FOUND * * * */ printf(\

正确:

scanf(\printf(\34.函数fun的功能是:求整数n以内(不包括n)3的倍数之和,在main函数中由键盘输入n值,并输出运算结果。

/* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */ result=fun();

正确:

scanf(\result=fun(n);

35.函数fun的功能是:计算正整数num的各位上的数字之积。 /* * * * FOUND * * * */ long k;

/* * * * FOUND * * * */ num\\=10;

正确: long k=1; num/=10;

36.函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。 /* * * * FOUND * * * */ b=a;

/* * * * FOUND * * * */ a=t;

正确: a=b; b=t;

37.函数fun的功能是:实现3行3列矩阵的转置,即行列互换。 /* * * * FOUND * * * */ scanf(\

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

正确:

scanf(\for(j=0;j

38.下面程序的功能是:通过调用sort函数,用起泡法对输入的十个字符排序后按从小到大的顺序输出。 /* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */

sort(str(N));

正确:

scanf(\sort(str);

39.函数fun的功能是:计算并输出n(包括n)以内的能被5或9整除的所有自然数的倒数之和。

/* * * * FOUND * * * */ if(n>0||n<=100)

/* * * * FOUND * * * */ sum+=1/i;

正确:

if(n>0&&n<=100) sum+=1.0/i;

40.函数del的功能是:从字符串中删除第i个字符开始的n个字符。 /* * * * FOUND * * * */ void del(char[],inti,n) /* * * * FOUND * * * */ intj,length,k;

正确:

void delete(char s[],inti,intn) intj,length=0,k;

41.下面程序的功能是:调用函数fun,求一个3行4列矩阵的外框的元素值之和。 /* * * * FOUND * * * */ int i,j,s,s1=s2=s3=s4=0; /* * * * FOUND * * * */ s2=s2+a[m][j];

正确:

int i,j,s,s1=0,s2=0,s3=0,s4=0; s2=s2+a[m-1][j];

402fun函数的功能是:实现两个字符串的连接。

/* * * * FOUND * * * */ while(s1[i]=='\\0')i++; /* * * * FOUND * * * */ while(s2[j]=='\\0')

正确:

while(s1[i]!='\\0')i++; while(s2[j]!='\\0')

43.fun函数的功能是:将s所指字符串的反序和正序进行连接形成一个新串放在t数组中。

/* * * * FOUND * * * */ void fun(char s,char t) /* * * * FOUND * * * */ d=len(s);

正确:

void fun(char s[],char t[]) d=strlen(s);

44.下面程序的功能:用指针变量存放两个整变量的地址,并通过指针变量把整型变量中的值输出来。

/* * * * FOUND * * * */ int p1,*p2;

/* * * * FOUND * * * */ p1=&a;p2=b;

正确: int *p1,*p2; p1=&a;p2=&b;

45.下面程序的功能是:随意输入两个整数,用间接访问的方式,将两个数按由小到大的顺序输出。

/* * * * FOUND * * * */ p1=&a;p2=b;

/* * * * FOUND * * * */ printf(\

正确:

p1=&a;p2=&b;

printf(\

46.下面程序的功能是:通过调用函数swap,把数组元素a[0]和a[1]的值互换。 /* * * * FOUND * * * */ void swap(int*p1,*p2) /* * * * FOUND * * * */ swap(a[0],a[1]);

正确:

void swap(int*p1,int*p2)

swap(&a[0],&a[1]);

47.下面程序的功能是:找出二维数组所有元素中的最大值输出。 /* * * * FOUND * * * */ int p;

/* * * * FOUND * * * */ if(p>max)

正确: int*p;

if(*p>max)

48.下面程序的功能是:输入一个3*4的矩阵到二维数组中,计算并输出所有元素的和。/* * * * FOUND * * * */ p=&a;

/* * * * FOUND * * * */ s+=*(p+1)+j;

正确: p=a;

s+=*(*(p+1)+j);

49.函数mystrlen的功能是:求字符串的长度,字符串在主函数中有键盘输入。 /* * * * FOUND * * * */ intmystrlen(char s) /* * * * FOUND * * * */ while(*s)

正确:

intmystrlen(char *s) while(*s++)

50.下面程序的功能是:建立3名学生的信息表,每个学生的数据包括学号、姓名、性别、年龄。

/* * * * FOUND * * * */ int *p;

/* * * * FOUND * * * */ for(p=stu;p

正确:

struct student *p;

for(p=stu;p

51.下面程序的功能是:从键盘输入一些学号依次送到文件filel.txt中,直到输入“#”

为止。

/* * * * FOUND * * * */

if((fp=fopen(\/* * * * FOUND * * * */ while(ch!=0)

正确:

if((fp=fopen(\while(ch!=’#’)

52.下面程序的功能是:读出文件filel.txt中的内容,显示在显示器上。 /* * * * FOUND * * * */

if((fp=fopen(\/* * * * FOUND * * * */ while(feof(fp))

正确:

if((fp=fopen(\while(!feof(fp))

53.下面程序的功能是:用文件存储学生数据。有5个学生,每个学生有3门课的成绩,从键盘输入数据(包括学号、姓名、3门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在文件stud中。 /* * * * FOUND * * * */

scanf(\”,&s[i].num,&s[i].name,&s[i].score[0],&s[i].score[1],&s[i].score[2]\/* * * * FOUND * * * */

if(fwrite(&s[i],sizeof(struct stud)1,fp)==1)

正确:

scanf(\&s[i].score[0],&s[i].score[1],&s[i].score[2]\if(fwrite(&s[i],sizeof(struct stud)1,fp)!=1) 54.下面程序的功能是:使一个无符号整数的低4位翻转,其他位保持不变。用十六进制数形式输入和输出。 /* * * * FOUND * * * */ scanf(\

/* * * * FOUND * * * */ c=a|b;

正确:

scanf(\

c=a^b;

本文来源:https://www.bwwdw.com/article/q352.html

Top