C语言程序设计习题集
来源:hack/bbs/viewthread.php?tid=122497&fromuid=8725863
内容:C语言程序设计习题集
1        基础知识
       1       程序设计
3.        已知a,b均是整型变量,写出将a,b两个变量中的值互换的程序来(要求用不使用中间变量和使用中间变量两种方法)
4.        编写程序,将一个无符号整数a循环右移n位。所谓循环右移是指将数据右移之后,左端的空位不是以固定数据补位,而是用右端移出位按序补充。
5.        设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆柱表面积,圆柱体积。用scanf输入数据,输出计算结果;输出时要求有文字说明,取小数点后2位数字,请编写程序。
2        流程控制
       2       程序设计
1. 编写程序,计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20
若输入:202,则输出应该是:0
2. 若以字符AJ对应于数字字符09,编写程序,用于接收一个整数,并以各位相反的次序输出转换后的序列。例如,若输入452,相反次序254,输出CFE
3       编写程序,4       从键盘接收一个三位整数并输出。要求:不5       scanf()函数,6       输入错误字符时响铃。
22.        编写一个简单的循环工作的四则运算计算器程序,它以x,y,+<回车>形式接收输入数据,然后显示运算结果,若运算符为!,则程序结束。其中x,y和结果都是浮点型数据。
23.        请编写程序,求n以内(不包括n)同时能被37整数的
所有自然数之和的平方根s,并将结果输出到显示器上。
例如若n1000时,函数值应为:s=153.909064
6.从键盘输入一行字符,直到按回车键结束,统计其中的单词个数。此处认为一个单词是介于空格之间的字符序列。
7.设计程序,将Fibonacci数列前20项中的奇数出来存放到一维数组中。
8.编写程序,从键盘接收一个浮点数x和一个整数mm不大于6),将x保留m位小数,第m+1位四舍五入。例如,输入123.456,保留2位小数应为123.46(或123.459999)。
9.编程输入整数ab,若 大于100,则输出 百位以上的数字,否则输出两数之和。
10.有一函数:
                        
编写一程序,输入x,输出y值。
11.给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’90分以上为’A’8089分为’B’7079分为’C’6069分为’D’60分以下为’E’
12.给一个不多于5位的正整数,要求:求出它是几位数;按逆序打印出各位数字,例如原数是321,应输出123
13. (即求1!+2!+3!++19!+20!)。
14.打印出所有的水仙花数,所谓水仙花数是指一个3位数,其各位数字立方之和等于该数本身。


第三章 函数与变量
1        程序设计
3.        编写程序,利用函数方法计算两个整数的最大公约数和最小公倍数。
4.        编写一个函数,用于计算出一个整数的所有因子之和。例如,72的因子之和为22233。最后编写主函数完成对该函数的调用。
5.        编写一个函数getbits(x,p,n),它返回整型变量x的从第p位开始的n个位组成的无符号整数值。位号从0数起,由右至左,第0位为最低位。最后编写主函数调用该函数。
6.        编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:求两数平方根之和,作为函数值返回。例如:输入1220,输出结果为: y = 7.936238
7.        编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。例如变量a中的值原为5b中的值原为3,程序运行后a中的值为3b中的值为5
8.        编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。再设计一个函数,函数的功能是计算两个非零正整数的最大公倍数。
9.        请编写一个函数unsigned fun ( unsigned w ), w是一个大于10的无符号整数,若wn (n2)位的整数,函数求出w的后n-1位的数作为函数值返回。
10.        编写一个函数fun,函数fun的功能是:从低位开始取出长整型变量s中偶数位上的数,依次构成一个新数放在t中。例如,当s中的数为:7654321时,t中的数为:642.
11.        编写一个函数,计算1!3!5!k!k是小于9的奇数)。例如:若k=7,则应输出:       1.00000  6.00000  120.00000  5040.00000
12.        (此处an的值在19之间, 表示由na组成的整数)。例如,a=2n=6,则以上表达式为:
       s=222222-22222-2222-222-22-2
