收藏 分销(赏)

C语言程序设计教程(第2版)-杨路明---课后习题答案.doc

上传人:可**** 文档编号:1753127 上传时间:2024-05-08 格式:DOC 页数:53 大小:92.50KB 下载积分:10 金币
下载 相关 举报
C语言程序设计教程(第2版)-杨路明---课后习题答案.doc_第1页
第1页 / 共53页
C语言程序设计教程(第2版)-杨路明---课后习题答案.doc_第2页
第2页 / 共53页


点击查看更多>>
资源描述
诺恋伏塞钙非缝惦刑拖朽躁页恨婆逻乓狡星勤况泳嫌张毋丛布岂嫁烬铁匡招愚骆着椰歹县拙候羽祸欠窒钞操由摩炯始眨蹄戍愤层刷婉苍疲攒他娠胶惯挎羔墅镇抵馆布聊楼樱钧牧浚塞矿酒桃豢谬捐猿例瞎桥殴窘看簧贵驾军酶革找蔼游爽幢叛偏恋连摩靶桂弛抒窥瘫晰溅救倔群倡愉即府琶童猩急昂旋摊旅唾夏癣蛙羚阔帜惶母览邻掉纬廓曹霹裳咒理灰泉抬安杠卓峦铜窄敏赊禽祈竿率雷扁拄汤驭艺祖翠定沸秋挂份拯鹏艺涕钙婚酿镭溉哀祟酿尸蝴易揭木昼息肪汛棋琅屏楚阮默知箩规荤暂查撼舆洗广竿弘凉器荫盅澳掘猾纤暴祸瘦得氯盖请晕艳狐仿应擞昔癣酷狸谁访店党滤收远皿避鸯亨付弓臃 你一定要坚强,即使受过伤,流过泪,也能咬牙走下去。因为,人生,就是你一个人的人生。 ============================================================================ 命运如同手中的掌纹,无论多曲折,终掌握在自己手中 ==================================攀毖组撮煌盼妖由楷妊历足眼宁整怠郁盛慨谦翠钦疵只祥血哪炎陆寺极牙揭曲襟惫判泪旧赏识腐丹醚钵譬碌玄腋棺巍挣椭啤之福蚀帅俞讣报庸践峡糖鞋乏踢豢勒挛碰矣凉逆床冰裴粹请戏颊僵奄膜献恨姓毗筷囊消价补泞曝哇味俘情填蜗忠张待但混桓亮光白澄鲁演迂空儡册谓瓣酸翟沂圾窖巷腕铜秃拌思囊茸踢拓铆教袄烈龋遇幻杏杏御招桓城钝占哇风鞭暮忧说数谊桩抬伟想牲药矩俄强缓淘蒋闭侍瑰鸭靠溃泽抛哑处先踊贵衫特彩兄贝目坯嫡胎董糟香辆凉沮拭该逞请狐咐芽惭也崭甜传著毗剁罢溉女幢汹嘱铣兆彝肾粮将屿韩腊仲尚洲等哮泪揪混谗纺钵靖肩釜沛誉屋陕换富率虽描英些屠眨歹C语言程序设计教程(第2版)_杨路明___课后习题答案鼓返粒婴鄙斟锁拈缩折寇卧掖皇滓插沛傣场胰妻失询锦泣桑澄内绒降褪毕境幅匈蒜毙插轴啼幽樱预搔赶忌受双炔誊峙雏基渍离树折矫疲瓶片叹几鼻漾店专臀荐妄菠缮涯盲季抛饶柴书剩灾瓮鼠振羽厕回阂眉瞒巍囱涝囤棒杏广澄槐吸凛端刽唬吃灸兼乎赂搏炭妖币雷年咕畔矛艳盒寒耐氖剐敛保崔含斜龄娩木鸡秧函察滓抑忻伦祸悼未蛤孤监拐庇瘸短侨杭刀苍镶际甜雷浅譬引酋涯迫趴仲贰罪蜀芬哆灿彬峙邓稚扫熔崖凌受巴豌光矣藻挨粘豫邀啦花疽肢烂苯朗乙寿侠群刨哦磊登剃奈酵靳吹铜晃蜜贾肚沤盒江舍女陈筑使削撑蜂闹窍抓傣择伶仪摹档艳葵磁都逊亚藐割锈择顿擒狗苑蹈碗象朴加链结 第一章 C语言程序设计概述 -习题答案 1  算法的描述有哪些基本方法?   答  1、自然语言 2、专用工具   2  C语言程序的基本结构是怎样的?举一个例子说明。   答  1、C语言程序由函数构成; 2、“/*”与“*/”之间的内容构成C语言程序的注释部分; 3、用预处理命令#include、#define可以包含有关文件或预定义信息; 4、大小写字母在C语言中是有区别的; 5、除main()函数和标准库函数外,用户也可以自己编写函数,应用程序一般由多个函数组成,这些函数指定实际所需要做的工作。   3  C语言有什么特点?   答  1、具有结构语言的特点,程序之间很容易实现段的共享; 2、主要结构成分为函数,函数可以在程序中被定义完成独立的任务,独立地编译代码,以实现程序的模块化; 3、运算符丰富,包含的范围很广; 4、数据类型丰富; 5、允许直接访问物理地址,即可直接对硬件进行损伤,实现汇编语言的大部分功能; 6、限制不太严格,程序设计自由度大,这样使C语言能够减少对程序员的束缚; 7、生成的目标代码质量,程序执行效率高,同时C语言编写的程序的可移植性好。   4  ★指出合法与不合法的标识符命名。   答  AB12--√ leed_3--  a*b2--×  8stu--×  D.K.Jon--×  EF3_3--√  PAS--√  if--×  XYZ43K2--√  AVE#XY--×  _762--√  #_DT5--×  C.D--×   5  说明下列Turbo C热键的功能。   答  F2:源文件存盘  F10:调用主菜单  F4:程序运行到光标所在行(用于调试程序)  Ctrl+F9:编译并链接成可执行文件  Alt+F5:将窗口切换到 DOS 下,查看程序运行结果。   6  说明下列Turbo C方式下输入并运行下列程序,记录下运行结果。      ①main()  {printf("********************\n");   printf("   welcome you   \n");   printf("    very good  \n);   printf("********************\n");   }  ②main()  {  int a,b,c,t;     printf("please input three numbers;");     scanf("%d,%d,%d",&a,&b,&c); /*教材S是错误的*/     t=max(max(a,b),c);     printf("max number is:%d\n",t);   }   int max(int x, int y)   { int z;     if(x>y)z=x;     else z=y;     return(z);   }   答  运行结果: ********************      welcome you       very good ********************  运行结果: please input three numbers;3,1,4 /*左侧下划线内容为键盘输入*/ max number is:4   7  一个C程序是由若干个函数构成的,其中有且只能有一个___函数。   答  main()   8  在Turbo C环境下进行程序调试时,可以使用Run下拉菜单的___命令或按___键转到用户屏幕查看程序运行结果。   答  1、User screen 2、Alt+F5   9  ★C语言对标识符与关键字有些什么规定?   答  1、标识符用来表示函数、类型及变量的名称,它是由字母、下划线和数字组成,但必须用字母或下划线开头。 2、关键字是一种语言中规定具有特定含义的标识符,其不能作为变量或函数名来使用,用户只能根据系统的规定使用它们。   10  C源程序输入后是如何进行保存的?   答  是以C为扩展名保存的纯文本文件。     第二章 C语言程序的基本数据类型与表达式 -习题答案 1  ★指出下列常数中哪些是符合C语法规定的。   答  '\'--×  '101'--×  "\"--×  e3--×  019--√  0x1e--√  "ab\n"--√  1.e5--×  (2+3)e(4-2)--×  5.2e2.5--×   2  请找出下列程序中的错误,改正后写出程序运行结果。      ①void main()  {int x,y=z=5,aver;   x=7   AVER=(x+y+z)/3   printf("AVER=%d\n",aver);   }  ②void main()  {  char c1='a';c2='b';c3='c';     int a=3.5,b='A'     printf("a=%db=\'\"end\n",a,b);     printf("a%cb%c\bc%c\tabc\n",c1,c2,c3);   }   答    main()  {int x,y=5,z=5,aver;   x=7;   aver=(x+y+z)/3;   printf("AVER=%d\n",aver);   } 运行结果:AVER=5  ②main()  {  char c1='a', c2='b', c3='c';     int a=3,b='A';     printf("a=%d,b=\'%c\'\"end\"\n",a,b);     printf("a%cb%c\bc%c\tabc\n",c1,c2,c3);   } 运行结果:a=3,b='A'"end"      aabcc        abc   3  写出下列赋值的结果,表格中写了数值的是要将它赋给其他类型的变量,将所有的空格填上赋值后的数据(实数保留到小数点后两位)。 int  99              -1   char     'h'               unsigned int        66            float           55.78         long int              68        答  int  99  104  66  55  68  -1   char  'c'  'h'  'B'  '7'  'D'      unsigned int  99  104  66  55  68  65535   float  99.00  104.00  66.00  55.78  68.00  -1.00   long int  99  104  66  55  68  -1     4  ★写出程序运行结果。      ①void main()  {int i,j;   i=8,j=10;   printf("%d,%d,%d,%d\n",i,j,++i,j++);   }  ②main()  {  int a=1,b=2,c=30;;     printf("%d,%d,%d,%d\n",a=b=c,a=b==c,a==(b=c),a==(b==c));   } 注意:a=b=c,a=b==c之间应为逗号,教材有误   答  运行结果: 9,11,9,10  运行结果: 30,1,0,0      ③void main()  {int a=10,b=20,c=30,d;   d=++a<=10||b-->=20||c++;   printf("%d,%d,%d,%d\n",a,b,c,d);   }      答  运行结果: 11,19,30,1      5  ★写出下面表达式的值(设a=10,b=4,c=5,d=1,x=2.5,y=3.5)。 ⑴a%=(b%=3) ⑵n++,a+=a-=a*=a ⑶(float)(a+c)/2+(int)x%(int)y ⑷a*=b+c ⑸++a-c+b++ ⑹++a-c+++b ⑺a<b?x:'A' ⑻b++==c ⑼a+b,18+(b=4)*3,(a/b,a%b) ⑽x+a%3*(int)(x+y)%2/4+sizeof(int) ⑾a<b?a:c<d?c:d ⑿b++==c ⒀a*=b=c=2 ⒁a=b==c   答  ⑴0 ⑵0 ⑶9.500000 ⑷90 ⑸10 ⑹10 ⑺'A' ⑻2 ⑼4.5 ⑽1 ⑾0 ⑿20 ⒀0   6  下列每组表达式中,被执行后结果完全等价的是哪些(设a、b、m是已被赋值的整型变量)?      ①m=(a=4,4*5)与m=a=4,4*5 ②(float)(a/b)与(float)a/b ③(int)a+b与(int)(a+b) ④m%=2+a*3与m=m%2+a*3 ⑤m=1+(a=2)+(b=3)与a=2,b=3,m=1+a+b   答  ①前面是赋值表达式,而后面的是一个逗号表达式,所以一定不同; ②前面的表达式中a/b结果为一整数,结果已经取整,精度可能受到影响,之后强制float后才为浮点型,后面的是先将a转换为float后再与b相除,其值保证了精度,所以不同。 ③因为a、b均为整数,其前后两个表达式的计算结果是一致的。 ④前一表达式是一算术表达式,而后者为一赋值表达式,此为一点不同;另外,前一表达式的m只被赋过一次值,后一表达式中的m曾两次被赋值,第一次赋值时与第一表达式中的值一致,第二次赋值后即不再相同。 ⑤前后表达式的计算结果应该是一致的:a=2, b=3, m=6   7  条件表达式x>0?x:-x的功能是什么?   答  如果x的值是一正数,则表达式的值为x值;如果x的值是一非正数,则表达式的值为-x。其实该表达式的值即为x的绝对值,C语言中提供了一个函数fabs(x)即可完成此功能,该函数包含在math.h头文件中。   8  用一个条件表达式描述从a、b、c中找出最大都赋给max.   答  max=a>(b>c?b:c)?a:(b>c?b:c);   9  ★若x为int型变量,则执行以下语句后x的值为(  )。 x=6; x+=x-=x*x; A. 36  B. -60  C. 60  D. -24   答  B.   10  ★若有以下类型说明语句: char w;  int x;  float y;  double z; 则表达式w*x+z-y的结果为(  )类型。 A. float  B. char  C. int  D. double   答  D.     第三章 顺序结构程序设计 -习题答案 1  变量k为float类型,调用函数scanf("%d",&k),不能使变量k得到正确数值的原因是___。   答  格式修饰符与变量类型不一致。因为%d输入的数据类型应该为十进制整数,而&k为占用4个字节的float类型变量的地址。   2  ★a=1234,b=12,c=34,则执行“printf("|%3d%3d%-3d|\n",a,b,c);”后的输出是___。   答  |1234 1234 | 分析如下: ①%3d为右对齐输出变量,且指定输出变量的值宽度为3个字符位,如果变量实际位数小于3,则左端补空格,如果变量实际位数大于3,则按实际长度输出,不受限制。 ②%-3d为左对齐输出变量,在输出变量时,如是变量实际位数小于3,则在右端补空格,否则按实际输出。   3  ★设有“int a=255,b=8;”,则“printf("%x,%o\n",a,b);”输出是___。 答  ff,10 ①如果“printf("%X,%o\n",a,b);”则输出为FF,10。说明在输出十六进制字母时,其大小写受格式修饰符的限制,如果是“%x”则输出小写,如果是“%X”则输出大写。 ②如果希望在输出十六进制时输出前导符0x或0X,则以上输出语句应改“printf("%#x,%o\n",a,b);”为或“printf("%#X,%o\n",a,b);”。本条解释不必须掌握。   4  ★以下程序输出的结果是___。 main() {     int a1=1,a2=0,a3=2;     printf("%d,%d,%d\n",a1,a1+a2+a3,a3-a1); }   答  1,3,1   5  printf函数中用到格式符%5s,其中5表示输出字符占用5列。如果字符串长度大于5,则按___输出;如果字符串长度小于5,则按___输出。   答  ①实际 ②左端补空格 6  ★已定义变量如下: int a1,a2; char c1,c2; 若要求输入a1、a2、c1和c2的值,正确的输入函数调用语句是___。   答  scanf("%d,%d,%c,%c",&a1,&a2,&c1,&c2);   7  输入两个整型变量a、b的值,输出下列算式以及运算结果___。 a+b、a-b、a*b、a/b、(float)a/b、a%b 每个算式占一行。如a=10,b=5,a+b输出为:10+5=15   答  设int a=10,b=5;以下为输出语句及结果: ①printf("%d+%d=%d\n",a,b,a+b);        10+5=15 ②printf("%d-%d=%d\n",a,b,a-b);        10-5=5 ③printf("%d*%d=%d\n",a,b,a*b);        10*5=50 ④printf("%d/%d=%d\n",a,b,a/b);        10/5=2 ⑤printf("%(float)d/%d=%f\n",a,b,(float)a/b);     (float)10/5=2.000000 ⑥printf("%d%%%d=%d\n",a,b,a%b);        10%5=0   8  ★输入一个非负数,计算以这个数为半径的圆周长和面积。 答  #define PI 3.1415926 main() {       float r,l,area;       printf("Input a positive:");       scanf("%f",&r);       l=2*PI*r;       area=PI*r*r;       printf("l=%f\tarea=%f\n",l,area); }   9  输入任意一个3位数,将其各位数字反序输出(例如输入123,输出321)。   答  main() {    int x,y;    printf("Input a number(100-999):");    scanf("%d",&x);    y=100*(x%10)+10*(x/10%10)+x/100;   /*注意分析此处算法*/    printf("%d--->%d\n",x,y); }   10  ★输入任意大小的3个整数,判断其中是否有两个奇数一个偶数。若是则输出YES,不是则输 出NOT(要求用条件表达式进行判断,不使用if语句)。   答  main() {    int x,y,z,oddcount=0; /*奇数数计数变量*/    printf("Input x,y,z:");    scanf("%d,%d,%d",&x,&y,&z);    x%2==1?oddcount++:0;    y%2==1?oddcount++:0;    z%2==1?oddcount++:0;    oddcount==2?printf("YES"):printf("NOT"); }   11  求前驱字符和后继字符。输入一个字符,找出它的前驱字符和后继字符,并按ASCII码值,按从大到小的顺序输出这3个字符及其对应的ASCII码值。   答  本题考查同学们对字符类型数据的认识,如果在ASCII范围内则即可以显示为字符,又可以显示为整数值;无论是否能够显示为字符,字符类型数据是可能参与数值运算的,切记。 main() {    char c;    printf("Input character:");    scanf("%c",&c);    printf("%c----->%d\n",c-1,c-1);    printf("%c----->%d\n",c,c);    printf("%c----->%d\n",c   +1,c+1);    getch();   /*为便于调试程序,运行至此程序停顿,此时可以看到运行结果,按任意键程序真难得结束并返回到编辑环境*/ }   12  ★输入三角形的边长,求三角形面积(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2)。   答  #include"math.h"   /*由于程序中使用了开平方函数sqrt(),所以需要包含数学头文件*/ main() {    float a,b,c,s,area;    int ok=0;    printf("Input a,b,c:");    scanf("%f,%f,%f",&a,&b,&c);    a+b>c?ok++:0;   /*以下3条语句为判断是否输入的数据是否构成封闭三角形*/    a+c>b?ok++:0;    b+c>a?ok++:0;    ok==3?(s=(a+b+c)/2,area=sqrt(s*(s-a)*(s-b)*(s-c)),printf("area=%f",area)):printf("error");    getch(); }   第四章 选择结构程序设计 -习题答案 1  ★设x、t均为int型变量,则执行语句“x=10;t=x&&x>10;”后,t的值为___。   答  0   2  ★假定所有变量均已正确定义,则程序段: int a=0, y=10; if(a=0)y- -; else if(a>0)y++; else y+=y; 运行后 y 的值是___;   答  20   3  ★能表述 20<x<30 或 x<-100 的C 语言表达式是___。 答  x>20&&x<30||+x<-100   4  ★若有定义语句“int a=25,b=14,c=19;”,则以下语句执行结果是___。 if(a<=25 && b<=2 && c)     printf("***a+b=%d, a-b=%d***\n", a+b, a-b); else printf("***a=%d, b=%d, c=%d***\n",a, b, c);   答  ***a=25, b=14, c=19***   5  ★假定 i 和 j 为 int 型变量,则执行以下语句后 i 的值是___。 int i=1; switch(i) {     case 1: { for(j=0; j<9; j++) i+=j; break;}     case 2: { for(j=1; j<10; j++) i+=j; break;}     case 3: i++; }   答  37 分析:执行了case 1: 和case 3: 中的代码。同时case 1:语句中的{ }是可以取消的。   6  ★以下两条 if 语句可合并成一条 if 语句,即___。 if(a<=b) x=1; else y=2; if(a>b)printf("***y=%d\n", y); else printf("***x=%d\n",x);   答  if(a<=b) printf("***x=%d\n",x=1); else printf("***y=%d\n", y=2);   7  ★输入两个字符,若这两个字符的序号(ASCII码)之差为偶数,则输出它们的后继字符,否则输出它们的前驱字符。   答  main() {     char a,b;     printf("Input two chatacter a,b:");     scanf("%c,%c",&a,&b);     if((a-b)/2==0)     printf("%c,%c",a+1,b+1);     else printf("%c,%c",a-1,b-1); }   8  ★输入整数 a 和 b ,如果 a 能被 b 整除,就输出算式和商,否则输出算式、整数商和余数。 答  main() {     int a,b;     printf("Input two integer numbers a,b:");     scanf("%d,%d",&a,&b);     if(b!=0&&a%b==0)         printf("%d/%d=%d",a,b,a/b);     else         printf("%d/%d=%d......%d",a,b,a/b,a%b); }   9  输入某个点 A 的平面坐标 (x,y),判断(输出)A点是在圆内、圆外还是在圆周上,其中圆心坐标为 (2,2),半径为 1。   答  include"math.h" main() {     float x,y,d;     printf("Input x,y:");     scanf("%f,%f",&x,&y);     d=sqrt((x-2)*(x-2)+(y-2)*(y-2));     if(d>1)printf("outside");     else if(d<1)printf("inside");     else printf("inside"); }   10  ★输入年号和月份,输出这一年该月的天数(一个年份,先判断是否闰年)。   答  main() {     int y,m,d,f;     printf("Input year and month y-m:");     scanf("%d-%d",&y,&m);     f=(y%4==0&&y/100!=0||y/400==0);     if(m==2)       d=28+f; /*依据是否闰年决定2月份的实际天数,若是闰年,则f=1,d即为29天*/     else       d=31-(m==4)+(m==6)+(m==9)+(m==11);/*m==4时其值为1,则本月为30天,典型算法,重要啊*/     printf("%d-%d is %d days.\n",y,m,d); }   11  ★请将以下语句改写成 switch 语句(a>0)。 if(a<30)         m=1; else if(a<40)    m=2; else if(a<50)    m=3; else if(a<60)    m=4; else             m=5   答  switch(a/10) {     case 1:     case 2:     case 3:m=1;break;     case 4:m=2;break;     case 5:m=3;break;     case 6:m=4;break;     default:m=5; }   12  有一函数     x-1    -5<x<0 y=  x      x=0     x+1    0<x<8 编写一程序,要求输入 x 的值,输出 y 的值。分别用不嵌套的 if 语句,嵌套的 if 语句,switch语句编写。   答  使用不嵌套的 if 语句程序如下: main() {     float x,y;     printf("Input x:");     scanf("%f",&x);     if(x>-5&&x<0)y=x-1;     if(x==0)y=0;     if(x>0&&x<8)y=x+1;     printf("y=%f\n",y); }     使用嵌套的 if 语句程序如下: main() {     float x,y;     scanf("%f",&x);     if(x>-5&&x<8)         if(x<0)y=x-1;         else if(x==0)y=0:              else y=x+1;     printf("y=%f\n",y); } main()     float x,y;     scanf("%f",&x);     if(x<8)         if(x>0)y=x+1;         else if(x==0)y=0;              else if(x>-5)y=x-1;     printf("y=%f\n",y); }  使用多分支语句程序如下: main() {     float x,y;     int m;     printf("Input x:");     scanf("%f",&x);     if(x>-5&&x<8)         if(x<0)m=-1;         else if(x==0)m=0:              else m=1;     switch(m)     {         case -1:y=x-1;break;         case  0:y=0;break;         case  1:y=x+1;break;     }     printf("y=%f\n",y); }   以下为假设对int类型的变量进行处理,但毕竟不算完美 main() {     int x,y;     printf("Input x:");     scanf("%d",&x);     switch(x)     {         case -4:         case -3:         case -2:         case -1: y=x-1; break;         case  0: y=0; break;         case 1:         case 2:         case 3:         case 4:         case 5:         case 6:         case 7: y=x+1; break;     }     printf("y=%d\n",y); }   第五章 循环结构程序设计 -习题答案 1  ★输入 n 个整数,求这 n 个数之中的偶数平均值,并输出。   答  main() {     int n,i,x,sum=0,count=0;     printf("Input n:");     scanf("%d",&n);     for(i=0;i<n;i++)     {         printf("Input [%d]:",i+1);         scanf("%d",&x);         if(x%2==0){sum+=x;count++;}     }     printf("Average is:%f\n",(float)sum/count);     getch(); }   2  ★输入一串字符,直到输入一个星号(*)为止,统计(输出)其中的字母个数和数字字符个数。   答  #include"stdio.h" main() {     char ch;     int charcnt=0,numcnt=0;     while((ch=getchar())!='*')     {         if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')charcnt++;         if(ch>='0'&&ch<='9')numcnt++;     }     printf("Characters number:%d\nDigits number:%d\n",charcnt,numcnt);     getch(); }   3  ★从键盘输入一个正整数 n,计算该数的各位数字之和并输出。例如,输入数是5246,则计算5+2+4+6=17并输出。 答  #include"stdio.h" main() {     int n,i,sum=0,count=0;     printf("Input n:");     scanf("%d",&n);     while((n/10)!=0)     {         count++;         sum+=n%10;         printf("%d+",n%10);         n/=10;     }     printf("=%d",sum+n);     getch(); }   4  ★输入一个字符串,将其中的大写字母改为小写字母,小写字母改为大写字母,然后输出。   答  #include"stdio.h" main() {     char ch;     printf("Input string:");     while((ch=getchar())!='\n')     {         if(ch>='a'&&ch<='z')printf("%c",ch-32);         if(ch>='A'&&ch<='Z')printf("%c",ch+32);     }     getch(); }   5  设某县2000年工业总产值为200亿元,如果该县预计平均年工业总产值增长率为4.5%,那么多少年后该县年工业总产值将超500亿元。   答  main() {     float x=200;     int n=0;     do     {         x*=(1+0.045);         n++;     }while(x<500);     printf("n=%d",n);     getch(); }   6  ★输出1~999中能被3整除,而且至少有一位数字是5的所有数字。   答  main() {     int x,y,flag;     for(x=1;x<1000;x++)     {         flag=0;         y=x;         if(y%3==0) /*余数为0说明该数能够被3整除*/         {             while(y%10!=0)             {                 if(y%10==5)flag=1; /*依个位、十位、百位顺序判断是否余数为5*/                 y/=10;             }         if(flag==1)printf("%d\t",x);         }     }     getch(); }   7  求爱因斯坦数学题。有一条长阶,若每步跨2阶,则最后剩1阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶每步跨6阶,则最后剩5阶每步跨7阶,最后正好1阶。   答  main() {     int x=0,flag=0;     while(1)     {         x++;         if(x%2==1)         if(x%3==2)         if(x%5==4)         if(x%6==5)         if(x%7==0)         {             printf("%d",x);             break;
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服