2011年上学期C语言作业(3)

2018-12-29 22:47

统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。

6.9 有一行电文,已按下面规律译成密码: a→Za→z b→Yb→y c→Xc→x ……

即第1个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编程序将密码译回原文,并打印出密码和原文。

6.10 编一程序,将两个字符串连接起来,不要用Strcat函数。 6.11 编一个程序,将两个字符串S1和S2比较,如果S1>S2,输出一个正数;S1=S2,输出0;S1

6.12 编写一个程序, 将字符数组 s2 中的全部字符拷贝到字符数组 s1 中。 不用 strcpy 函数。 拷贝时, ?\0?也要拷贝过去。?\0?后面的字符不拷贝

习题7

7.1 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入。

7.2 求方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a、b、c的值。

7.3 写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。

7.4 写一函数,使给定的一个二维数组(3×3)转置,即行列互换。

7.5 写一函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。

7.6 写一函数,将两个字符串连接。

7.7 写一函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。如输入1990,应输出“1 9 9 0”。 7.8 编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。

7.9 写一函数,输入一行字符,将此字符串中最长的单词输出。

7.10 写一函数,用“起泡法”对输入的10个字符按由小到大

顺序排列。

7.11 用弦截法求根。方程为ax3+bx2+cx+d=0,系数a、b、c,d的值依次为1,2,3,4,的值依次为1,2,3,4,由主函数输入。求x在1附近的一个实根。求出根后由主函数输出。

7.12 输入10个学生5门课的成绩,分别用函数求:①每个学生平均分;②每门课的平均分;③找出最高的分数所对应的学生和课程;④求平均分方差:σ=1n∑x2i-(∑xi/n)2,xi为某一学生的平均分。

7.13 写几个函数:①输入10个职工的姓名和职工号:②按职工号由小到大顺序排序,姓名顺序也随之

调整;③要求输入一个职工号,用折半查找法找出该职工的姓名,从主函数输入要查找的职工号,输出该职工姓名。 7.14 写一函数,输入一个十六进制数,输出相应的十进制数。 7.15 给出年、月、日,计算该日是该年的第n天。

习题8

本章习题均要求用指针方法处理。

8.1 输入3个整数,按由小到大的顺序输出。 8.2 输入3个字符串,按由小到大的顺序输出。

8.3 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:①输入10个数;②进行处理;③输出10个数。

8.4 有一字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串。 8.5 输入一行文字,找出其中大写字母、小写字母、空格、数字以及其他字符各有多少?

8.6 写一函数,将一个3×3的矩阵转置。

8.7 将一个5×5的矩阵中最大的元素放在中心,4个角分别放4个最小的元素(顺序为从左到右,从上到下顺序依次从小到大存放),写一函数实现之。用main函数调用。 8.8 在主函数中输入10个等长的字符串。用另一函数对它们排序。然后在主函数输出这10个已排好序的字符串。 8.9 用指针数组处理上一题目,字符串不等长。 8.10 将n个数按输入时顺序的逆序排列,用函数实现。 8.11 有一个班4个学生,5门课。①求第一门课的平均分;②找出有2门以上课程不及格的学生,输出他们的学号和全部课程成绩和平均成绩;③找出平均成绩在90分以上或全部课程成绩在85分以上的学生。分别编3个函数实现以上3个要求。

8.12 输入一个字符串,内有数字和非数字字符,如a123x456 ?17960?302taB5876将其中连续的数字作为一个整数,依次存放到一数组a中。例如,123放在a[0],456放在a[1]…统计共有多少个整数,并输出这些数。

8.13 写一函数,实现两个字符串的比较。即自己写一个

strcmp函数,函数原型为int strcmp(char *p1,char *p2);设p1指向字符串S1, p2指向字符串S2。要求当S1=S2时,返回值为0,若S1≠S2,返回它们二者第一个不同字符的ASCII码差值(如“BOY”与“BAD”,第二个字母不同,“O”与“A”之差为79-65=14)。如果S1>S2,则输出正值,如S1<S2,则输出负值。

8.14 编一程序,打入月份号,输出该月的英文月名。例如,输入“3”,则输出“March”,要求用指针数组处理。 8.15 用指向指针的指针的方法对5个字符串排序并输出。 8.16 用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。5个整数和n在主函数中输入。最后在主函数中输出。

习题9

9.1 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天?注意闰年问题。

9.2 写一个函数days,实现上面的计算。由主函数将年、月、日传递给days函数,计算后将日子数传回主函数输出。 9.3 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score[3],用主函数输入这些记录,用print函数输出这些记录。

9.4 在上题的基础上,编写一个函数input,用来输入5个

学生的数据记录。

9.5 有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩、平均分数)。

9.7 写一函数free,将上题用new函数占的空间释放。free(p)表示将p(地址)指向的单元以后的内存段释放。

9.8 已有a、b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号升序排列。

9.9 有两个链表a和b,设结点中包含学号、姓名。从a链表中删去与b链表中有相同学号的那些结点。

9.10 建立一个链表,每个结点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。


2011年上学期C语言作业(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:对账单能否中断诉讼时效探析

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

马上注册会员

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