其和值是:197532
11. 编写一个函数float fun(float eps),它的功能是:根据如下公式计算e的值:
        
其中的eps是指定的精度。

第四章 指针与数组
      
1        程序设计
1.在一个数组a中查一个指定的值x是否存在,若存在则删除数组中的第一次出现的对应元素,若不出现则什么也不做。
2.编写函数fun(int m,int *k,int *x),函数的功能是将所有大于1且小于整数m的非素数存入x所指的数组中,非素数的个数保存到k指向的单元。
3.编写一个fun函数void fun(char s1[],char s2[]),将两个字符串s1s2连接起来存放在s1中。
4.编写一个fun函数:long fun(char s[]),将一个数字字符串转换为一个整数(不得调用标准库函数)。例如,若输入字符串1234”,则函数把它转换为整数值-1234
5.编写一个fun函数:int fun(int a[], int n),删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,一维数组中的数据是:2 2 2 3 4 4 5 6 6 6 7 7 8 9 9 10 10 10,删除后,数组中的内容应该是:2 3 4 5 6 7 8 9 10
6. 写一个函数,输入一个4位数字,要求输出这4个数字字符,但每个字符间空一个格。程序设计c语言
7. 用递归法将一个整数n转换成字符串。例如:输入483,应输出字符串483”。n的位数不确定,可以是任意位数的整数。
8 编写一个函数len,其功能是计算出一个字符串中含有的所有字符个数(不使用库函数str
len)。
9.编写函数fun,函数的功能是:计算一个字符串s中的所含有的指定字符的个数,返回此值。例如,输入字符串"Thisisastring",被查字符为's',则应输出3
10.编写程序,读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的单词是指由空格隔开的字符串)。
11.编写函数fun,其功能是删除一个字符串中的所有空格。例如,输入字符串"This  is  a  string",则应输出"Thisisastring"
16        编写函数fun,函数fun 的功能是:将字符串str2中的所有字符复制到字符串str1中,要求每复制三个字符之后插入一个空格。
17        编写函数,函数fun的功能是:在字符串str中出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
14.编写函数,函数fun 的功能是:首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如,当a所指字符串中的内容为abcdefg”,b所指字符串中的内容为1234”时,c所指数组中的内容应该为a4b3c2d1efg”;而当a所指字符串中的内容为
1234”,b所指字符串中的内容为abcdefg”时,c所指数组中的内容应该为1g2f3e4dcba”。
15.编写函数fun,函数fun的功能是:利用插入排序法对数组中一些整数按从小到大的顺序进行排序。插入法的基本算法是:先对数组中头两个元素进行排序。然后把第三个元素插入到前两个元素中,插入后前三个元素依然有序;再把第四个元素插入到前三个元素中,……
16.编写一个函数,其功能是统计一个子字符串在另一个字符串中出现的次数。例如,假定输入的字符串为"this is a string",子字符串为"is",则应输出2
17.请编写函数int*  fun(char* st),其中st是仅由字符abc组成的字符串。函数的功能是:统计字符串st’a’’b’’c’的个数并分别存入不同的内存区,带回内存区的首地址
10)个字符串中,统计由变量c中所含字符结尾的字符串个数,此个数由函数值返回main函数。m18.从m1

第五章 结构体与共用体
1        程序设计
2        输入3个学生的基本信息,计算他们的平均成绩。
3        设计程序,定义一个结构体变量,其成员包括:职工号、姓名、工龄和工资,从键盘输入具体数据,然后输出。

4        程序设计
1.设计程序,从键盘输入一个字符串,将其中小写字母全部转换成大写字母,然后输出到另一个磁盘文件text.dat中保存,输入的字符串以!”结束。
2.编写一个程序并取名test.c,并将该文件存放到C盘根目录下,统计该文件中出现if,while,for”的次数。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。