y=0,x=a||x=-a; y=sqrt(a*a-x*x), -aa. 54.编程判断对输入的任何一个年份是否是闰年,将结果输出。 55.请编制程序要求输入整数a和b,若a*a+b*b大于100,则输出a*a+b*b百位以上的数字,否则输出两数之和。
56.请编制程序判断输入的正整数是否既是5又是7的整倍数。若是,则输出yes;否则输出no. 57.编程实现:计算1到100之间的奇数之和及偶数之和。 58.请编程实现:求100个任意整数的累加和。
59.请编程实现:求1到100之间所有能被3整除,但不能被5整除的数的和。
60.请编程实现:输入任意正整数n,计算n!并将结果输出,输出结果中没有小数部分。 61.请编程实现:计算1至50中是7的倍数的数值之和。
62.请编程实现:对任意100个整数,统计0的个数及正数的累加和。 63.请编程实现:输入两个整数,判断它们之间的关系(=,等),并清楚地将比较结果输出。 64.请编程实现:输入几个整数,判断其中偶数的个数,并输出结果(要求:数据的个数及原始数据由键盘输入)。
65.请编程实现:输入几个整数,判断其中奇数的个数,并输出奇数的累加和。(要求:数据的个数及原始数据由键盘输入)
66.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示。
67.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值。 68.用for循环语句计算1到20的和,并将结果输出。
69.从键盘输入一行字符,统计出输入的字符个数(注:不要使用strlun函数编程)。 70.编程实现:任意输入10个数,计算所有正数的和,负数的和以及10个数的和。 71.编程实现:求任意20个数中的正数之和及正数的个数,并将结果输出。 72.编程实现:对键盘输入的任意一个四位正整数,计算各位数字平方和。 如:2345 则:计算2*2+3*3+4*4+5*5 73.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程。
74.编程实现:打印100以内个位数为6且能被3整除的所有数 。 75.编程实现:从键盘输入若干个整数(数据个数应不少于50),其值在0至4的范围内,用-1作为输入结束的标志,统计每个整数的个数。 76.编写一个函数sort,将放到一维数组中的若干个数按从大到小的顺序排序;在主函数中输入若干个数到一个一维数组中,调用sort,对该数组进行排序,在主函数中将原数组和排好序的数组输出。
77.输入一个正整数,将其用质因子的乘积表示,并输出结果,格式为:12=2×2×3。
78.输入一个正整数,求出它的质因子的和,并输出结果,格式为:12的质因子和=2+2+3=7。 79.编写一个函数,判断一个正整数是否为完数:如果一个数的除它本身以外的所有因数之和等于它本身,则它就是完数。主函数中找出1000以内的所有完数。
80.编写函数GCD,求两个正整数的最大公约数,主函数中输入任意5个正整数,调用函数GCD,求出这5个数的最大公约数和最小公倍数。
81.编函数isprime判断正整m是否为素数;如果是素数,返回正整数1,否则返回0;主函数中调用isprime,找出2到1000之间的所有素数。
82.一维数组a中的若干个数已按从小到大的顺序有序;在主函数中输入一个数,将其插入到该数组中,使得原数组依然按原序有序,分别输入原数组和插入新元素之后的数组。 83.有5个国家名,编程实现按字母先后顺序排序,然后分别输出原数组和排序之后的数组。 84.有一行文字,要求删去其中的某个字符,此行文字和要删的字符均由键盘输入,分别输出原文字和删除之后的文字(注:原文字中的所有和要删除字符相同的字符完全删除)。 85.打印如图所示的杨辉三角,要求打印出n行,n由键盘输入。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 „„„
86.编一个函数实现将一个整型的一维数组中的数逆序存放,不使用辅助数组。主函数输入一个整型的一维数组,调用上述函数,将该数组逆置,将结果输出。
87.编写一个函数convert,求一个方阵的转置矩阵;主函数中输入方阵的阶数和方阵,在主函数中将原矩阵和转置矩阵按原格式输出。
88.求∏值,精度为10-5:∏/4≈1-1/3+1/5-1/7+„„
89.用公式计算:e≈1+1/1!+1/2! „+1/n!,精度为10-6。 90.有一分数序列
2/1,3/2,5/3,8/5,13/8,21/13
求该序列的前20项之和。
91.编一个子函数GCD,求两个正整数的最大公约数,主程序输入n个自然数,调GCD,求出这n个数的最大公约数。 92.写函数求sin(x)的值。计算公式为:Sin(x)=X-X3/3!+X5/5!-X7/7!+ „+(-1)n-1X2n-1/(2n-1)!。 93.编一函数使用冒泡法对若干个整数按从小到大的顺序排序,主函数中输入若干个整数到一个一维数组中,调用排序函数,将其排序,最后将原数组和排好序的数组输出。
94.求一个m行n列的二维数组中的这样一个原素;它在它所在的行为最大,在它所在的列为最小。
95.编写一个函数求给定字符串长度,主函数中输入一个字符串,调用该子函数,求出该字符串的长度,输出。
96.编写一个函数将给定字符串复制到另一个字符串中去,主函数中输入一个字符串,调用该子函数,复制出另一字符串,将两个串输出。
97.写函数求Cos(x)=1+X2/2!-X4/4!+X6/6!- „+(-1)nX2n/(2n)!。
98.编写一个函数将给定字符串中的大写字母转换成小写字母,主函数中输入一个字符串,调用该子函数,进行转换,将原字符串及转换后的字符串输出。 99.编写一个函数将给定的两个字符串连接成一个字符串:
格式为:strcat(ch1,ch2);
功能:将ch2复制到ch1的后面;
主函数中输入两个字符串,调用该子函数,求出连接之后的字符串,将两个原字符串及连接之后的结果串输出。
100.用40元钱买苹果、西瓜和梨共100个,且三种水果都有。已知苹果0.4元一个,西瓜4元一个,梨0.2元一个。问可以买多少个?编程输出所有购买方案。 101.编程:建立一个3×3的二维整数数组,求两条对角线上元素值得和,并将结果输出。(用函数调用方式编程)
102.编程计算:1*2*3+3*4*5+„„+99*100*101的值。 103.有一个5×4的矩阵,编程实现:找出该矩阵中每行元素的最大值,并使该值成为该行的首列元素。
104.编写一个程序,使输入的一个字符串按反序存放在一字符数组中,然后输出。要求:
(1)在主调函数中输入字符串;
(2)写函数完成由主调函数传递来的字符串按反序存放;
(3)在主调函数中输出结果。
105.从键盘输入五个字符串,分别求出字符串中长度最长和最短的字符串,请编程。(要求:不要使用strlen(_)函数编程)
106.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。请编程实现。
107.写一个判断素数的函数,在主函数中调用素数的判断函数,求出2到1000之间的素数的累加和,将结果输出,请编程。
108.编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。
109.请编程实现:将两个字符串s1和s2比较,如果s1>s2,输出一个正数;s1要求:不要用strcpy函数,两个串用gets函数读入,输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCⅡ码的差值。
110.编写一个函数,由实参传来一个字符串,把串中所有大写字母变成相应的小写字母;原串中所有的小写字母变成相应的大写字母,在主函数中输入原字符串和输出变换后的字符串,请编程。
111.编程实现:由键盘输入的任意一组字符中统计出大写字母的个m和小写字母的个数n,并输出m、n中的较大者。
112.定义一个含有30个整形元素的数组,按顺序分别赋予从2开始的偶数,然后按顺序每五个数求出一个平均值,放在另一个数组中并输出,请编程。
113.输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:
(1)能同时被3,5,7整除;
(2)能被其中两数(要指出哪两个数)整除;
(3)能被其中一个数(要指出哪个数)整除。
1、输入两个正整数,m和n,求其最大公约数和最小公倍数。
2.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。 3.输入一个正整数求出它是几位数;输出原数和位数。 4.输入一个正整数,输出原数并逆序打印出各位数字。
5.从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输入。
6.从键盘上输入若干学生的一门课成绩,计算出平均分,当输入负数时结束输入。将结果输出。
8.打印以下图案:
*
***
*****
******* 9.打印以下图案:
* ** *** **** 10.求下列试子的值:1-1/2+1/3-1/4+„„+1/99-1/100,将结果输出。 11.打印出100~999之间的所有水仙花数。
12.求Sn=a+aa+aaa+„+aa„a之值,n,a由键盘输入。 13.打印以下图案:
*******
*******
*******
******* 14.打印以下图案:
121
12321
1234321 15. 打印以下图案:
1234321
12321
121
1 16.编写一个统计学生成绩程序,完成以下功能:输入4个学生的2门课成绩;求出全班的总平均分,将结果输出。 17. 打印以下图案:
*****
*****
*****
*****
***** 18.给出年、月、日,计算该日是该年的第几天。 19.求一个3*3的整型矩阵对角线元素之和。将原矩阵和求出的和输出。
20.求一个4*3的矩阵各行元素的平均值;将原矩阵和求出的平均值全部输出。 21.求一个3*4的矩阵各列元素的平均值;将原矩阵和求出的平均值全部输出。 22.求一个3*5的矩阵各列元素的最大值,将原矩阵和求出的最大值全部输出。 23.求一个4*3的矩阵各行元素的最大值,将原矩阵和求出的最大值全部输出。 24.求一个M*N的矩阵中元素的最大值,将原矩阵和求出的最大值全部输出。 25.判断一个N*N的矩阵是否为对称矩阵,将原矩阵输出,判断结果输出。
26.有一篇文章,有三行文字,每行有80个字符。要求统计出其中英文大写字母、消协字母、数字、空格以及其他字符的个数。
27.将20个整数放到一维数组中,输出该数组的最大值和最小值。
28.将15个整数放到一维数组中,输出该数组中的最大值它的下标,然后将它和数组中的最前面的元素对换。
29.将字符数组str1种下标为偶数的元素赋给另一字符数组str2,并输出str1和str2。 30.编写一个程序,将两个字符串连接起来,不要使用strcat函数。
31.编写一个程序,将字符数组a中的全部字符复制到字符数组b中。不要使用strcpy函数。 32.编写一个程序,找出3个字符串中的最大者,将它输出。
33.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。例如:1转换成Monday,7转换成Sunday。
34.编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果。 35.输入年号,计算这一年的2月份的天数,将结果输出。
36.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,若能,计算面积。
37. 输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:等腰、等边、直角、等腰直角、一般。
38.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。(用if语句编程) 39.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。(用switch语句编程) 40.输入学生的成绩,利用计算机将学生的成绩划分出等级并输出:
90~100:A级;
80~89:B级;
70~79:C级;
60~69:D级;
0~59:E级; 41.编程序,求方程aX2+bX+c=0的解;输入a,b,c. 42.编程序,输入4个整数,按由小到大的顺序输出。
43.求满足1+2+3+„+n<500中最大的N,并求其和,编写程序实现。
45.求Fibonacci数列前40个数,每行输出5个,将40个Fibonacci数输出。 46.按以下规律翻译密码:
将每一个字母变成它后面的字母,例如,将A变成B,B变成C,„,Z变成A,非字母字符不变,“!”作为电文结束标志。
47.百元买百鸡问题:公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种买法。
48.使用数组编程,计算出前20项fibonacci数列,要求一行打印5个数。
49.编程序求出两个3*4矩阵的和并将原矩阵和求出的和矩阵按原矩阵的形式分别输出。 50.将一个4*3的矩阵转置,并将原矩阵和求出的转置矩阵按原矩阵的形式分别输出。
51.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。
52.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。
y=x*(x+2),2y=2x, -1y=0,x=a||x=-a; y=sqrt(a*a-x*x), -aa. 54.编程判断对输入的任何一个年份是否是闰年,将结果输出。 55.请编制程序要求输入整数a和b,若a*a+b*b大于100,则输出a*a+b*b百位以上的数字,否则输出两数之和。
56.请编制程序判断输入的正整数是否既是5又是7的整倍数。若是,则输出yes;否则输出no. 57.编程实现:计算1到100之间的奇数之和及偶数之和。 58.请编程实现:求100个任意整数的累加和。
59.请编程实现:求1到100之间所有能被3整除,但不能被5整除的数的和。
60.请编程实现:输入任意正整数n,计算n!并将结果输出,输出结果中没有小数部分。 61.请编程实现:计算1至50中是7的倍数的数值之和。
62.请编程实现:对任意100个整数,统计0的个数及正数的累加和。 63.请编程实现:输入两个整数,判断它们之间的关系(=,等),并清楚地将比较结果输出。 64.请编程实现:输入几个整数,判断其中偶数的个数,并输出结果(要求:数据的个数及原始数据由键盘输入)。
65.请编程实现:输入几个整数,判断其中奇数的个数,并输出奇数的累加和。(要求:数据的个数及原始数据由键盘输入)
66.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示。
67.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值。 68.用for循环语句计算1到20的和,并将结果输出。
69.从键盘输入一行字符,统计出输入的字符个数(注:不要使用strlun函数编程)。 70.编程实现:任意输入10个数,计算所有正数的和,负数的和以及10个数的和。 71.编程实现:求任意20个数中的正数之和及正数的个数,并将结果输出。 72.编程实现:对键盘输入的任意一个四位正整数,计算各位数字平方和。 如:2345 则:计算2*2+3*3+4*4+5*5 73.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程。
74.编程实现:打印100以内个位数为6且能被3整除的所有数 。 75.编程实现:从键盘输入若干个整数(数据个数应不少于50),其值在0至4的范围内,用-1作为输入结束的标志,统计每个整数的个数。 76.编写一个函数sort,将放到一维数组中的若干个数按从大到小的顺序排序;在主函数中输入若干个数到一个一维数组中,调用sort,对该数组进行排序,在主函数中将原数组和排好序的数组输出。
77.输入一个正整数,将其用质因子的乘积表示,并输出结果,格式为:12=2×2×3。
78.输入一个正整数,求出它的质因子的和,并输出结果,格式为:12的质因子和=2+2+3=7。 79.编写一个函数,判断一个正整数是否为完数:如果一个数的除它本身以外的所有因数之和等于它本身,则它就是完数。主函数中找出1000以内的所有完数。
80.编写函数GCD,求两个正整数的最大公约数,主函数中输入任意5个正整数,调用函数GCD,求出这5个数的最大公约数和最小公倍数。
81.编函数isprime判断正整m是否为素数;如果是素数,返回正整数1,否则返回0;主函数中调用isprime,找出2到1000之间的所有素数。
82.一维数组a中的若干个数已按从小到大的顺序有序;在主函数中输入一个数,将其插入到该数组中,使得原数组依然按原序有序,分别输入原数组和插入新元素之后的数组。 83.有5个国家名,编程实现按字母先后顺序排序,然后分别输出原数组和排序之后的数组。 84.有一行文字,要求删去其中的某个字符,此行文字和要删的字符均由键盘输入,分别输出原文字和删除之后的文字(注:原文字中的所有和要删除字符相同的字符完全删除)。 85.打印如图所示的杨辉三角,要求打印出n行,n由键盘输入。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 „„„
86.编一个函数实现将一个整型的一维数组中的数逆序存放,不使用辅助数组。主函数输入一个整型的一维数组,调用上述函数,将该数组逆置,将结果输出。
87.编写一个函数convert,求一个方阵的转置矩阵;主函数中输入方阵的阶数和方阵,在主函数中将原矩阵和转置矩阵按原格式输出。
88.求∏值,精度为10-5:∏/4≈1-1/3+1/5-1/7+„„
89.用公式计算:e≈1+1/1!+1/2! „+1/n!,精度为10-6。 90.有一分数序列
2/1,3/2,5/3,8/5,13/8,21/13
求该序列的前20项之和。
91.编一个子函数GCD,求两个正整数的最大公约数,主程序输入n个自然数,调GCD,求出这n个数的最大公约数。 92.写函数求sin(x)的值。计算公式为:Sin(x)=X-X3/3!+X5/5!-X7/7!+ „+(-1)n-1X2n-1/(2n-1)!。 93.编一函数使用冒泡法对若干个整数按从小到大的顺序排序,主函数中输入若干个整数到一个一维数组中,调用排序函数,将其排序,最后将原数组和排好序的数组输出。
94.求一个m行n列的二维数组中的这样一个原素;它在它所在的行为最大,在它所在的列为最小。
95.编写一个函数求给定字符串长度,主函数中输入一个字符串,调用该子函数,求出该字符串的长度,输出。
96.编写一个函数将给定字符串复制到另一个字符串中去,主函数中输入一个字符串,调用该子函数,复制出另一字符串,将两个串输出。
97.写函数求Cos(x)=1+X2/2!-X4/4!+X6/6!- „+(-1)nX2n/(2n)!。
98.编写一个函数将给定字符串中的大写字母转换成小写字母,主函数中输入一个字符串,调用该子函数,进行转换,将原字符串及转换后的字符串输出。 99.编写一个函数将给定的两个字符串连接成一个字符串:
格式为:strcat(ch1,ch2);
功能:将ch2复制到ch1的后面;
主函数中输入两个字符串,调用该子函数,求出连接之后的字符串,将两个原字符串及连接之后的结果串输出。
100.用40元钱买苹果、西瓜和梨共100个,且三种水果都有。已知苹果0.4元一个,西瓜4元一个,梨0.2元一个。问可以买多少个?编程输出所有购买方案。 101.编程:建立一个3×3的二维整数数组,求两条对角线上元素值得和,并将结果输出。(用函数调用方式编程)
102.编程计算:1*2*3+3*4*5+„„+99*100*101的值。 103.有一个5×4的矩阵,编程实现:找出该矩阵中每行元素的最大值,并使该值成为该行的首列元素。
104.编写一个程序,使输入的一个字符串按反序存放在一字符数组中,然后输出。要求:
(1)在主调函数中输入字符串;
(2)写函数完成由主调函数传递来的字符串按反序存放;
(3)在主调函数中输出结果。
105.从键盘输入五个字符串,分别求出字符串中长度最长和最短的字符串,请编程。(要求:不要使用strlen(_)函数编程)
106.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。请编程实现。
107.写一个判断素数的函数,在主函数中调用素数的判断函数,求出2到1000之间的素数的累加和,将结果输出,请编程。
108.编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。
109.请编程实现:将两个字符串s1和s2比较,如果s1>s2,输出一个正数;s1要求:不要用strcpy函数,两个串用gets函数读入,输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCⅡ码的差值。
110.编写一个函数,由实参传来一个字符串,把串中所有大写字母变成相应的小写字母;原串中所有的小写字母变成相应的大写字母,在主函数中输入原字符串和输出变换后的字符串,请编程。
111.编程实现:由键盘输入的任意一组字符中统计出大写字母的个m和小写字母的个数n,并输出m、n中的较大者。
112.定义一个含有30个整形元素的数组,按顺序分别赋予从2开始的偶数,然后按顺序每五个数求出一个平均值,放在另一个数组中并输出,请编程。
113.输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:
(1)能同时被3,5,7整除;
(2)能被其中两数(要指出哪两个数)整除;
(3)能被其中一个数(要指出哪个数)整除。
C语言作业
⒈36人一次搬36块砖,男搬4,女搬2,两个小孩抬一块。要一
次搬完。问:男、女、小孩要多少?
⒉ 找出1000以内的完数,所谓完数是指该数的各因子之和等于
该数,如6=1+2+3。
⒊证明6到200以内的数,符合哥德巴赫猜想(一个大于6的偶
数,可以分解成两个质数之和)。
⒋奇妙的算式:用字母代替十进制数字写出如下算式.
EAGL
L
请找出这些字母代表的数字.LGAE
⒌求自然数m和n的最大公约数(用while循环实现)。 提示:①比较m和n的大小,如n>m,两者交换; ②求m被n除的余数k;
③如果k为0,除数n为最大公约数;
④如果k不为0,原除数作为新的被除数m,余数作为新除数, 继续②。
⒍用迭代法求cosX。
⒎求Fibonacci级数
1,1,2,3,5,8,13,21,34….
⒏用牛顿迭代法求方程f(x)=0的根。(必做!)
⒐通过梯形法求y = (x2x3)dx2
0 输出结果。
⒑求1000以内能被73或127整除的自然数平方根之和。 ⒒求100----200之间的所有能被3以及7整除的自然数的平方根
之和。
⒓求级数a=2/1 + 3/2 + 5/3 +8/5 +13/8+21/13…的前30项之和。 ⒔求数列41+n(n –1)最小非素数项的序号(n > 2)。
⒕求满足以下条件的数:
该数大于100小于1000;
其个位数与十位数的平方和等其百位数的立方。
⒖求级数e=1+1/1! +1/2! +1/3!+…
要求:求n项(n由键盘输入)或最后一项小于10-6结束。 ⒗输入三边a、b、c判断是否能构成三角形,如能构成三角形, 要求通过海伦公式计算其面积。
注:⑴海伦公式
sp(pa)(pb)(pc),pabc
⑵构成三角形的条件:任意两边只和大于第三边。
⒘求1500内的最大五个素数之和。
⒙一包海鲜单价为46.5元,如果购买100包至300包则按95%优
惠;若购买301包至500包,则按85%优惠;如果购买501包至1000
包,则按80%优惠;若购买1000包以上,按70%优惠。试编写一个
计算顾客购买X包海鲜所需金额,且打印购买数量、单价和总金额
的程序。
⒚编程输出1~1000中所有个位数是7的素数,统计其个数,并
求满足该条件数的和,输出结果。
⒛编写程序求:
y11
121
23...1
n(n1)
21.父亲今年30岁,儿子今年6岁,问多少年后,父亲的年龄是 儿子的2倍?
22.将1元人民币换成5分、2分、1分的硬币有多少种换法?
23.一只猴子摘了一堆桃,每天吃一半再加1个,第10天去吃时只剩1个桃,问第一天的一堆桃有多少?
24.一个4位数,逆向排列后是原4位数的倍数,求出符合条件
的
4位数。
25.一个球从100米高度落下,每次反弹回原高度的一半,求第 10次落地时球的行程及下次反弹的高度。
26.输出公元1000年至今所有闰年。
闰年的条件自查!
27.用三种不同的方法计算。(方法自选三种)
28.用连分数求:
21
2
2
21111
2...
29.某地刑警大队对涉及6个嫌疑人的一桩疑案进行分析:⑴ A、B至少有1人作案;
⑵ A、E、F ,3人中至少有2人参与作案;
⑶ A、D不可能是同案犯;
⑷ B、C或同时作案,或都与本案无关;
⑸ C、D中有且仅有一人作案;
⑹ 如果D没有参与作案,则E也不可能参与作案。编程找出作案人。
30.阿米巴用简单分裂的方式繁殖,它每分裂一次要用 3 分钟。将若干个阿米巴放在一个盛满营养参液的容器内, 45 分钟后容器内充满了阿米巴。已知容器最多可以装阿米巴 220个。试
问,开始的时候往容器内放了多少个阿米巴?
2、下列叙述中错误的是_______。(标准答案:A) (A)一个C语言程序只能实现一种算法
(B)一个C函数可以单独作为一个C程序文件存在 (C)C程序可以由一个或多个函数组成
(D)C程序可以由多个程序文件组成
4、以下叙述中错误的是_____________。(标准答案:A)
(A)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令 (B)C语言源程序经编译后生成后缀为.obj的目标程序
(C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中 (D)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
13、以下叙述中错误的是A (A)使用三种基本结构构成的程序只能解决简单问题 (B)C语言是一种结构化程序设计语言 (C)结构化程序由顺序、分支、循环三种基本结构组成
(D)结构化程序设计提倡模块化的设计方法
18、以下关于结构化程序设计的叙述中正确的是
(A)一个结构化程序必须同时由顺序、分支、循环三种结构组成 (B)有三种基本结构构成的程序只能解决小规模的问题 (C)在C语言中,程序的模块化是利用函数实现的 (D)结构化程序使用goto语句会很便捷 标准答案:C
19、对于一个正常运行的C程序,以下叙述中正确的是C (A)程序的执行总是从main函数开始,在程序的最后一个函数中结束 (B)程序的执行总是从程序的第一个函数开始,在main函数结束 (C)程序的执行总是从main函数开始
(D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
33、以下选项中关于程序模块化的叙述错误的是
(A)把程序分成若干相对独立的模块,可便于编码和测试
(B)可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序 (C)把采用分成若干相对独立、功能单一的模块,可便于重复使用这些模块
(D)可采用自顶向上、逐步细化的设计方法把若干独立模块组装成所要求的程序 标准答案:D
34、以下叙述中正确的是
(A) C程序中的注释只能出现在程序的开始位置和语句的后面 (B) C程序书写格式严格,要求一行内只能写一个语句 (C)用C语言编写的程序只能放在一个程序文件中 (D) C程序书写格式自由,一个语句可以写在多行上 标准答案:D
36、以下关于C语言数据类型使用的叙述中错误的是 (A)若只处理“真”和“假”两种逻辑值,应使用逻辑类型 (B)若要保存带有多位小数的数据,可使用双精度类型 (C)整数类型表示的自然数是准确无误差的
(D)若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型
38、以下叙述中错误的是
(A) C程序在运行过程中所有计算都以二进制方式进行(B) C程序在运行过程中所有计算都以十进制方式进行
(C) C程序中字符变量存放的是字符的ASCII值 (D)所有C程序都需要编译链接无误后才能运行
1.功能:计算并输出给定整数n的所有因子之和(不包括1与自身)。 注意:n的值不大于1000。
例如:n的值为12时,除了1和12外的因子有
2、
3、
4、6,和为15,应输出15 int s=0,i; for(i=2;i素数并放在aa数组中,该函数返回所求出素数的个数。
int n=0; int i,j; for(i=lim;i<=100;i++) {for(j=2;j
于1000的整数)。 long y=0; int i; for(i=1;i<=w;i++) if(i%2==1)y+=i; return y; 4.功能:能计算从1开始到n的自然数的和,n由键盘输入,
并在main()函数中输出。请使用for循环实现
int sum,i; sum =0; for(i=1;i<=n;i++) {sum=sum+i;} return(sum); 5.功能:编写程序, 使用循环将矩阵(3行3列)各元素值乘2 。 例如:输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 200 400 600 800 1000 1200 1400 1600 1800
int i,j; for(i=0; i < 3; i++) for(j=0; j < 3; j++) array[i][j]=array[i][j]*2; 6.功能:把20个随机数存入一个数组,然后输出该数组中的最大值 int i,max=0; for(i=1; i 公式的值:y=1+1/3+1/5+1/7+...+1/(2m+1) 例如:若m=9,则应输出:2.133256 double y=1; int i; for(i=1; i<=m; i++) {y+=1.0/(2*i+1); } return(y); 8.功能:判断m是否为素数。 int i,k=1; if(m<=1) k=0; for(i=2;i所求出素数的个数。 int n=0; int i,j; for(i=2;i<=lim;i++) {for(j=2;j
为整数),然后输出主对角线元素的平方和。fun() 函数的功能为求对角线元素的和。程序中如果用到
循环,必须使用for循环。 int sum; int i; sum=0;
for(i=0;i<3;i++) sum=sum+a[i][i]*a[i][i];
return sum; 11.功能:求一个给定字符串中的字母的个数。 int i,k=0; for(i=0;s[i]!='\0';i++) if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z') k++; return k; 12.功能:编写函数fun其功能是:根据整型形参m,计算如下
公式的值:y=1/2!+1/4!+...+1/m!(m是偶数)。 double y=0.0; int i,j; double s=1; for (i=2;i<=m;i+=2) { for(j=i-1;j<=i;j++) s=s*j; y=y+1.0/s; } return y;
13、从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。 int min,i; min=x[0]; for(i=1;i在c数的个位和百位上, b数的十位和个位数依次放
在c数的十位和千位上。
例如: 当a=45,b=12, 调用该函数后, c=2514。 *c=a/10+a%10*100+b/10*10+b%10*1000; 15.功能:编写函数判断一个整数m的各位数字之和能否被7整除,
可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。 int k,s=0; do {s=s+m%10; m=m/10; }while(m!=0);
3
if(s%7==0)k=1; else k=0; return(k); 16.功能:将主函数中输入的字符串反序存放。
例如:输入字符串"abcdefg",则应输出"gfedcba"。 int i,j; char c; for(i=0,j=n-1;i最小值。其中确定最小值的下标的操作在fun函数中
实现,请给出该函数的定义。 int i,min=0; for(i=1; i list[i]) min=i; return min; 18.功能:编写函数对数组中的数据进行从小到大的排序。 -----------------*/
int i,j,t; for(i=0;ia[j+1]) {t=a[j]; a[j]=a[j+1]; a[j+1]=t; } ------------------- 19.功能:从低位开始取出长整型变量s奇数位上的数,依次构成一个新数放在t中。
例如:当s中的数为:7654321时,t中的数为:7531。 long sl=10; t = s % 10; while(s > 0) { s = s/100; t = s%10*sl + t; sl = sl * 10;
20.求一个正整数的各位数字的立方和。 int d,k,s=0; 4
while (n>0) {d=n%10; s+=d*d*d; n/=10; } return s; 21.求给定正整数n以内的素数之积。(n<28) long i,k; long s=1; for(i=2;i<=n;i++) {for(k=2;k
例如:主函数中给出的矩阵的两条对角线的和为45。 int s=0; int i,j; for(i=0;i=0.000001) { e=e+jc; j=1; for(k=1;k<=i;k++) j=j*k;
5
jc=1.0/j; i++; } 24.请编一个函数: void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。二维数组中的数已在主函数中赋予。 int i,j; for(j=0;j26.功能:从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的平方根 (x>4) z=x的八次幂 (4>x>-4) z=4/(x*(x+1)) (-4>x>-10) z=|x|+20 (其他) 提示:x的八次幂请使用幂函数pow求得,平方根函数是sqrt。 float z; if(x>4) z=sqrt(x-4); else if(x>-4) z=pow(x,8); else if(x>-10) z=4/(x*(x+1)); else z=fabs(x)+20; return(z); 27.功能:从低位开始取出长整型变量s中偶数位上的数,依次 构成一个新数放在t中。
例如:当s中的数为:7654321时,t中的数为:642。 long sl=10; s /= 10; t = s % 10;
6
while(s > 0) { s = s/100; t = s%10*sl + t; sl = sl * 10; 28.功能:求一组数中大于平均值的数的个数。
例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3 int i,k=0; float s=0,ave; for(i=0;iave)k++; return k; 29.功能:编写函数fun,求任一整数m的n次方。 long int x=1; int i; for(i=1;i<=n;i++) x=x*m; return x; 30.功能:根据整型形参m,计算如下公式的值:
y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5) 例如:若m=9,则应输出:1.168229 double y=0; int i; for(i=0; i<=m; i++) {y+=1.0/(i+5); } return(y);
31.功能:编写函数fun生成一个主对角线元素为1,其他元素都
为0的3*3的二维数组。 for(i=0;i<3;i++) for(j=0;j<3;j++) if(i==j) arr[i][j]=1; else arr[i][j]=0; 32.功能:调用函数fun判断一个三位数是否"水仙花数"。在main函数中从键盘
输入一个三位数,并输出判断结果。请编写fun函数。
说明:所谓"水仙花数"是指一3位数,其各位数字立方和等于该数本身。 例如:153是一个水仙花数,因为153=1+125+27。 int bw,sw,gw; bw=n/100;sw=(n-bw*100)/10;gw=n%10;
7
if(n==bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1; else return 0;
33.根据整型形参m,计算如下公式的值:y=1/2+1/4+1/6+...+1/2m 。程序中如果用到循环,必须使用for循环。例如:若m=9,则应输出:1.414484 double y=0; int i; for(i=1; i<=m; i++) {y+=1.0/(2*i); } return(y); 34.编写函数判断一个整数能否同时被3和5整除,若能则返回值为1,否则为0。调用该函数求出15~300之间能同时被3和5整除的数的个数。 if(n%3==0&&n%5==0) return(1); return(0);
35.将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上, b数的十位和个位数依次放在c数的个位和百位上。例如:当a=45,b=12。调用该函数后,c=4251。 *c=a/10*1000+a%10*10+b/10+b%10*100;
36.判断整数x是否是同构数。若是同构数,函数返回1;否则返回0。x的值由主函数从键盘读入,要求不大于100。说明:所谓"同构数"是指这样的数,这个数出现在它的平方数的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数。 int k; k=x*x; if((x<10 && k%10==x)||(x>9 && k%100==x)) return 1; else return 0; 37.功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出主对角线元素的积。fun()函数的功能为求对角线元素的积。 int sum; int i,j; sum=1; for(i=0;i<3;i++) sum=sum*a[i][i]; return sum; 38.产生20个随机整数放入二维数组a[5][4]中,利用函数row_sum求每行元素的和,并将和放到另一个数组中。 int i,j; for(i=0;i<5;i++) 8
{ b[i]=0; for(j=0;j<4;j++) b[i]=b[i]+a[i][j]; 39.功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。 例如:若m=9,则应输出:4.121185
double y=0; y=sin(m)*10; return(y); } 40.功能:求出N×M整型数组的最大元素及其所在的行坐标及列坐标
(如果最大元素不唯一,选择位置在最前面的一个)。 例如:输入的数组为:1 2 3 4 15 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。
int max,i,j; max=array [0][0]; Row=0; Col=0; for(i=0;i