寒假C语言113题

时间:2019-05-15 10:28:43下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《寒假C语言113题》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《寒假C语言113题》。

第一篇:寒假C语言113题

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

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),2

y=2x,-1

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)能被其中一个数(要指出哪个数)整除。

第二篇:C语言题集

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 = (x2x3)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判断是否能构成三角形,如能构成三角形,要求通过海伦公式计算其面积。

注:⑴海伦公式

sp(pa)(pb)(pc),pabc

⑵构成三角形的条件:任意两边只和大于第三边。

⒘求1500内的最大五个素数之和。

⒙一包海鲜单价为46.5元,如果购买100包至300包则按95%优

惠;若购买301包至500包,则按85%优惠;如果购买501包至1000

包,则按80%优惠;若购买1000包以上,按70%优惠。试编写一个

计算顾客购买X包海鲜所需金额,且打印购买数量、单价和总金额的程序。

⒚编程输出1~1000中所有个位数是7的素数,统计其个数,并

求满足该条件数的和,输出结果。

⒛编写程序求:

y11

121

23...1

n(n1)

21.父亲今年30岁,儿子今年6岁,问多少年后,父亲的年龄是 儿子的2倍?

22.将1元人民币换成5分、2分、1分的硬币有多少种换法?

23.一只猴子摘了一堆桃,每天吃一半再加1个,第10天去吃时只剩1个桃,问第一天的一堆桃有多少?

24.一个4位数,逆向排列后是原4位数的倍数,求出符合条件的4位数。

25.一个球从100米高度落下,每次反弹回原高度的一半,求第 10次落地时球的行程及下次反弹的高度。

26.输出公元1000年至今所有闰年。

闰年的条件自查!

27.用三种不同的方法计算。(方法自选三种)

28.用连分数求:

21

2

2

21111

2...29.某地刑警大队对涉及6个嫌疑人的一桩疑案进行分析:⑴ A、B至少有1人作案;

⑵ A、E、F,3人中至少有2人参与作案;

⑶ A、D不可能是同案犯;

⑷ B、C或同时作案,或都与本案无关;

⑸ C、D中有且仅有一人作案;

⑹ 如果D没有参与作案,则E也不可能参与作案。编程找出作案人。

30.阿米巴用简单分裂的方式繁殖,它每分裂一次要用 3 分钟。将若干个阿米巴放在一个盛满营养参液的容器内,45 分钟后容器内充满了阿米巴。已知容器最多可以装阿米巴 220个。试

问,开始的时候往容器内放了多少个阿米巴?

第三篇:C语言程序设计题

【第1题】题目:请编写函数fun,对长度为7的字符串,除首、尾字符外,将其余5个字符按将序排列。例如,雨来的字符串为CEAedca,排序后输出为CedcEAa。Int fun(char *s,int num){ Int i,j;chat t;for(i=1;i=2)&&(b<10)){k--;if((k%13= =0)| |(k%17= =0)){a=a+k;b++;} } Return a;} 【第3题】题目:产生15个[20,80]上的随机整数:用顺序法(比较法)按从小到大排序输出。

