游洪跃的C语言程序设计教程第3章 习题解答
- 格式:doc
- 大小:192.50 KB
- 文档页数:17
“std_lib_facilities.h”这个头文件是《c++程序设计原理与实践》一直用到的头文件,要将此头文件放在你的文件目录中,下面我给出这个头文件://// This is a standard library support code to the chapters of the book// "Programming -- Principles and Practice Using C++" by Bjarne Stroustrup//#ifndef STD_LIB_FACILITIES_GUARD#define STD_LIB_FACILITIES_GUARD 1#include <iostream>using namespace std;//------------------------------------------------------------------------------// The call to keep_window_open() is needed on some Windows machines to prevent// them from closing the window before you have a chance to read the output.inline void keep_window_open(){cin.get();}//------------------------------------------------------------------------------#endif // STD_LIB_FACILITIES_GUARD将上述代码拷贝到记事本中,把后缀.txt改为.h,放在你的根目录即可引用。
第三章对象,类型和值第6 题#include"std_lib_facilities.h"int main(){int a;int b;int c;int t;cout<<"请您输入三个数:\n";cin>>a>>b>>c;if(a>b)//如果a大于b,将a,b交换.{t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}cout<<a<<","<<b<<","<<c<<endl;}下面是vc6.0的运行结果:第7题#include <iostream>#include<string>using namespace std;//------------------------------------------------------------------------------int main(){cout << "请您输入三个字符串:\n";string first;string second;string third;string space;cin >> first >> second>>third; // 读入三个字符串。
C语言程序设计(第3版)-参考答案C语言程序设计(第3版) - 参考答案C语言是一种广泛应用于软件开发领域的编程语言,它具有高效、简洁、灵活等特点。
《C语言程序设计(第3版)》是一本经典的教材,本文将提供一些参考答案,帮助读者更好地理解和掌握C语言程序设计。
一、基础知识1. 什么是C语言?C语言是一种通用的编程语言,由贝尔实验室的Dennis Ritchie开发,在20世纪70年代广泛流行起来。
它被设计为一种低级语言,可以直接操作计算机硬件,并提供了足够的抽象层次来方便高级程序设计。
2. 如何输出“Hello, World!”?在C语言中,使用printf函数可以输出文本信息。
要输出“Hello, World!”,可以使用以下代码:```#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```3. 如何定义和使用变量?在C语言中,可以使用关键字`int`、`float`、`char`等定义变量。
例如:```int age = 20;float weight = 60.5;char grade = 'A';```定义后的变量可以用于存储不同类型的值,并在程序中进行操作和输出。
二、控制流程1. 什么是条件语句?条件语句允许程序通过判断条件来选择性地执行不同的代码块。
在C语言中,常用的条件语句是`if`语句。
例如:```if (score >= 60) {printf("Pass\n");} else {printf("Fail\n");}```根据变量`score`的值,判断学生是否及格并输出相应结果。
2. 什么是循环语句?循环语句可以重复执行一段代码块,以达到多次执行的目的。
在C 语言中,常用的循环语句有`for`、`while`和`do while`。
习题三参考答案(1)从键盘输入一个年份值,判断是否闰年。
设iYear为某一年份,iYear为闰年的条件为:iYear可以被4整除且不可以被100整除,或者iYear可以被400整除。
#include "Stdio.h"#include "Conio.h"int main(void){int iYear;printf("please input the year:");scanf("%d",&iYear);if(iYear%400==0||(iYear%4==0&&iYear%100!=0))printf("%d is leap",iYear);elseprintf("%d is not leap",iYear);getch();return 0;}(2)从键盘输入三个整数,按由小到大的顺序输出。
#include "stdio.h"main(){int i,j,k,max;scanf("%d%d%d",&i,&j,&k);max=i>j?i:j;max=max>k?max:k;printf("max=%d",max);getch();}(3)假设星期一至星期五每工作一小时的工资是20元,星期六和星期日每工作一小时的工资是平时的3倍,其中工资的4.5%是税金。
试编一程序从键盘输入星期序号(1,2,3,4,5,6,7,分别表示星期一至星期天)和工作小时数,计算该日的工资及应交税金。
#include "Stdio.h"#include "Conio.h"int main(void){int iWeek,iHours ;float fSalary,fTaxes;printf("please input the week number(1-7):");scanf("%d",&iWeek);printf("please input the work hours(1-12):");scanf("%d",&iHours);switch(iWeek){case 1:case 2:case 3:case 4:case 5:fSalary=20*iHours;fTaxes=fSalary*0.045;break;case 6:case 7:fSalary=3*20*iHours;fTaxes=fSalary*0.045;break;}printf("the salary is %f ,the taxes is %f",fSalary,fTaxes);getch();return 0;}(4)从键盘输入三角形的三条边长,判断是否构成三角形,如能则求出三角形的周长和面积并输出;如不能,输出不能构成三角形的信息。
《C语言程序设计教程》第三版课后习题参考答案C语言程序设计教程第三版课后习题参考答案第一章:C语言概述1.1 C语言的特点答案:C语言是一种通用的、面向过程的程序设计语言,具有高效、简洁、灵活等特点。
它提供了丰富的程序设计元素和功能,适用于各种不同的应用领域。
1.2 C语言程序的基本结构答案:C语言程序由预处理指令、函数声明、函数定义、变量声明和语句组成。
其中,预处理指令用来引入头文件或定义宏,函数声明用来声明函数的名称和参数,函数定义用来实现函数的功能,变量声明用来声明变量的类型和名称,语句用来表达具体的计算过程。
1.3 C语言的数据类型答案:C语言提供了多种数据类型,包括基本类型(整型、浮点型、字符型等)和派生类型(数组、指针、结构体等)。
每种数据类型在内存中占据一定的存储空间,并具有特定的取值范围和操作规则。
1.4 C语言的运算符和表达式答案:C语言支持各种运算符和表达式,例如算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。
通过运算符和表达式可以进行各种数值计算和逻辑判断。
第二章:基本数据类型与运算2.1 整型数据类型答案:C语言提供了不同长度的整型数据类型,包括有符号整型(int、long等)和无符号整型(unsigned int、unsigned long等)。
整型数据类型可以表示整数值,并具有不同的取值范围。
2.2 浮点型数据类型答案:C语言提供了浮点型数据类型(float、double等),用来表示带小数部分的实数值。
浮点型数据可以表示较大或较小的数值,并具有一定的精度。
2.3 字符型数据类型答案:C语言提供了字符型数据类型(char),用来表示单个字符。
字符型数据可以用于表示各种字符(包括字母、数字、符号等)。
2.4 布尔型数据类型答案:C语言不直接支持布尔型数据类型,但可以使用整型数据类型来表示布尔值(0表示假、非零表示真)。
C程序设计(第三版)课后习题参考解答第1章C语言概述1.5 参照本章例题,编写一个C程序,输出以下信息:******************************Very Good!******************************解:main ( ){printf(“****************************** \n”);printf(“\n”);printf(“Very Good! \n”);printf(“\n”);printf(“****************************** \n”);}1.6 写一个程序,输入a,b,c三个值,输出其中最大者。
解:main ( ){int a,b,c,max;printf(“请输入三个数a,b,c: \n”);scanf(“%d,%d,%d”,&a,&b,&c);max=a;if (max<b)max=b;if (max<c)max=c;printf(“最大数为:%d ”,max);}第2章程序的灵魂——算法2.1 什么叫结构化的算法?为什么要提倡结构化的算法?解:由一些基本结构顺序组成的算法称为结构化的算法。
由于在基本结构之间不存在非顺序的跳转,流程的转移只存在于一个基本结构范围之内,因而提高了算法的质量。
2.7 什么叫结构化程序设计?它的主要内容是什么?解:结构化程序就是用高级语言表示的结构化算法。
它的主要内容包括“自顶向下,逐步细化”的分析方法和“模块化设计”的解决方法,以及“结构化编码”的实现方法。
第3章数据类型、运算符与表达式3.4将以下三各整数分别赋给不同类型的变量,请画出赋值后数据在内存中的存储形式。
注:如果没有学过二进制和补码,此题可以不做。
解:各数据在内存中的存储形式如下表所示:它是一个负数的补码,对其再求一次补码可得其真值,即-(65536-32769)=-32767。
程序设计基础-C语言(科学出版社教材)第三章-程序结构教材习题答案1.0编写程序使整形变量:a=3,b=4,c=5,p=0xfffe,q=0xffff;浮点型变量:x=1.2,y=2.4,z=3.6;无符号型变量:u=5127486,n=128765,字符型变量:c1=’a’,c2=’b’;#include <stdio.h>void main(){int a,b,c,p,q;float x,y,z;unsigned int u,n;char c1,c2;a=3;b=4;c=5;p=0xfffe;q=0xffff;x=1.2;y=2.4;z=-3.6;u=5127486;n=128765;c1='a';c2='b';printf("a=%d b=%d c=%d\n",a,b,c);printf("p=%#x q=%#x\n",p,q);printf("x=%f,y=%f,z=%f\n",x,y,z);printf("x+y=%.2f y+z=%.2f x+z=%.2f\n",x+y,y+z,x+z);printf("u=%8u n=%8u\n",u,n);printf("c1='%c' or %d\n",c1,c1);printf("c2='%c' or %d\n",c2,c2);}2.0 读入三个双精度数,求出它们的平均值并保留此平均值小数点后二位,最后输出结果。
#include <stdio.h>void main(){double a,b,c,d;printf("请输入三个双精度数:");scanf("%lf,%lf,%lf",&a,&b,&c);d=(a+b+c)/3;printf("d=%.2lf",d );}3.0 编写一个程序,要求输入三个整数值a,b,c,把c中的值赋给b, 把b中的值赋给a, 把a中的值赋给c,最后输出a,b,c.#include <stdio.h>void main(){int a,b,c,t;printf("输入三个整数值:");scanf("%d,%d,%d",&a,&b,&c);t=a;a=b;b=c;c=t;printf("a=%d,b=%d,c=%d\n",a,b,c);}4.0 编写一个程序,要求输入一个华氏温度,输出对于的摄氏温度。
练习3-1答案一、选择题1.在C语言库函数中,可以输出double型变量x值的函数是( D )。
A.getchar B.scanf C.putchar D.printf 2.执行语句:printf("The program\'s name is c:\\tools\book.txt");后输出是( D )。
A.The program's name is c:tools book.txtB.The program's name is c:\tools book.txtC.The program's name is c:\\tools book.txtD.The program's name is c:\toolook.txt3.以下程序的输出结果是( D )。
(注:□表示空格)main(){printf("\n*s1=%15s*", "chinabeijing");printf("\n*s2=%-5s*", "chi");}A.*s1=chinabeijing□□□* B.*s1=chinabeijing□□□*s2=**chi* *s2=chi□□*C.*s1=*□□chinabeijing* D.*s1=□□□chinabeijing* *s2=□□chi* *s2=chi□□*4.选择程序的运行结果,①是( B )、②是( B )、③是( D )、④是( C )。
#include<stdio.h>main(){int a=-10, b=-3;printf("%d\n", a%b); /*输出①*/printf("%d\n", a/b*b); /*输出②*/printf("%d\n", -a%b); /*输出③*/printf("%d\n", a-=b+++1); /*输出④*/}①A.-2 B.-1 C.0 D.1②A.-10 B.-9 C.-8 D.0③A.-2 B.-1 C.0 D.1④A.-10 B.-9 C.-8 D.-75.以下C程序正确的运行结果是( D )。
C程序设计第三版答案1.5请参照本章例题,编写一个C程序,输出以下信息:************Very Goodj!************解:main(){printf(" ************ \n");printf("\n");printf(" Very Good! \n");printf("\n");printf(" ************\n");}1.6编写一个程序,输入a b c三个值,输出其中最大者。
解:main(){int a,b,c,max;printf("请输入三个数a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if(max<b)max=b;if(max<c)max=c;printf("最大数为:%d",max);}第三章3.3 请将下面各数用八进制数和十六进制数表示:(1)10 (2)32 (3)75 (4)-617(5)-111 (6)2483 (7)-28654 (8)21003解:十八十六(10)=(12)=(a)(32)=(40)=20(75)=(113)=4b(-617)=(176627)=fd97-111=177621=ff912483=4663=963-28654=110022=901221003=51013=520b3.5字符常量与字符串常量有什么区别?解:字符常量是一个字符,用单引号括起来。
字符串常量是由0个或若干个字符而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\0'.3.6写出以下程序的运行结果:#include<stdio.h>void main(){char c1='a',c2='b',c3='c',c4='\101',c5='\116';printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);printf("\t\b%c %c\n",c4,c5);解:程序的运行结果为:aabb cc abcA N3.7将"China"译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母,例如,字母"A"后面第4个字母是"E",用"E"代替"A".因此,"China"应译为"Glmre".请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并输出.main(){char c1="C",c2="h",c3="i",c4='n',c5='a';c1+=4;c2+=4;c3+=4;c4+=4;c5+=4;printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);}3.8例3.6能否改成如下:#include<stdio.h>void main(){int c1,c2;(原为 char c1,c2)c1=97;c2=98;printf("%c%c\n",c1,c2);printf("%d%d\n",c1,c2);}解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.3.9求下面算术表达式的值.(1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)3.10写出下面程序的运行结果:#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);}解:结果: 9,11,9,10第4章,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2 ='b'.想得到以下的输出格式和结果,请写出程序要求输出的结果如下: a= 3 b= 4 c= 5x=1.200000,y=2.400000,z=-3.600000x+y= 3.60 y+z=-1.20 z+x=-2.40u= 51274 n= 128765c1='a' or 97(ASCII)c2='B' or 98(ASCII)解:main(){int a,b,c;long int u,n;float x,y,z;char c1,c2;a=3;b=4;c=5;x=1.2;y=2.4;z=-3.6;u=51274;n=128765;c1='a';c2='b';printf("\n");printf("a=%2d b=%2d c=%2d\n",a,b,c);printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);printf("x+y=%5.2f y=z=%5.2f z+x=%5.2f\n",x+y,y+z,z +x);printf("u=%6ld n=%9ld\n",u,n);printf("c1='%c' or %d(ASCII)\n",c1,c2);printf("c2='%c' or %d(ASCII)\n",c2,c2);}4.5请写出下面程序的输出结果.结果:575 767.856400,-789.12396267.856400 ,-789.12396267.86,-789.12,67.856400,-789.123962,67.856400,-78 9.1239626.785640e+001,-7.89e+002A,65,101,411234567,4553207,d68765535,17777,ffff,-1COMPUTER, COM4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',问在键盘上如何输入?main(){int a,b;float x,y;char c1,c2;scanf("a=%d b=%d,&a,&b);scanf(" x=%f y=%e",&x,&y);scanf(" c1=%c c2=%c",&c1,&c2);}解:可按如下方式在键盘上输入:a=3 b=7x=8.5 y=71.82c1=A c2=a说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的"回车"被第二个scanf函数吸收,因此在第二\三个scanf函数的双引号后设一个空格以抵消上行入的"回车".如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一初步概念即可,以后再进一步深入理解.4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-3.75,z=57.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z); 解:main(){int a,b;float x,y,z;char c1,c2;scanf("%5d%5d%c%c%f%f",&a,&b,&c1,&c2,&x,&y,&z);}运行时输入:10 20Aa1.5 -3.75 +1.5,67.8注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。
第3章习题解答一、选择题1.以下叙述中错误的是。
A)C语言是一种结构化程序设计语言B)结构化程序由顺序、分支、循环三种基本结构组成C)使用三种基本结构构成的程序只能解决简单回题D)结构化程序设计提倡模块化的设计方法解析:结构化程序由顺序结构、循环结构和选择结构三种基本结构组成,并且由三种基本结构组成的算法结构可以解决任何复杂问题。
答案:C2.在下列选项中,不正确的赋值语句是。
A)++t; B)nl = (n2 = (n3 = 0)); C)k = i = j; D)a = b + c = 1;解析:选项A中“++t;”相当于“t = t +1;”,是正确的;选项B相当于“nl = n2 = n3 = 0;”,也是合法的;在选项C中,“k = i == j;”相当于“k = (i == 1)”,也就是将括号内关系表达式的值赋给k,是正确的;选项D相当于“b+c=1;a=b+c;”,第一个语句中赋值号的左边出现了表达式,是错误的。
答案:D3.有以下程序:/* 文件路径名:ex3_1_3\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main() */{int a = 0, b = 0; /* 定义变量*/a = 10; /* 给a赋值*/b = 20; /* 给b赋值*/printf("a+b=%d\n", a + b); /* 输出计算结果*/return 0; /* 返回值0, 返回操作系统*/}程序运行后的输出结果是。
A)a+b=10 B)a+b=30 C)30 D)出错解析:“printf("a+b=%d\n", a + b);”用于输出a+b的值,输出形式为a+b=30。
答案:B4.以下叙述中正确的是。
A)调用printf()函数时,必须要有输出项B)调用putchar()函数时,必须在之前包含头文件stdio.hC)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D)调用getchar()函数读入字符时,可以从键盘上输入字符所对应的ASCII码解析:对于选项A,调用printf()函数时,不一定总有输出项,所以A错误;对于选项C,C语言中,整数可以以十进制、八进制和十六进制表示,而不存在十二进制的表示形式,所以B错误;对于选项D,getchar()读入字符时,从键盘输入的均被认为是字符形式存入到变量中,而不能输入该字符对应的ASCII码。
所以D错误。
对于选项B,由于putchar()是标准库函数,所以在程序开头必须包含头文件stdio.h。
答案:B5.有以下程序:/* 文件路径名:ex3_1_5\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main() */{char c1 = '1', c2 = '2'; /* 定义变量*/c1 = getchar(); c2 = getchar(); /* 输入c1,c2 */putchar(c1); putchar(c2); /* 输出c1,c2 */return 0; /* 返回值0, 返回操作系统*/}当运行时输入a<回车>后,以下叙述正确的是。
A)变量c1被赋予字符a, c2被赋予回车符B)程序将等待用户输入2个字符C)变量c1被赋予字符a, c2中仍是原有字符2D)变量c1被赋予字符a, c2中将无确定值解析:函数getchar()用于从终端输入一个字符,包括回车符在内,所以本题中c1被赋值字符a,c2被赋予回车符。
答案:A6.设有定义:“int a=2,b=3,c=4;”,则以下选项中值为0的表达式是。
A)(!a==1)&&(!b==0) B)(a>b)&&!c||1 C)a&&b D)a||(b+b)&&(c-a) 解析:选项A中的值为(!2==1)&&(!3==0)= (0==1)&&(!3==0)= 0&&(!3==0)=0。
选项B 中的值为(2>3)&&!4||1=0&&!4||1=0||1=1。
选项C中的值为2&&3=1。
选项D中的值为2||(3+3)&&(4-2)=1。
答案:A7.有以下程序:/* 文件路径名:ex3_1_7\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main() */{int a, b, d = 25; /* 定义变量*/a = d / 10 % 9;b = a && (-1); /* 计算a,b之值*/printf("%d,%d\n", a, b); /* 输出a,b */return 0; /* 返回值0, 返回操作系统*/}程序运行后的输出结果是。
A)6,1 B)2,1 C)6,0 D)2,0解析:由于d初值为25,所以a=d/10%9=2%9=2,b=2&&(-1)=1,所以输出结果应该是:2. 1。
答案:B8.在嵌套使用if语句时,C语言规定else总是。
A)和之前与其具有相同缩进位置的if配对B)和之前与其最近的if配对C)和之前与其最近的且不带else的if配对D)和之前的第一个if配对解析:C语言的语法规定else子句总是与前面最近的不带else的if相结合。
答案:C9.有以下程序段:int k = 0, a = 1, b = 2, c = 3;k = a < b ? b : a; k = k > c ? c : k;执行该程序段后,k的值是。
A)3 B)2 C)1 D)0解析:第一个条件表达式a < b ? b : a = 1 < 2 ? 2 : 1 = 2,所以这时k=2,第二个条件表达式k > c ? c : k = 2 > 3 ? 3 : 2 = 2。
答案:B10.设有条件表达式“(EXP)?i++:j—”,则以下表达式中与"(EXP)”完全等价的是。
A)(EXP==0) B)(EXP!=0) C)(EXP==1)D)(EXP!=1)解析:条件表达式"(EXP)”为真表示EXP非0,也就是选项B。
答案:B11.下列叙述正确的是。
A)break语句只能用于switch语句B)break语句必须与switch语句中的case配对C)在switch语句中必须使用defaultD)在switch语句中,不使用break语句在语法上也是正确的解析:break语句可在循环语句中使用;也可在case之后的语句中使用break语句;在switch语句中没有break在语法上也是正确的。
.答案:D12.在以下给出的表达式中,与while(E)中的"(E)"不等价的表达式是。
A)(!E==0)B)(E>0||E<0)C)(E==0)D)(E!=0)解析:表示当E为假时,选项C 中“(E==0)”为真,所以不等价,可知应选择选项C。
答案:C13.若有以下程序:/* 文件路径名:ex3_1_13\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main() */{int y = 10; /* 定义变量*/while (y--); /* while循环*/printf("y=%d\n", y); /* 输出y */return 0; /* 返回值0, 返回操作系统*/}程序运行后的输出结果是。
A)y=0 B)y=-1 C)y=1 D)while构成无限循环解析:当结束循环时,y--的值为0,先取出y的值作为表达式的值,所以y=0,然后y 的值再自减1,所以最后y=-1。
答案:B14.有以下程序:/* 文件路径名:ex3_1_14\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main(void) */{int k = 5, n = 0; /* 定义变量*/do{switch (k){case 1:case 3: n += 1; k--; break;default: n = 0; k--;case 2:case 4: n += 2; k--; break;}printf("%d", n); /* 输出n */} while (k > 0 && n < 5);printf("%\n"); /* 换行*/return 0; /* 返回值0, 返回操作系统*/}程序运行后的输出结果是。
A)235 B)0235 C)02356 D)2356解析:do-while语句的特点是先执行循环体,然后再判断循环条件是否成立,当循环条件的值为0时循环结束。
第1次循环时,k的初值为5,进入switch(5),执行default,执行“n = 0; k--;”后k=4,再执行“n += 2; k--”后n=n+2=2,k=3。
然后再输出n的值2。
第2次循环时,k的值为3,进入switch(3),执行case 3,执行“n += 1; k--;”后n=n+1=3,k=2,然后再输出n的值3。
第3次循环时,k的值为2,进入switch(2),执行case 2,执行“n += 2; k--”后n=n+2=5,k=1,然后再输出n的值5,这时“(k > 0 && n < 5)”不成立,结束循环不。
答案:A15.若变量已正确定义,有以下程序段:/* 文件路径名:ex3_1_15\main.c */#include <stdio.h> /* 包含库函数printf()所需要的信息*/int main(void) /* 主函数main() */{int i = 0; /* 定义变量*/do { printf("%d,", i); } while (i++);printf("%d\n", i); /* 输出i */return 0; /* 返回值0, 返回操作系统*/}其输出结果是。