1、C语言程序设计16章课后习题C语言程序设计1(6章课后习题)-C语言编程教程|第1991-6章练习总结如果您在本文档中发现错误,请及时提出来,我会以超光速为您解决! 欢迎您的宝贵意见! 都是自己人编的,他们不是很好。利用 . 练习1 1。一个C语言程序由几个函数组成,其中只有一个(主)函数/这是众所周知的。想一想我们老师谭定义的两个主要函数(其中一个被删除了),结果是一个错误.所以,几个函数只能有一个主函数.2。模仿求圆面积的算法,写出求圆周长的算法,并用流程图来表示这个算法。 a:第一步,我们首先要求圆的周长知道半径,半径需要由us 定义,也就是说,我们需要手动输入半径的值 第2步,如果我们
2、想知道圆的周长的计算公式,应该没有什么是我们不知道的.(l = 2 *r)的第3步,我们需要输出l的值,第4步,完成.流程图是: (单词技能不太准确需要提高.) 开始输入r的值,定义l r=3计算l=2*r*输出l结束3。编辑并运行以下程序,并记录运行结果(1)#包括 void main() printf( printf(u) 的结果非常简单:欢迎您* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3、* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
4、* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * printf( output scanf(原样(输入值a,b /操作 s =
5、 a+b); printf(/输出 :请输入三个数字:3,4s = 7 (3和4之间的逗号,无空格)当scanf(语句直接位于%d和%d之间,即%d%d时,请在运行后输入3个空格4或3个回车4,而不是使用逗号.)4。编写一个c语言程序来计算圆的面积并运行它 #包括void main() float r,s; 常量浮点PI = 3.1415926/常量浮点定义一个常量printf( scanf( s = 2 * PI * r);printf( “ /按原样输出/输入半径/计算/输出值S 练习2 1。指出下列哪些常数满足C语言的要求: a 101 E3 “ ab n “ 1.0e 5 300 .
6、5 . 2e 2 . 5 a 在一条直线上,这是常见的。”101”不匹配(“”只能包含一个字符);E3不符合” AB n “是常见的.1.0E5待定.300待定.5.2E5.2不符合,因为我们都熟悉1e-6,它代表1/1000000;只能是e之后的整数.2。指出以下变量是否合法定义(1)int a,a1,aa = 100(2)浮动x;Int x。 (3)char ch1,ch2(4)char ch1 = CH2 = a ; A: (1)是的,它证明了灰色对于 (2)来说常常是错误的,不用说,X只能是整数或浮点数,而不是和(3)在运行验证后非常正确(4)错误3.如下设置程序中的变量定义语句;in
7、t a=10,b = 4;浮动x=2.5,y = 3.5 的输出是ff,10 %x表示输出a的十六进制数,将255转换为十六进制,255 = 15,15转换为十六进制,然后除以16,剩下15,然后ff是ff,8从十进制转换为八进制,直接数是8比1,即不是10 4。以下程序的输出是() # include void main() inta 1 = 1,a2 = 0,a3 = 2; printf( 输出是:1,3,1非常简单的操作.再简单不过了.5。printf函数使用格式字符%5s,其中5表示输出字符占用5列如果字符串长度大于5,请按(按原样输出),如果字符串长度小于5,请按(在前面填入空格并按
8、原样输出)6.定义的变量如下,int a1,a2;char c1,C2;如果 需要a1、a2、c1和c2的值,正确的输入函数调用语句是()a: scanf (“%d、%d、% c、% c “,使用scanf,因为a1和a2是整形变量,c1和c2是字符变量,所以使用字符输入格式 7。输入两个成形变量A和B的值,并输出以下公式和计算结果A+b,a-b,a*b,a/b,(浮点)a/b,a%b每个公式占一行。 如a=10,b=5,a+b,则输出为10+5=15答案:# include void main() inta,b;scanf( printf( printf( printf( printf( p
9、rintf( /浮点)强制类型转换为实数 printf( /2%的含义不同。 的第一个百分比表示:输入1%, 的第二个百分比表示求余数 输入:5,4输出:5+4 = 95-4 = 15 * 4 = 20 5/4 = 1 (浮点)5/4 = 1.250000 5% 4 = 1 8。输入一个非负数,以此数字为半径计算圆周长度和面积甲:这和以前的半径面积一样。你不需要再写一遍吗?9.输入任意三位数字,并以相反的顺序输出它们的数字(例如,输入123输出321) A:这个问题的思路是输出的顺序。由于它被定义为3位数字,我们只需要让最后一位数字先输出,然后我们将考虑如何使用加法,减法,乘法,除法和余数来实
10、现最后一位数字的第一次输出。例如,123,123加上什么,减去什么,乘以什么,除以什么,或者余数等于3?我们很容易把123想象成3(当我没有想到这一点时,我无言以对)。我们也很容易想到123/10,然后发现10的余数是2,123/100=1。这些很容易做到。然后我们可以按照它们完成的顺序输出它们。请看下面的程序: # include vid main() inta; printf(请输入一个三位数: n scanf( printf( # include vid main() inta; printf(请输入三位数:n 输入:467输出:764 10。输入三个任意大小的整数,以确定是否有两个奇数
11、和一个偶数。如果是,它将输出是,如果不是,它将不输出(使用条件表达式,而不是If语句) a:首先,我们需要了解什么是条件表达式,条件表达式是表达式1?表达式2:表达式3 首先求解表达式1。如果其值为真(不是0),则表达式2的值作为整个 表达式的值,否则(表达式1的值为0),表达式3的值作为整个表达式的值程序如下: # include vid main() inta,b,c,d;scanf( d = a % 2+b % 2+c % 2;d=2?Printf( /此处,如果d=2,则执行” printf(“YES “),” 如果d!= 2, scanf( printf( )执行” printf(“
12、 not “) 输入:3,4,5 输出:YES 11。查找前面和后面的字符输入一个字符,找出它的前一个字符和后一个字符,按照ASCII码值从大到小的顺序输出3个字符及其对应的ASCII码值 答:对于这个问题,我们首先需要知道什么是前置字符,什么是后续字符。前置字符是在您输入当前字符之前的字符,后续字符是在您输入当前字符之后的字符,并且这些字符可以被添加或减去(在特定条件下);现在我们明白了,让我们开始编写程序:# include void main() charch; printf(请输入一个字符: n ch = getchar(); printf(前面的字符是:printf( printf(
13、下面的字符是:printf( /输出后续字符/输出前体字符/输入字符28天否则打印(解决方法:在这个问题中,我首先判断月份。由于1月、3月、4月、5月、6月、7月、8月、9月、10月、11月和12月这几天不会改变,因此应分别判断2月(即是否为闰年);If语句用于写入if(month = = 1 | | month = = 3 | | month = = 5 | | month = = 7 | | month = = 8 | | month = = 10 | | month = = 12)printf(然后考虑剩余月份中的天数(从二月开始) if(month = = 2) if(year 0 =
14、 = 0)| | |(year % 4 = = 0)浮点型scanf( while(x=0) /使用输入值是否大于0作为判断条件 if(x % 2 = = 0) average+= x;/暂时使用average作为输入 偶数的和,并使用j来计数 j+的偶数; scanf( average = average/j;/使用average作为 printf ( 2的平均值。# include vid main() charch; int n=0,I = 0;/定义两个变量来计算字母和数字 的个数,同时(CH = Getchar()!= *)/ * 作为结束条件 /开始判断 if(ch=0) /统计数
15、 if(ch=A) /计数字母 printf ( 3。# include vid main() intx,s = 0,a,b;Scanf( do /设置循环 a = x;/余数 b =(int)(x/10);/如果(b=0) s+=a,则将对数除以10以找到整数;x=b。 同时(b!= 0);/判断是否将printf的所有数字相加( 分析:在做这个问题时,首先认为我们需要将一个周期中的所有数字相加;然后我们必须使用一种方法来提取每个数字,所以对于输入的数字,我们首先找到余数,然后除以10,找到整数,直到所有的数字相加。 4。#包括void main() char ch;do ch = getchar();if(ch = 65)if(ch = 97) while(ch!= 74); 5。#包括void main() float I = 1.045;int s=200,n = 0;对于(n = 0;s法官9 printf( else print( 9。# include vid main() inti,n;浮点s=0,a=1,b = 2;(I = 1;i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1