void fun(int a[], int n){ int I,j,t;for(i=0;i[j]){t=a[i];a[i]=a[j];a[j]=t;} } 【第4题】题目:请编写函数fun,它的功能是:判断m是否为素数。主函数的功能是:求出100到200之间的素数的个数。int fun(int m){int i,j;int k=1;if(m<=1)k=0;for(i=2;is[k])k=I;return(k=1);{ 【第7题】题目;编写函数fun其功能是:判断一个整数w的各位数字平方之和能否被5整除,可以被5整除则返货1,否则返回0。int fun(int w){ int k,s=0;do {s=s+(w%10)*(w%10);w=w/10;}while(w!=0);if(s%5= =0)k=1;else k=0;return(k);} 【第8题】题目:编写函数fun其功能是:求给定正整数n以内的素数之积。(n<28)long fun(int n){ long i,k;long s=1;for(i=2;i<=n;i++){for(k=2;ka[i])k++;return(k);} 【第13题】题目:用函数将第2个字符串连接到第1个字符串之后,不允许使用strcat函数。

void len_cat(char cl[],char c2[]){ int i,j;for(i=0;c1[i]!=’’;i++);

for(i=0;c2[i]!=’’;i++)cl[i+j]=c2[j];cl[i+j]=’’;} 【第14题】题目:编写函数fun,函数的功能是:找出一批正整数中的最大的偶数。int fun(int a[],int n){ int i,amax=-1;for(i=0;iamax)amax=a[i];return amax;} 【第15题】题目:编写函数fum,函数的功能是:求一个给定字符串中的字母的个数。

int fun(char s[]){ int i,k=o;for(i=0;s[i]!=’’;i++)

if(s[i]>=’a’&&s[i]<=’z’||s[i]>=’A’&&s[i]<=’Z’)k++;return k;} 【第16题】题目:从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后再mian函数中输出相应的结论信息。int fun(int n){int i;int j;j=1; if(i<0)j=0;for(i=2;i

int fun(char*str,char*substr){ int I,n=0;for(i=0;i<=strlen(str)-2;i++)if((str[i]=substr[0]&&9str[i+1]==substr[1]))n++;return n;} [第24题]题目: 编写函数fun求1!+2!+3!+……+n!的和,在main函数中由键盘输入n值,并输出运算结果.long fun(int n){ int i;long f=1,s=0;for(i=1;i<=n;i++){f=f*i;s=s+f;} return s;} [第25题]题目:从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出.int fun(int x[],int n){ int min,i;min=x[0];for(i=1;i

int i, k=1; if(m<=1)k=0;for(i=2;i

【第28题】题目:程序的功能是:把20个随机数存入一个数组,然后输出该数组中的最大值。其中确定最大值的下标的操作在fun函数中实现,请给出该函数的定义。int fun(int list[],int size){ int i ,max=0;

for(i=1;i

【第29题】题目:函数fun的功能是:求图1所示数列的第n项。数列为:l/a,l/(l+a),l/(l+(1+a)),l/(l+(l+(l+a))),…… float fun(int n){ float a=1;int i;for(i=1;i

if(year%400==0||&&(year%100!=0))flag=1;else flag=0;return(flag);} 【第33题】题目:编写函数fun,函数的功能是:求一个四位数的各位数字的立方和。int fun(int n){ Int d,k,s=0;While(n>0){d=n%10;s+=d*d*d;n/=10;} return s;} 【第34题】题目:求一批数中最大值和最小值的差。Int max_min(int a[],int n){ int i,max,min;max=min=a[0];for(i=1;imax)max=a[i];else if(a[i]a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;} } 【第37题】题目:请编写一个函数fun,函数的功能是:统计出若干个学生的平均成绩,最高分一级最高分的人数。例如,输入10名学生的成绩分别为92.87.68.56.92.84.67.75.92.66.则输出平均成绩77.9。最高92.最高分人数3人。float Max=0;int J=0;float fun(float array[],int n){int i.j=0;float sum=0,ave;max=array[0];for(i=0;i,n;i++){if(Max,array[i])Max=array[i];Sum=sum+array[i];} ave=sum/n;for(i=0;I,n;i++)if(array[i]==max)J++;return(ave);} [第38题]编写函数fun,函数功能是:计算n门功课的平均值,计算结果作为换数值返回。5门成绩92.76.69.58.88,函数的值72..599998。float fun(int a[]int n){ int i; float y=0;

for(i=0;ia[j])k=j;if(k!=i){t=a[i];a[i]=a[k];a[k]=t;} } } 【第42题】 题目:从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。int fun(int x[],int n){int min,I;min=x[0];for(i=1;i

Int fun(char s[]){ int ik=0;for(i=0;s[i]!=’’;i++)

if(s[i]>=’a&&s[i]<=’z’||s[i]>=’A’&&s[i]<=’Z’)k==;return k;} 【第44题】 题目:编写函数fun,函数的功能是:从字符串s中删除指定的字符c。fun(char s[],char c){int I,k=0;for(i=0;s[i]!=’’;i++)if(s[i]!=c)s[k++]=s[i] s[k]=’’;} 【第45题】题目:函数fun主要功能是:从一个数组中查找出最大值在数组中的位置(从0开始),并把其内存地址返回。

说明:pos保存最大值在数组中的位置:p保存最大值内存地址。int*fun(int *s,int t,int *pos){int I,*p;p=s;for(i=1;i

[第47题目]题目: 编写函数fun,函数的功能是:求1到100之间的偶数之积.double fun(int m){ double y=1;int i;for(i=1;i<=m;i++)if(i%2==0)y*=i;return y;} [第48题]题目: 请编写一个函数fun,函数的功能是:输入一个字符串,过滤此串,只保留串中的字母字符,并统计新生成串中包含的字母个数.例如:输入的字符串为ab234sdf4,新生成的串为abdf.fun(char*ptr){int i,j;for(i=0,j=0;*(ptr+i)!=’’;i++)

if(*(ptr+i)<=’z’&&*(ptr+i)>=’a’||*(ptr+i)<’Z’&&*(ptr+i)>=’A’ {*(ptr+j)=*(ptr+1);j++;} *(ptr+j)=’’;return(j);} [第49题]题目:从键盘输入任意实数,求出其所对应的函数值 z=e的x次幂(x>10)答案: double z;if(x>10)z=exp(x);else if(x>-3)z=log(x+3);else z=sin(x)/(cos(x)+4);return(z);[第50题]题目:功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出主对角线元素的积,并在答案:----------------------int sum;int i,j;sum=1;for(i=0;i<3;i++)sum=sum*a[i][i];return sum;[第51题]题目:功能:求1到100之间的偶数之积。答案:----------------------double y=1;int i;for(i=1;i<=m;i++)if(i%2==0)y*=i;return y;[第52题]题目:功能:求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最答案:----------------------int max,i,j;max=array [0][0];Row=0;Col=0;for(i=0;i='0'&&s[i]<='9'')k++;return k;[第55题]题目:功能:对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。

答案:----------------------int i,j;char t;for(i=1;i0){d=n%10;s+=d*d*d;n/=10;} return s;[第59题]题目:功能:从低位开始取出长整型变量s奇数位上的数,依次构成一个新数放在t中。

答案:----------------------long sl=10;t = s % 10;while(s > 0){ s = s/100;t = s%10*sl + t;sl = sl * 10;[第60题]题目:功能:计算并输出给定整数n的所有因子之和(不包括1与自身)。答案:----------------------int s=0,i;for(i=2;i='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z')k++;return k;[第62题]题目:功能:能计算从1开始到n的自然数的和,n由键盘输入,并在main()函数中输出。

答案:----------------------int sum,i;sum =0;for(i=1;i<=n;i++){sum=sum+i;} return(sum);[第63题]题目:功能:请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二答案:----------------------int i,j;for(j=0;jpp[j])pp[j]=tt[i][j];[第64题]题目:功能:求一组数中大于平均值的数的个数。答案:----------------------int i,k=0;float s=0,ave;for(i=0;iave)k++;return k;[第65题]题目:功能:求大于lim(lim小于100的整数)并且小于100的所有素数并放在aa数组中,该函数返回所求 答案:----------------------int n=0;int i,j;for(i=lim;i<=100;i++){for(j=2;j='A' && str[i]<='Z')str[i]=str[i]+32;[第67题]题目:功能:从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后在main函数中输出相应的答案:----------------------int i;int j;j= 1;for(i=2;i

答案:----------------------char *q=s;for(;*q;q++)if(*q!= c)*(s++)=*q;*s=0;[第69题]题目:功能:对长度为8个字符的字符串,将8个字符按降序排列。答案:----------------------int i,j;char t;for(i=0;i

int i;float sum=0,ave;Max=array[0];for(i=0;i='a'||*(ptr+i)<='Z' && *(ptr+i)>='A'){*(ptr+j)=*(ptr+i);j++;} *(ptr+j)='';return(j);[第77题]题目:.功能:找出一批正整数中的最大的偶数。答案: int i,amax=-1;for(i=0;iamax)amax=a[i];return amax;[第78题]题目:.功能:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是: 将a数的十位和个位

答案:*c=a/10+a%10*100+b/10*10+b%10*1000;

第四篇:C语言概念题

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程序都需要编译链接无误后才能运行

第五篇:c语言编程题答案

六、编程题参考答案

1.编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。#include “stdio.h” #define N 50 void main(){ float x;unsigned int s1,s2,s3,i;s1=s2=s3=0;for(i=1;i<=N;i++){ scanf(“%f”,&x);if(x<0)s1++;else if(x==0)s2++;else s3++;} printf(“负数%u个,零%u个,正数%u个n”,s1,s2,s3);}

2.编程,计算并输出方程 X2+Y2=1989 的所有整数解。#include “stdio.h” void main(){ int x,y;for(x=-45;x<=45;x++){ y=-45;while(y<=45){ if(x*x+y*y==1989)printf(“%d*%d+%d*%d=%dn”,x,x,y,y,1989);y++;} } }

3.编程,输入一个10进制正整数,然后输出它所对应的八进制、十六进制数。#include “stdio.h” void main(){ unsigned int x;printf(“请输入一个十进制正整数:”);scanf(“%u”,&x);printf(“%d=八进制数 %o=十六进制数%xn”,x,x,x);}

4.编程,找出1000以内的所有完数,并输出其因子。#include “stdio.h” void main(){ int i,j,s=1;for(i=1;i<=1000;i++,s=1){ for(j=2;j<=i/2;j++)if(i%j==0)s+=j;// 求 i的因子和

if(s==i){ printf(“%d=1”,i);// 如果i 是完数则输出其各因子

for(j=2;j<=i/2;j++)if(i%j==0)printf(“+%d”,j);printf(“n”);} } }

5.输入一个正整数,输出它的所有质数因子。#include “stdio.h” void main(){ int m,i=2;printf(“请输入一个整数:”);scanf(“%d”,&m);while(m!=1)if(m%i==0){ printf(“%d ”,i);m/=i;} else i++;printf(“n”);}

6.输入20个整数,输出其中能被数组中其它元素整除的那些数组元素。#include “stdio.h” #define N 20 void main(){ int a[N],i,j;for(i=0;i

7.输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素。#include “stdio.h” #define NA 6 #define NB 8 void main(){ float a[NA],b[NB];int i,j;for(i=0;i

8.输入两个数组(数组元素个数自定),输出在两个数组中都不出现的元素。#include “stdio.h” #define NA 6 #define NB 8 void main(){ float a[NA],b[NB];int i,j;for(i=0;i

9.编程,将字符数组S2中的全部字符拷贝到字符数组S1中。#include “stdio.h” void main(){ char s1[20],s2[]=“Good morning!”;int i=0;while((s1[i++]=s2[i])!='');printf(“%sn”,s1);}

10.给定年份year,判别该年份是否闰年(定义一个宏以判别该年份是否闰年)。#include #define f(year)year%4==0&&year%100!=0||year%400==0 void main(){ int y;printf(“请输入年份:”);scanf(“%d”,&y);if(f(y))printf(“%d 年为闰年n”,y);else printf(“%d 年不是闰年n”,y);}

11.输入一行小写字母后,或输出原文,或将字母变成其下一字母(a变成b、b变成c、„、x变成y、y变成z、z变成a)输出,用条件编译方法实现以上选择。#include #define MAX 80 #define SWITCH 1 void main(){ char str[MAX];int i=0;printf(“请输入文本行:n”);scanf(“%s”,str);#if(SWITCH)while(str[i]!='')if(str[i]>='a'&&str[i]<='z')if(str[i]=='z')str[i]='a';else str[i]++;i++;#endif printf(“%sn”,str);}

12.编写函数,处理n行n列维数组:将每一行的元素同除以该行上绝对值最大的元素。

#include “stdio.h” #include “math.h” void div(float** a,int n){ int i,j;float x;for(i=0;ifabs(x))x=*(*(a+i)+j);for(j=0;j

{ float b[3][3]={{1,2,3},{4,5,6},{7,8,9}};int i,j;float* c[3];for(i=0;i<3;i++)c[i]=b[i];div(c,3);for(i=0;i<3;i++){ for(j=0;j<3;j++)printf(“%f ”,b[i][j]);printf(“n”);} }

13.编写函数,求任意阶多项式 a0+a1X+a2X2+...+anXn 的值并返回多项式的值。#include “stdio.h” float f1(float* a,float x,int n){ int i;float t=1,y=0;for(i=0;i

14.设计一个函数,使给出一个数的原码,能得到该数的补码。

#include // 假定sizeof(int)为2;

unsigned int getbit(unsigned int value)//第1位为0表示数的原码,{ if(value>>15)return(value^0x7fff)+1;//其补码即其原码;若value else return value;//右移15位后为1,表示value是负数的原码,负数

} //的补码为原码按位取反(第1位不变)后加1。

void main(){ unsigned int y=0x800c,k;k=getbit(y);printf(“%xn”,k);}

15.编写函数,求m行、n列的二维数组全体元素中负数的个数。#include int sum(float **a,int m,int n){ int i,j;int y=0;for(i=0;i

{ float b[2][3]={{-1,2,-3},{4,-5,-6}};int i;float* c[2];for(i=0;i<2;i++)c[i]=b[i];printf(“%dn”,sum(c,2,3));} 16.编写函数,返回在一个整数组中出现次数最多的数及其出现次数。#include void fun(float *a,int n,int *k,float *x){ int i,j,y;*k=0;for(i=0;i*k){ *k=y;*x=*(a+i);} } return;} void main()// 函数引用示例

{ float c[10]={0,4,2,4,3,2,4,-3,1.5,7.6},t;int m;fun(c,10,&m,&t);// 若说明float *t;int *m;printf(“元素%f出现次数为%dn”,t,m);// 引用为 fun(c,10,m,t)将

} // 产生悬挂指针的错误,即t、m不只指向确定的存储单元。

17.编一个程序,打入月份号,输出该月的英文月名,要求用指针数组处理。#include void main(){ char *month_name[12]={“January”,“February”,“March”,“April”, “May”, “June”,“July”,“August”,“September”,“October”, “Novenber”,“December”};int n;printf(“请输入月份号:”);scanf(“%d”,&n);if(n<1||n>12)printf(“月份号输入错误!n”);else printf(“%d月的英文表示是%sn”,n,month_name[n-1]);}

18.编写递归函数,将输入的以“?”结束的字符串按与输入相反的顺序输出。#include void pline(){ char ch;if((ch=getchar())!='?'){ pline();putchar(ch);} return;} void main()// 函数引用示例 { pline();printf(“n”);}

19.编写函数,在n个元素的一维数组中,统计比相邻元素大的数组元素个数并将统计数返回(不考虑a[0]和a[n-1]),要求以指针变量而不是数组名作参数。#include int num(float *x,int n){ int i,k=0;for(i=1;i*(x+i-1)&&*(x+i)>*(x+i+1))k++;return k;} void main()// 函数引用示例

{ float a[10]={1,3,4,2,6,7,12,5,9,8};printf(“%dn”,num(a,10));}

20.编写函数,在n个元素的一维数组中,找出最大值、最小值并传送到调用函数。

#include void num(float *b,int n,float *max,float *min){ *max=*b;*min=*b;for(int i=1;i*max)*max=*(b+i);if(*(b+i)<*min)*min=*(b+i);} return;} void main()// 函数引用示例

{ float a[10]={1,3,4,2,6,7,12,5,9,8},x,y;num(a,10,&x,&y);printf(“最大值为%f,最小值为%f。n”,x,y);}

21.编写一个函数,统计m行n列二维数组中有多少个正数、多少个负数,多少个零,并

返回统计结果。

#include void sub(float** a,int m,int n,int *fs,int *lin,int *zs){ int i,j;*fs=*lin=*zs=0;for(i=0;i

{ float b[5][3]={{-1,5,2},{3,0,-2},{0,-3,5}, {4,7,-8},{3,4,5}},*c[5];int i,k1,k2,k3;for(i=0;i<5;i++)c[i]=b[i];sub(c,5,3,&k1,&k2,&k3);printf(“负数%d个,零%d个,正数%d个。n”,k1,k2,k3);}

22.编写函数,在给定的一行以'.'结束的字符中,找出最长的单词并输出。#include void find(char *str){ char *p1,*p2,*p3;int k1=0,k2=0;// k1为最长串的长度,初值为0。

p1=p2=p3=str;// p3指向最长串首字符,p1指向当前处理串首字符,while(*p2!='.')// p2为移动指针,*p2为空格表示查找到单词尾部。

if(*p2!=' '){ k2++;p2++;} else if(k2>k1){ p3=p1;p1=++p2;k1=k2;k2=0;} else { k2=0;p1=++p2;} for(k2=0;k2<=k1;k2++)printf(“%c”,*(p3+k2));printf(“n”);return;} void main()// 函数引用示例 { char a[40];int i=0;while((a[i++]=getchar())!='.');find(a);}

23.编写函数print,打印一个学生的成绩数组,该数组中有若干个学生的数据记录,每个记录包括num,name,score[3]。#include struct student { char num[7],name[9];int score[3];};// 尾部分号不得遗漏

void print(struct student* s,int n){ int i;// 运算符'*'、'&'的优先级均低于运算符'.' for(i=0;i

printf(“%s %s %4d%4d%4dn”,(*(s+i)).num,(*(s+i)).name,(*(s+i)).score[0],(*(s+i)).score[1],(*(s+i)).score[2]);return;} void main(){ struct student t[4];int i;for(i=0;i<4;i++)

scanf(“%s%s%d%d%d”,&t[i].num,&t[i].name,&t[i].score[0], &t[i].score[1],&t[i].score[2]);print(t,4);} 24.把文本文件d1.dat复制到文本文件d2.dat中,要求仅复制d1.dat中的英文字符。

#include void main(){ FILE *fpd1,*fpd2;char ch;fpd1=fopen(“d1.dat”,“r”);fpd2=fopen(“d2.dat”,“w”);while(fscanf(fpd1,“%c”,&ch)!=EOF)if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')fprintf(fpd2,“%c”,ch);fclose(fpd1);fclose(fpd2);}

25.编程,把文本文件d1.dat复制到d2.dat(其中空格字符不复制)。#include void main(){ FILE *fpd1,*fpd2;char ch;fpd1=fopen(“d1.dat”,“r”);fpd2=fopen(“d2.dat”,“w”);while(fscanf(fpd1,“%c”,&ch)!=EOF)if(ch!=' ')fprintf(fpd2,“%c”,ch);fclose(fpd1);fclose(fpd2);}

26.编程,把文本文件d1.dat复制到d2.dat(其中大写英文字母要转换为小写字母)。

#include void main(){ FILE *fpd1,*fpd2;char ch;fpd1=fopen(“d1.dat”,“r”);fpd2=fopen(“d2.dat”,“w”);while(fscanf(fpd1,“%c”,&ch)!=EOF){ if(ch>='A'&&ch<='Z')ch=ch+32;fprintf(fpd2,“%c”,ch);} fclose(fpd1);fclose(fpd2);}

27.把文本文件d1.dat复制到文本文件d2.dat中,要求仅复制d1.dat中除英文字符和数字以外的其它内容。#include void main(){ FILE *fpd1,*fpd2;char ch;fpd1=fopen(“d1.dat”,“r”);fpd2=fopen(“d2.dat”,“w”);while(fscanf(fpd1,“%c”,&ch)!=EOF)

if(!(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z'||ch>='0'&&ch<='9'))fprintf(fpd2,“%c”,ch);fclose(fpd1);fclose(fpd2);}

28.求出1至100之间的素数(只能被1和自身整除的数)并顺序写入文件su.dat。

#include #include void main(){ FILE *fp;int i,j,k=2;fp=fopen(“su.dat”,“w”);fprintf(fp,“%4d%4d”,2,3);for(i=5;i<100;i=i+2){ for(j=3;j<=sqrt(i);j=j+2)if(i%j==0)break;if(j>sqrt(i)){ fprintf(fp,“%4d”,i);k++;if(k%10==0)fprintf(fp,“n”);} } fclose(fp);}

29.磁盘文件a1和a2,各自存放一个已按字母顺序排好的字符串,编程合并二个文件到a3 文件中,合并后仍保持字母顺序。#include #include void main(){ FILE *fp1,*fp2,*fp3;int i,j,k;char c1,c2;fp1=fopen(“a1”,“r”);fp2=fopen(“a2”,“r”);// 首先从文件a1、a2中各读入一个字符分别送入变量c1、c2,下面将作

// 循环比较,直到读到文件尾标志为止。

fp3=fopen(“a3”,“w”);c1=fgetc(fp1);c2=fgetc(fp2);do { if(c1

30.顺序文件C.DAT每个记录包含学号(8位字符)和成绩(三位整数)两个数据项。从文件读入学生成绩,将大于或等于60分的学生成绩再形成一个新的文件SCORE60.DAT保存在A盘上,并显示出学生总人数、平均成绩和及格人数。#include #include void main(){ FILE *fp1,*fp2;char s[9];int x,zrs=0,pjcj=0,jgrs=0;fp1=fopen(“c.dat”,“r”);fp2=fopen(“a:score60.dat”,“w”);fscanf(fp1,“%s%d”,s,&x);do { zrs++;pjcj+=x;if(x>=60){ jgrs++;fprintf(fp2,“%s %dn”,s,x);} fscanf(fp1,“%s%d”,s,&x);} while(!feof(fp1));printf(“总人数:%d平均成绩:%d 及格人数:%dn”,zrs,pjcj/zrs,jgrs);fclose(fp1);fclose(fp2);} 31.程序清单:

typedef int datatype;typedef struct node {datatype data;struct node *next;}linklist;„„

INVERT(linklist *head){linklisk *p,*q;p=head->next;if(p!=NULL){head->next=NULL;do {q=p->next;p->next=head->next;head->next=p;p=q;} while(p!=NULL);} } 32.程序清单:

PURGE(linklist *head){linklist *p,*q;q=head->next;if(q==NULL)return;p=q->next;while(p!=NULL)if(p->data==q->data){q=p->next;free(p);p=q->next;} else {q=p;p=p->next;} }

33、程序清单: #include main(){static char x[]=”computer”;char *p;for(p=x;p

34、#include #include main(){int m;char str[80],str2[80];printf(“input a string:n”);gets(str2);printf(“intput m:n);scanf(“%d”,&m);if(strlen(str2)

35、程序清单:

float search(float(pointer)[4],int n){float *pt;pt=*(pointer+n);return(pt);}

36、Main(){int score[][4]={{60,76,80,90},{45,86,57,90},{58,95,80,71},{78,50,60,85}};int(*p)[4],j,k,flag;p=score;for(j=0,j<4;j++)if(*(*(p+j)+k)<60)flag=1;if(flag==1){printf(“NO.%dis fail,svoreare:n”,j);for(k=0,;k<4;k++)printf(“%5d”, *(*(p+j)+k);

printf(“n”);} }

37、程序清单: main(){int b[16],x,k,r,I;printf(“enter a integer :n”): scanf(“%d”,&x);

printf(%6d’s binary number is:n”,x);k=-1;do {r=x%2;k++;*(b+k;x/=2;}while(x!=0 for(I=k;I>=0;I--)printf(“%d”,*(b+i)printf(“n”);} 38、float p(int n,int x){flaot t,t1,t2;if(n==0)return(1);else if(n==1)return(x);else {t1=(2*n-1)*x*(p((n-1),x));t2=(n-1)*p((n-2),x);t=(t1-t2)/n);return(t);}}

39、main(){int a[5][5],I,j,k=0,m,n;m=n/2+1;for(I=0,I=I;j--){k++;a[n-I-1][j]=k;} for(j=n-2-I;j>=I+1;j--){k++;a[I][j];}} for(I=0;I main(){int m[16],n,I,t,count=0;long a,k;printf(“result is:n”);for(n=10;n<200;n++){k=0;t=1;a=n*n;for(I=1;a!=0;I++){m[I]=a%10;a/=10;} for(;I>1;I--){k+=m[I-1]*t;t=t*10;} if(k==n*n)printf(“%2d:%10d%10dn”,++count,n,N*n);}}

41、void convert(char *a,int n){int I;if((I=n/10)!=0)convert(a+1,i);*a=n%10+’0’;}

42、#include main(){FILE *fp;char str[100],fikename[10];int I=0;if((fp=fopen(“upper.txt”,”w”))==NULL){printf(“can not open filen”);exit(0);} printf(“enter a string:n”);gets(str);while(str[I]!=’!’)

{if(str[I]>=’a’&&str[I]<=’z’)str[I]=str[I]-32;fputc(str[I],fp);I++;} fclose(fp);}

43、#include “stdio.h” FILE *fp;main(){int p=0,n=0,z=0,temp;fp=fopen(“number.dat”,”r”);if(fp==NULL)printf(“file not foundn”);else {while(!feof(fp)){fscanf(fp,”%d”,&temp);if(temp>0)p++;else if(temp<0)n++;else z++;} fclose(fp);printf(“posive:%3d,negtive:%3d,zero:%3dn:,p,n,z);} }

44、main(){unsigned rightrot(unsigned a,int n)

unsigned int m,b;

int n;

printf(“enter mand n:”);

scanf(%x,%d”,&m,&n);

printf(“m=%x,n=%dn”,m,n);

b=rightrot(m,n);

printf(“b=%xn”,b);} unsigned rightrot(unsigned a,int n){int rb;while(n0){rb=(a&1)<<(16-1);a=a>>1;a=a|rb;} return a;}

45、解:PX(X,N)=X-X2+X3-X4+„„+(-1)N-1XN =X*(1-X-X2+X3-X4+„„+(-1)N-1XN-1 =X*(1-PX(X,N-1)程序清单:

double px(double x,int n){if(n==1)return x;else return(x*(1-px(x,n-1));}

46、程序清单:

double opwer1(double x,int n){if(n==0)return 1;else return(x*power1(x,n-1);}

47、Printfn(int n){if(n=0&&n<=9)printf(“%d”,n);else {printf(“%d”,x%10);printn(x/10);} }

48、程序清单: t(int n){int m;printf(“%d”,x%10);m=x/10;if(m>0)r(m);}

49、程序清单:

int ack(int m,int n){if(m==0)return(n+1);else if(n==0)return(ack(m-1,1);else return(ack(m-1,ack(m,n-1)));} 50、Void intobin(int x){if(x/2>0)intobin(x/2);printf(“%d”,x%2);}

51、Void intobin(int x){if(x/8>0)intobin(x/8);printf(“%d”,x%8);}

52、Void intobin(int x){ if(x/16>0)intobin(x/16);printf(“%c”,(x%16>=9)?x%16+55:x%16+48);}

53、Main(){int x;printf(“enter a number:n”);

scanf(“%d”,&x);if(x!=0){if(x>0){ x=x%2;if(x)printf(“this number is a plus odd numbern”);else printf(“this number is a plus even numbern”);} else { x=x%2;if(x)printf(“this number is a plus odd numbern”);else printf(“this number is a plus even numbern”);} else printf(“this number is zeron”);}

54、Main(){int x,y,max;printf(“please input two number:n”);

scanf(“%d,%d”,&x,&y);if(a>b)max=a;else max=b;printf(“max=%d”,max);}

55、Main(){int j;for(j=999;j>=100;j--)if(555555%j==0)break;printf(“%d”,j);}

56、Main(){int I,count,j,sum;sum=count=0;for(I=0;I<10;I++){printf(“input ingter:n);scanf(“%d”,&j);if(j<0)continue;count++;sum=sum+j;} if(count)printf(“plus number:%d,average value :%.2f”,count,1.0*sum/count);else printf(“plus number:0,average value :0”);}

57、Main(){int year;printf(“%d”,&year);if(year<0)printf(“year is not a yaern”): else if((year%4==0&&year%100!=0)||year%400==0)printf(“year is leap year!n”);else printf(“year is not leap year!n”);}

58、main(){int n,j,k;printf(“input n:n”);

scanf(“%d”,&n);for(j=0;j

printf(“n”);} }

59、main(){int n,I,j,k;printf(“input n:n”);

scanf(“%d”,&n);for(I=0;I

printf(“n”);} } 60、Main(){ int I;float sum=1;for(I=2;I<=1000;I++)sum=sum+1.0/I;printf(“%f”,sum);} 61、Mypower(float x,int n){int I;float po=1;for(I=1,I<=n;I++)po=po*x;printf(“%f”,po);} 62、Main(){int I,j,max;int a[3][4]={};max=a[0][0];for(I=0;I<3;I++)for(j=0;j<4;j++)if(max char *strcat(char *str1,char *str2){}连接后字符串的头指针为str1。#include char *strcat(char *str1,char *str2){char *str1;while(*p!=’’)p++;while(*p++=*str2++);return(str1);} 64、#include char *revstr(char *s){} #include char *revstr(char *s){char *p=s,c;while(*p)p++;p--;while(s

8、略 69、略

70、#include #include main(){char str[80];printf(“input a string :n”);gets(str);insert(str);printf(“result is :%s”,str);} insert(char *s){int I;for(I=strlen(s);I>0;I--){*(s+2*I)=*(s+I);*(s+2*I-1)=’’;} } 71、Main(){int x;scanf(“%d”,&x);if(x%5==0&&x%7==0)printf(“yes”);else printf(“no”);} 72、#include main(){int day=0,buy=2;float sum=0,ave;do { sum=sum+buy*0.8;day++;buy=buy*2;}while(buy<=100);ave=sum/day;printf(“%f”,ave);} 73、#include main(){int I;for(I=1;I<100;I++)if(I*I==I||I*I%100==I)printf(%3d”,I);} 74、#include main(){char s[80]=””;int I,j;for(I=j=0;s[I]!=’’;I++)

if(c[I]!=’c’)s[j++]=s[I];

s[j]=’’;puts(s);} 79、main(){ int a[10];int i,j,m,f,h;int n,s;for(i=0;i<10;i++)a[i]=0;a[9]=1;printf(“please input n:n”);scanf(“%d”,&n);for(i=2;i<=n;i++){m=0;for(j=9;j>=0;j--){if(!(a[j]==0)){ f=a[j];h=(f*i%10+m)/10;a[j]=(f*i%10+m)%10;

m=f*i/10+h;} else { a[j]=a[j]+m;m=0;} } } i=0;while(a[i]==0)i++;printf(“%d!= ”,n);for(j=i;j<10;j++)printf(“%d”,a[j]);printf(“n”);} 80、#include #define N 100 main(){int a,j,jinwei,temp;int num1[N],num2[N];int i;printf(“PLEASE INPUT ONE NUMBER:n”);i=2;while(1){scanf(“%d”,&a);if(a==-1)break;num1[i++]=a;} num1[0]=i-1;i=2;printf(“PLEASE INPUT OTHER NUMBER:n”);while(1){scanf(“%d”,&a);if(a==-1)break;num2[i++]=a;} num2[0]=i-1;for(i=2;i<=num1[0];i++)printf(“%d”,num1[i]);printf(“+”);for(i=2;i<=num2[0];i++)printf(“%d”,num2[i]);printf(“=”);jinwei=0;if(num1[0]>num2[0]){j=num2[0];for(i=num1[0];i>=2;i--){ if(j>=2){ temp=jinwei;jinwei=(num1[i]+num2[j]+jinwei)/10;num1[i]=(num1[i]+num2[j]+temp)%10;

j--;} else { temp=jinwei;jinwei=(num1[i]+jinwei)/10;num1[i]=(num1[i]+temp)%10;

} } num1[1]=jinwei;for(i=1;i<=num1[0];i++)printf(“%d”,num1[i]);} else { j=num1[0];for(i=num2[0];i>=2;i--){ if(j>=2){temp=jinwei;jinwei=(num1[j]+num2[i]+jinwei)/10;num2[i]=(num1[j]+num2[i]+temp)%10;j--;} else {temp=jinwei;jinwei=(num2[i]+jinwei)/10;num2[i]=(num2[i]+temp)%10;} }

num2[1]=jinwei;for(i=1;i<=num2[0];i++)printf(“%d”,num2[i]);} } 81、include #define N 10 main(){int a,j,jinwei,temp;int num1[N],num2[N];int ji[2*N];int i;int k,k1,k2;int jinwei1,jiashu;for(i=0;i<2*N;i++)ji[i]=0;printf(“PLEASE INPUT ONE NUMBER:n”);i=1;while(1){scanf(“%d”,&a);if(a==-1)break;num1[i++]=a;} num1[0]=i-1;

printf(“PLEASE INPUT OTHER NUMBER:n”);i=1;while(1){scanf(“%d”,&a);if(a==-1)break;num2[i++]=a;} num2[0]=i-1;jinwei=0;k=2*N;for(i=num1[0];i>=1;i--){k1=k;k--;k2=k;jinwei=0;for(j=num2[0];j>=1;j--){ k1--;jiashu=(num1[i]*num2[j]+jinwei)%10;jinwei=(num1[i]*num2[j]+jinwei)/10;jinwei1=0;k2=k1;while(1){temp=jinwei1;jinwei1=(ji[k2]+jiashu+temp)/10;ji[k2]=(ji[k2]+temp+jiashu)%10;if(jinwei1==0)break;else {k2--;jiashu=0;} }

} k1--;temp=jinwei;jinwei=(temp+ji[k1])/10;ji[k1]=(temp+ji[k1])%10;if(jinwei!=0)ji[--k1]= jinwei;} printf(“nn”);for(i=1;i<=num1[0];i++)printf(“%d”,num1[i]);printf(“*”);

for(i=1;i<=num2[0];i++)printf(“%d”,num2[i]);printf(“=”);for(i=k1;i<2*N;i++)printf(“%d”,ji[i]);} 82、int count;int perm(char as[],char tem1[],int k,int num,int curr,int m){ int i,t;if(curr==0){if(num==0){printf(“{}”);count++;} else { count++;printf(“{”);for(i=0;i

下载寒假C语言113题word格式文档
下载寒假C语言113题.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    C语言编程100题

    经典C语言程序设计100例 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组......

    C语言基础题及答案

    第一单元程序设计和C语言 一、 选择题 1. C语言的基本构成单位是: 。 A. 函数 B. 函数和过程 C. 超文本过程 D. 子程序 2. 一个C语言程序总是从 开始执行。 A. 主过程 B. 主......

    C语言期末考试编程题范文

    1.打印出所有的“水仙花数”,并按照一行5个的格式输出。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1*1*1+5*5*5+3*3*3......

    c语言编程题(精选五篇)

    实验2 数据类型和标准输入与输出 (1)编写程序,输入摄氏温度,转换为华氏温度。转换公式如下: 华氏度 = 32 + 摄氏度 × 1.8 #include "stdio.h" void main { int s; double h;......

    C语言实验报告题及答案

    《C程序设计实验》 实验一 C程序开发环境(2学时) 1.实验目的 熟悉C语言的集成开发环境,了解菜单的使用方法;掌握C语言程序上机的编辑、编译、连接、运行的基本步骤;了解C语言程序......

    C语言经典编程题(推荐)

    C语言经典编程题 题目01:在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,空格用来分隔不同的单词。 [cpp] view plain copy print? 1. 2. 3. 4. 5. 6. 7. 8. 9.......

    c语言上机实习编程题

    班级:姓名:学号: 第一题 一、题目要求(11题) #include #include #defineN16 typedefstruct {charnum[10];ints; } STREC; STRECfun( STREC*a, char *b ) { int i; STREC str={"......

    C语言综合设计题指导思想

    关于C语言课程设计的技术指导 一、 课程设计的目的及意义 设计并实现该课程设计的目的主要在于: 1) 对一定规模的综合软件编程有一定的经历与认识。在做的过程中,你会发现,提前......