C语言程序改错(5)

2018-12-04 22:55

}

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

int i;

for (i=0; i

scanf(\

/*********Found************/ i--; //改为:i++ }

}

14、考查点:函数调用,字符串结束标志的使用,程序D1018.c的功能是通过函数,将一个字符串中的元音字母复制到另一字符串,然后输出。 #include

#include

void vowel(char str1[], char str2[]);

int main(void) {

char str1[81], str2[81];

printf(\ gets(str1);

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

vowel(________________); //改为:str1, str2 printf(\ puts(str2);

if (strlen(str2) == 0) {

printf(\ }

return 0;

}

void vowel(char str1[], char str2[]) {

int i, j = 0;

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

for (i=0; ________________; i++) //改为:str1[i]

{

if (str1[i]=='A' || str1[i]=='E' || str1[i]=='I'

|| str1[i]=='O' || str1[i]=='U' || str1[i]=='a' || str1[i]=='e' || str1[i]=='i' || str1[i]=='o' || str1[i]=='u') {

str2[j] = str1[i]; j++; } }

str2[j] = '\\0'; }

15、考查点:函数声明、函数定义、函数调用,表达式统计,程序D1019.c的功能是计算输出10个学生的平均成绩。 #include

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

average(double x, y); //改为:double average和int y

int main(void) {

int i;

double score, total; double aver;

printf(\ scanf(\

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

printf(\ scanf(\ /*****Found*****/

total = score; //改为:total = total + score; }

aver = average(total, 10);

printf(\

return 0;

}

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

average(double x, y) ////改为:double average和int y

{

return x / y;

}

16、考查点:递归函数定义(递归返回),函数头,程序D1020.c的功能是使用递归实现Fibonacci数的计算,Fn=Fn-1+Fn-2(1、1、2...,第7项为13)。 #include

int f(int n);

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

int main(void); //改为:去掉‘;’ {

printf(\

return 0;

}

int f(int n) {

if (n <= 2) {

/*****Found*****/ return 2; //改为:1 }

return f(n - 1) + f(n - 2);

}

17、考查点:函数声明,变量作用域,函数调用,函数定义,指针作为函数的参数,程序D1022.c的功能是通过一个加法子函数,输入两个浮点数,求和。 #include

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

int add(float x, float y); //改为:float

int main(void)

float a, b;

scanf(\

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

printf(\x, y)); //改为:a, b

return 0;

}

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

float add(float x, float y); //改为:去掉’;’ {

return x + y;

}

18、程序D1054.C的功能是:从键盘读入两个整数,对它们进行按位异或操作,把操作结果按二进制位放在字符数组str中,最后输出该字符串。提示:第2个空建议使用条件表达式(?表达式)实现!

Please input num1 and num2 : 127 0 127 ^ 0 = 00000000000000000000000001111111 图1 程序运行效果示例 Please input num1 and num2 : 123 456 123 ^ 456 = 00000000000000000000000110110011 #include

int main(void) {

unsigned long int number, num1, num2, mask; int i;

char str[33];

printf(\ scanf(\

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

mask = __________________; //改为:0x80000000 number = num1 ^ num2; for(i=0; i<32; i++) {

/*********Found************/ str[i] = __________________; //改为:(mask & number) ? ‘1’:’0’ mask >>= 1; }

str[32] = '\\0';

printf(\

return 0; }

难度3

1、考查点:符号常量定义,const常量的使用,指针变量的移位操作,程序D10.c的功能是将字符串str2显示在屏幕上。 #include

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

#define START //改为:#define START { /*********Found************/

#define NEXT //改为:#define NEXT }

int main(void) {

char *str2 = \ const int i = 0;

for (printf(\ START

putchar(str2[i]);

/*********Found************/ i++; //改为:str2++ NEXT

return 0;

}

2、考查点:字符数组下标控制,字符串结束标志,条件表达,程序D13.c的功能是从键盘输入最多10个字符(遇换行则停止输入)到数组Buf中,然后在屏幕上显示。 #include

int main(void) {

char c, Buf[11]; int pos;

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

for (pos = 1; pos <= 10; pos++) //改为:0和< {

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

if ((c = getchar() == '\\n') //改为:后面加) {

break; }

Buf[pos] = c;


C语言程序改错(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2002级高数(下)理工课程(A)卷及其答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: