1、封面本章目录C语言习题讲解附录习题讲解141提高题:参照课本例1.1,试编写一个C程序,输出如下信息。(提示:使用键盘上的一些符号)。附录习题讲解142提高题:试编写一个C程序,输出如下信息。附录习题讲解361假设m是一个三位数,则写出将m的个位、十位、百位反序而成的三位数(例如:123反序为321)的C语言表达式。附录习题讲解362已知int x=10,y=12;写出将x和y的值互相交换的表达式。附录习题讲解451已知a,b均是整型变量,写出将a,b两个变量中的值互换的程序来。附录习题讲解452若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,
2、c1=a,c2=b。想得到以下的输出格式和结果,请写出程序(包括定义变量类型和设计输出)。附录习题讲解453设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果;输出时要求有文字说明,取小数点后2位数字,请编写程序。附录习题讲解454用getchar函数读入两各字符给c1、c2,然后分别用putchar和printf函数输出这两个字符。并思考以下问题:(1)变量c1、c2应定义为字符型或整型?或两者皆可?(2)要求输出C1和C2值的ASCII码,应如何处理?用putchar函数还是printf函数?(3)整型变量与字符型变量是否
3、在任何情况下都可以互相替代?如:char c1,c2 与 int c1,c2是否无条件地等价?附录习题讲解581有三个整数a,b,c,由键盘输入,输出其中最大的数。附录习题讲解582附录习题讲解583附录习题讲解584给出一百分制成绩,要求输出成绩等级A,B,C,D,E。90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。附录习题讲解585提高题:给一个不多于5位的正整数,要求:求出它是几位数;分别打印出每一位数字;按逆序打印出各位数字,例如原数是321,应输出123。附录习题讲解671输入两个正整数m和n,求其最大公约数和最小公倍数。附录习题讲解672输入一行字符
4、,分别统计出其中英文字母、空格、数字和其他字符的个数。附录习题讲解673附录习题讲解674附录习题讲解675提高题:打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。附录习题讲解676提高题:在屏幕上打印如下的SIN函数曲线。附录习题讲解761用选择法对10个整数排序。附录习题讲解762有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。附录习题讲解763有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、中文字符、数字、空格及其他字符的个数。(提示:中文字符是两个字节、且数值均大于128的字符)。附录
5、习题讲解764对三人的四门课程分别按人和科目求平均成绩,并输出包括平均绩的二维成绩表。附录习题讲解765提高题:将一个数组中的值按逆序重新存放。例如:原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。附录习题讲解766提高题:打印出杨辉三角形(要求打印出10行,课本P141页 7.6)附录习题讲解767提高题:编写程序:(1)求一个字符串S1的长度;(2)将一个字符串S1的内容复制给另一个字符串S2;(3)将两个字符串S1和S2连接起来,结果保存在S1字符串中;(4)搜索一个字符在字符串中的位置(例如:I在”CHINA”中的位置为3)。如果没有搜索到,则位置为1。(5)比较两个字符串S
6、1和S2,如果S1S2,输出一个正数;如果S1=S2,输出0;如果S1S2,输出一个负数;输出的正、负数值为两个字符串相应位置字符ASCII码值的差值,当两个字符串完全一样时,则认为S1=S2。以上程序均使用gets或puts函数输入、输出字符串。不能使用string.h中的系统函数。附录习题讲解861写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,且两个整数的输入也在主函数。附录习题讲解862写一个判素数的函数,在主函数输入一个数,输出是否为素数的信息。附录习题讲解863写一个函数,使给定的一个二维数组(NN)转置,即行列互换。(N是不大于10的数,由
7、输入决定)。附录习题讲解864编写写一个fun函数void fun(char s1,char s2),将两个字符串s1和s2连接起来存放在s1中。附录习题讲解865编写一个fun函数:long fun(char s),将一个数字字符串转换为一个整数(不得调用标准库函数)。例如,若输人字符串“1234”,则函数把它转换为整数值1234。附录习题讲解866编写一个fun函数:int fun(int a,int n),删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,一维数组中的数据是:2 2 2 3 4 4 5 6 6 6 6 7 7
8、 8 9 9 10 10 10,删除后,数组中的内容应该是:2 3 4 5 6 7 8 9 10。附录习题讲解867提高题:写一个函数,输入一个4位数字,要求输出这4个数字字符,但每个字符间空一个格。附录习题讲解868提高题:用递归法将一个整数n转换成字符串。例如:输入483,应输出字符串“483”。n的位数不确定,可以是任意位数的整数。附录习题讲解869提高题:定义一个函数,可求3行4列整型数组中最大、最小元素值及它们的位置;要求在main中输入输出数组,并在main中输出所要求的数据;该整型数组为全局变量。附录习题讲解941附录习题讲解1051定义3个整数及整数指针,仅用指针方法按由小到大
9、的顺序输出。附录习题讲解1052输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数:输入10个数;进行处理;输出10个数。所有函数的参数均用指针。附录习题讲解1053编写一个求字符串的函数(参数用指针),在主函数中输入字符串,并输出其长度。附录习题讲解1054编写一个函数(参数用指针)将一个33矩阵转置。附录习题讲解1055写函数原型为int strcmp(char*s1,char*s2);的函数,该函数实现两个字符串的比较(函数功能描述参见教材P137,strcmp字符串处理函数)。附录习题讲解1056利用指向行的指针变量求53数组各行元素之和。附录习题讲解
10、1141编写一个函数output,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score3,用主函数输入这些记录,用output函数输出这些记录。附录习题讲解1142在上题的基础上,编写一个函数input,用来输入5个学生的数据记录。附录习题讲解1143有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分数)。正文结束欢迎体验C语言开放资源电子教案2019版版权信息计算机基础教育系列丛书之计算机文化基础、C语言程序设计、Visual C
11、+语言程序设计、Visual Basic语言程序设计电子教材是由姜学锋编写。20192019,西北工业大学计算机系,版权所有。西北工业大学计算机系,版权所有。未经许可,不能擅自对本教材进行复制、修改、分发等操作,否则均属违法。未经许可,不能擅自对本教材进行复制、修改、分发等操作,否则均属违法。版权为西北工业大学开放资源教学网络所有。Turbo C 2.0,Borland C+3.1 为Borland国际公司产品。Visual C+,Visual Basic,Visual Studio 6.0为微软公司产品。Windows 98,Windows 2000,Windows XP 为微软公司产品。Office 2000,Office XP 为微软公司产品。所有其它未声明产品及权益为其拥有者所有。课间休息