C语言程序改错总结 下载本文

int main(void) {

int i, oneNumber, maxNumber = 0;

printf(\ {

int maxNumber = 0;

/*********Found************/ ___________ //{

for (i = 0; i < 10; i++) {

scanf(\ if (oneNumber > maxNumber) {

maxNumber = oneNumber; } } }

/*********Found************/

___________ // maxiNum = maxNumber /*********Found************/ ___________ //} dispMaxNum();

return 0;

}

void dispMaxNum() {

/*********Found************/

printf(\

}

9、考查点:循环条件表示,循环体中改变循环条件,程序D1011.c的功能是从输入数据中统计正整数和负整数的个数。用输入0来结束输入,变量i存放正整数个数,变量j存放负整数的个数。

#include

int main(void) {

int i = 0, j = 0, n;

printf(\ scanf(\

/*********Found*********/

while (______________) // n 或者n != 0 {

if (n > 0) {

i++; }

if (n < 0) {

j++; }

/*********Found*********/

_________________________ // scanf(\}

printf(\

return 0; }

10、考查点:枚举算法,for语句条件,条件判断,程序D1012.c的功能是显示用1、2、3、4个数字组成的互不相同且无重复数字的三位数。

#include

int main(void) {

int i, j, k;

/*********Found************/

for (i=1; ; i++) //改为:i < 5 {

for (j=1; j<5; j++) {

for (k=1; k<5; k++) {

/*********Found************/

if (i!=k && i!=j && ______) //j != k {

printf(\ } } } }

return 0; }

11、考查点:数组逆序存放,循环次数控制,换位操作的实现,程序D1013.c的功能

是将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1,要求改为1,4,5,6,8。

#include

#define N 10

int main(void) {

int a[N], i, temp;

printf(\ for (i=0; i

scanf(\ }

printf(\ for (i=0; i

printf(\ }

printf(\

/*********Found************/

for (i=0; i

temp = a[i];

/*********Found************/

a[i] = a[N-i]; //改为:a[N-1-i] /*********Found************/

a[N-i] = temp; //改为:a[N-1-i] }

printf(\ for (i=0; i

printf(\ }

printf(\

return 0;

}

12、考查点:排序算法的实现,排序条件,数据交换、字符数组的处理,程序D1014.c的功能是将字符数组a中元素从大到小排列(值相同的元素不交换位置)。

#include

#include

int main(void) {

int i, j, k;

char a[] = \

k = strlen(a);

for (i=0; i

for (j=i+1; j

/*****Found*****/

if (a[i] > a[j]) //改为:a[i] < a[j] {

t = a[j];

/*****Found*****/

a[i] = a[j]; //改为:a[j] = a[i] a[i] = t; } } }

printf(\

return 0;

}

13、考查点:数组元素下标,数组作函数参数,程序D1015.c的功能是定义一个整型数组,采用子函数实现数据输入。 #include

void input(int a[], int n);

int main(void) {

int a[10], i;

/*********Found************/ input(a[10], 10); //改为:a for (i=0; i<10; i++) {

printf(\ }

return 0;