福建省计算机二级考试C语言上机题库改错填空编程 联系客服

发布时间 : 星期一 文章福建省计算机二级考试C语言上机题库改错填空编程更新完毕开始阅读

二、改错题 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(\ getch(); }

Cmody192.c

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

int a[N][N],i,j; for(i=0;i

printf(\

printf(\ }

for(i=0;i

/**/ for(j=0;j<=i;j++)/**/ a[i][j]+=4; for(i=0;i

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

printf(\ for(i=0;i

printf(\ printf(\ } 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(\ 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(\ gets(str);

printf(\ scanf(\ len=strlen(str); if( m-1+n>len )

printf(\run with %d and %d!\\n\ else { i=0;

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

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

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

printf(\ }

getch(); }

Cmody211.c

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

#include #include #define ROW 3 #define COL 4 void main() {

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

printf(\ for(i=0;i

{if(/**/ minmax)

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

printf(\ getch(); }

Cmody212.c

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

{

int i,j,k,count;

char s1[100],s2[100]; printf(\ gets(s1);

printf(\ 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(\ getch(); }

Cmody221.c

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

#include

/**/ structure student /**/ {

char name[10]; float score; };

void main( ) {

struct student stu[8]={{\{\Yili\ 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(\\\n Best is %s\\n\ 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; j0)

{

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

void main() {

int i; char

str[][COL]={\ME\APMAE\/**/ fun(str,COL); /**/ clrscr();

for(i=0;i

printf(\ getch(); }

Cmody231.c

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

int x,b,i,j; char s[5];

printf(\ scanf(\ /**/ i=1; /**/ while(x>0) {b=x; if(b>9)

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

/**/ s[i]=b /**/; x=x/16; i++; }

printf(\ 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(\ /**/ for(j=k-1;j>1;j--) /**/