C语言改错题库

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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)

33.查找n在数组a中最后一次出现的位置。 (17)

34.求两个正整数x,y的最小公倍数。 (18)

35.求两个正整数x,y的最大公约数和最小公倍数。 (18)

从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。

例如,当s中的数为:7654321时,t 中

的数为:7531。

#include

void main( )

{ long s, t, sl=10;

printf("\nPlease enter s:");

scanf("%ld", &s);

/************found************/

t = s % 10;

while ( s > 0)

{ s = s/100;

t = s%10 * sl + t;

/************found************/

sl = sl*10;

}

printf("The result is: %ld\n", t);

}

2.求一维数组a中的值为偶数的元素之和。

例如,当一维数组a中的元素为:10,4,2,7,3,12,5,34,5,9 ,程序

的输出应为:The result is: 62

#include

#include

void main()

{ int a[10]={10,4,2,7,3,12,5,34,5,9},i,s;

s = 0;

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

/************found************/

if (a[i] % 2 == 0)

s = s + a[i];

/************found************/

printf("The result is: %d\n", s);

}

若用函数调用来求呢?

#include

int sum ( int arr[ ],int n )

{ int i,s;

s = 0;

for ( i=0; i

if (arr[i] % 2 == 0)

/************found************/

s = s + arr[i];

return (s);

}

void main()

{ int a[10]={10,4,2,7,3,12,5,34,5,9},i,s;

/************found************/

s = sum( a ,10 );

printf("The result is: %d\n", s);

}

3.求二维数组a中的最大值。

例如,当二维数组a中的元素为:

4 4 34

7 3 12

5 6 5 程序的输出应为:The max is: 34 。#include

int arrmax( int arr[3][3])

{ int i,j,max;

max=arr[0][0];

/************found************/

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

for ( j=0; j<3; j++)

if (max < arr[i][j]) max = arr[i][j];

return (max); }

void main()

{ int a[3][3]={4,4,34,7,3,12,5,6,5},i,j;

/************found************/

printf("The max is: %d\n",arrmax(a)); }

若用函数调用呢?

#include

int max;

maxarr(int arr[ ])

{ int pos,i;

/************found************/

max =arr[ 0];

pos = 0;

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

if (max < arr[i])

{ max = arr[i];

pos = i; }

/************found************/

return (pos);

}

void main()

{ int a[10]={34,4,2,7,3,12,5,8,5,9};

相关文档
最新文档