程序设计基础(C)作业答案
程序设计基础(C)作业答案(带原题)
《程序设计基础(C)》作业第1章C语言的基本构成一、选择题1.(A)是构成C语言程序的基本单位。
(A)函数(B)过程(C)子程序(D)文件2.(B)是C语言提供的合法的数据类型关键字。
(A)Float (B)signed(C)integer (D)Char3.以下选项中不合法的用户标识符是(A)。
(A)abc.c (B)file(C)Main (D)PRINTF4.以下选项中不合法的用户标识符是(AB)。
(A)l23 (B)printf(C)A$(D)Dim5.合法的C语言长整型常数是(A)。
(A)0L (B)5712700(C)0.054838743 (D)2.1869e106.C语言中,要求运算数必须是整型的运算符是(A)。
(A)% (B) /(C)< (D)!7.以下选项中正确的整型常量是(B)。
(A)12. (B)-20(C)l,000 (D)04588.以下选项中不正确的实型常量是(B)。
(A)2.607E-1 (B)0.8103e2.(C)77.77 (D)456e-29.C语言中运算对象必需是整型的运算符是(D)。
(A) \ (B) +(C) * (D) %二、程序调试题1.编辑、调试以下程序步骤1:在Visual C++环境下新建文件可用[开始]→[程序]→[Microsoft Visual C++6.0] →[Microsoft Visual C++6.0] →[文件] →[新建]→[文件] →[C++ Sourse File],输入文件int z;z=x+y;return z;}int main( ){int add(int,int); /* 函数的说明,告诉系统在主函数中要调用add函数 */ int a,b,c; /* 变量的定义*/scanf("%d %d\n",&a,&b);c=add(a,b); /* 函数调用 */printf("%d+%d=%d\n",a,b,c);/* 调用系统输出函数printf,%d为格式控制符,依次用后面的变量值填充,以整数形式输出 */}请思考文件ex1-1.c由几个函数构成?由个函数构成调用了那几个系统函数?调用2个系统函数,分别是scanf和printf此程序中用到了哪几个保留字?哪几个用户自定义标识符?保留字:int,return 自定义表示符:z,x,y,a,b,c步骤3:编译并运行程序,程序运行时输入两个整数,20 40 ,观察程序运行的结果。
C程序设计基础胡同森课后答案
目录一、C 语言程序设计习题参考答案 (1)二、C语言程序设计复习题⒈单项选择题 (41)⒉填空题 (45)⒊写输出结果题 (46)⒋程序填空题 (53)⒌编程题 (61)三、C语言程序设计复习题答案⒈单项选择题 (62)⒉填空题 (63)⒊写输出结果题 (63)⒋程序填空题 (64)⒌编程题(参考) (65)四、C语言程序设计模拟试卷、参考答案⒈试卷一 (74)⒉试卷二 (77)浙江工业大学计算中心编印C程序设计习题参考答案习题一1. 填空题⑴计算机程序设计语言按其发展可分为三类,即机器语言、汇编语言和高级语言。
⑵ C程序是由函数构成的,一个C程序中至少包含 1个main函数。
因此,函数是C程序的基本单位。
⑶ C程序注释是由 /* 和 */ 所界定的文字信息组成的。
⑷函数体一般包括函数首行和函数体。
⑸在任何C程序中都必须且只能有一个主函数, 主函数名必须为 main 。
2. 判断下列各个叙述的正确与否⑴ C程序的执行总是从该程序的main函数开始,在main函数最后结束【√】⑵ C程序的注释部分可以出现在程序中任何位置,它对程序的编译和运行不起任何作用,但可以增加程序的可读性【√】⑶由“/*”与“*/”界定的注释必须在同一行【╳】⑷通过了编译、连接的程序就是正确的程序【╳】⑸有计算结果输出的程序一定是正确的程序【╳】⑹编译错误是语法错误,运行结果错误是逻辑错误【√】⑺编译时在信息窗口出现包含“error”的信息,说明程序存在警告性错误【╳】⑻源程序每次修改后,都必须重新编译、连接【√】3. 简答题⑴算法的含义、特点是什么?解答:算法是解题方法的精确描述。
有穷性、确定性、有多或零个输入、有1或多个输出、有效性。
⑵写出一个C程序的基本结构。
由编译预处理命令、注释、1个main和若干个自定义函数构成,函数格式如下:函数类型函数名(类型标识符形参,类型标识符形参,...){ 类型声明语句; 执行语句部分; }⑶写出在你使用的计算机系统上,进入C环境以及运行、调试程序的简要步骤。
C程序设计基础练习题4及答案
一、单选题1、以下数组定义中,错误的是()。
A.inta[3]={‰2,3,4};B.inta[]={l,2,3};C.inta[5]={l z2,3};D.inta[5],b;正确答案:A解析:A、数组长度为3,但赋了4个初值2、设有定义inta[10]={0};则说法正确的是()。
A.数组初始化错误,初值个数少于数组元素个数B.数组a有10个元素,各元素的值为0C.数组a有1个元素,其值为0D.数组a有10个元素,其中a[0]的值为0,其他元素的值不确定正确答案:B解析:B、当定义的同时,给数组赋了初值,但初值个数小于数组长度时,剩余的数组元素全赋为03、执行下面的初始化语句,()保存的不是字符串。
A.charstr[6]={,S, ,r,,,i√n,,,g,};B.charstr[]={'S';t','r,,,i,z,n∖,g,,0};C.charstr[10]={'S',,t',,r',,i√n∖,g,,,∖0,};D.charstr[10]="String";正确答案:A解析:A、Str数组长度为6,6个元素值都不是'0)没有成为字符串B›,∖0,的ASClI码是0,初始化为。
或'∖0'是一样的。
4、设有以下定义,则数组Sl和s2()ocharsl[]={'S'z,t','r'∕i√n','g');chars2[]="String";A.长度不同,但内容相同B.长度相同,内容也相同C.长度相同,但内容不同D.长度不同,内容也不同正确答案:D解析:D、s2比Sl多一个∖0T长度多15、设已定义charstr[6]={,a√b√∖O√c√d√∖O,};执行语句printf(("%s",str)后,输出结果为()。
c语言《程序设计基础》课后习题参考答案与解析
c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。
b) 一个C程序中至少应包括一个 main函数。
c) 在C语言中,输出操作是有库函数 printf( )函数完成。
二、单选题1、A2、C3、B解析:第1题答案:A 。
因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。
且到main函数结束。
第2题答案:C 。
因为 main函数没有限制必须位于程序的最前面。
C程序书写自由,一行内可写几个语句。
在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。
不过C语言本身并没有输入输出语句,输入输出是由函数完成的。
第3题答案:B。
因为一个C语言程序是由若干个函数组成的。
但至少包含一个main 函数,且main函数的位置不限。
三、编程题1、编写一个输出“Welcome to C!”信息的小程序。
解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。
海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。
*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。
*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。
C语言习题(详细解答)
程序设计基础(C语言版)习题第01章绪论一.选择题1.以下叙述中正确的是________。
A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整【解析】程序设计通常分为问题建模、算法设计、编写代码和编译调试四个阶段。
所以选项A)、B)、C)说法都不完整。
2.以下关于简单程序设计的步骤和顺序的说法中正确的是。
A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构【解析】设计一个能解决实际问题的计算机程序需要经过以下几个过程:①建立模型。
②算法设计:给出解决问题的步骤,即算法。
③算法表达:选择一种表达算法的工具,对算法进行清晰的表达。
④编写程序:选择一种程序设计语言,把以上算法程序化,这称为编写程序。
⑤程序调试:对编写好的程序进行调试,修改程序中的错误。
⑥程序文档编写与程序维护。
综上所述,B)选项是符合上述描述的,其他选项不恰当。
3,叙述中正确的是________。
A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C)简单C语句必须以分号结束D)C语句必须在一行内写完【解析】函数是C程序的基本组成单位;C语言书写风格很自由,不但一行可以写多个语句,还可以将一个语句写在多行中。
故本题答案为C)。
4.以下叙述中正确的是。
A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中【解析】在C语言中,注释可以加在程序中的任何位置,选项A)错误。
C程序可以分模块写在不同的文件中,编译时再将其组合在一起,选项D)错误。
C程序设计基础第二版(高等教育出版社)习题答案
C程序设计基础第二版(高等教育出版社)习题答案习题一参考答案第1章C++语言概述一、选择题:1.D2.A3.D4.A5.A6.D7.C8.B9.B二、改后如下:#include//预处理指令,原程序缺少“#”号intmain()//定义主函数,原程序缺少返回值类型“int”(也可为“void”){cout<运行后输出:HelloWorld!三、简答题1、解答:在较大或较复杂的C++程序中,加上相关的注释信息,解释相应的程序,可提高程序的可读性。
2、C++语言有两种注释:(1)C++型注释。
从“//”开始,该行中所有字符都被作为注释处理。
(2)C型注释。
“/某”表示注释的开始,“某/”表示注释的结束,在“/某”、“某/”之间的字符均被视作注释。
3、C型注释主要用于大块注释,而且C++型注释可以嵌在C型注释中。
四、程序设计题1、编写一个程序,在屏幕上输出“IcanueC++”。
解:#includeintmain(){cout<运行后输出:IcanueC++2、参照例题,设计一个C++程序,输入两门课程的成绩,求总成绩。
解:#includemain(){int1,2,um;cout<cin>>1>>2;um=1+2;cout<}3、参照例题,设计一个C++程序,输入a、b两个整数,输出其中的最小数。
解:#includevoidmain(void){intmin(int某,inty);inta,b,m;cout<>a>>b;m=min(a,b);cout<intmin(int某,inty){intz;if(某z=y;returnz;}习题二参考答案第2章数据类型和表达式一、选择题1.C2.B3.B4.B5.A6B7.D8.C9.D11.D12..A13.D14.A15.B16.B17.B18.C19.A二、填空题1、基本类型导出类型用户定义类型2、63、iotream#include<iotream>4、一个int型数据占用的字节数5、210.C6、77、1008、?:9、falefaletrue10、(50<某)&&(某<=100)或!((50>某)||(某>100))11、(m)某100+((m/10))某10+m/10012、非零13、114、字母数字下划线15、4.5三、问答题1.C++语言中用数值“1”表示“真”,数值“0”表示“假”。
《C程序设计》作业参考答案(1-4章)
第1章C语言概述习题(P13):1.3 写出一个C程序的构成。
答:C程序由一个main函数和0个或多个自定义函数构成,每个函数的构成如下:函数类型函数名(函数参数列表){说明部分执行部分}1.4 C语言以函数为程序的基本单位,有什么好处?答:一个函数实现一个相对独立的功能,便于实现程序的模块化。
1.5 请参照本章例题,编写一个C程序,输出以下信息:*************************************************Very good!*************************************************答:参照例1.1编程如下# include <stdio.h>void main(){printf("********************************************\n");printf(" Very good!\n");printf("********************************************\n");}1.6 编写一个C程序,输入a、b、c 3个值,输出其中最大者。
答:参照例1.3编程如下法一:修改例1.3的主函数,自定义max函数不变。
# include <stdio.h>void main(){int max(int x,int y); /*函数声明*/int a,b,c,m; /*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b); /*第一次调用max函数求出前两个数的最大值放在m中*/m=max(m,c); /*再调max函数求出m和第三个数的最大数*/printf("max is %d\n",m); /*输出结果*/}int max(int x,int y) /*定义求两个数的最大数的函数max */{int z;if(x>y) z=x;else z=y;return(z);}法二:修改例1.3的主函数和max函数,将max函数改为求3个数的最大数。
C程序设计基础(第4版)习题解答
2.用 C++语言编写的源程序要成为目标程序必须要经过( D )。
(A)解释
(B)汇编
(C)编辑
(D)编译
3.C++程序中冒号
(B)分号
(C)空格
(D)花括号
4.假设有说明 int a=0; double x=5.16;,则在以下语句中,( C )属于编译错误。
一个最简单的c程序可以只有一个a库函数a解释冒号b自定义函数b汇编b分号cmain函数c编辑c空格d空函数d编译d花括号2
《C++程序设计基础》(第 4 版)(上)
习题与解答
第 1 章 基本数据与表达式
1.1 选择题
1.一个最简单的 C++程序,可以只有一个( C )。
(A)库函数
(B)自定义函数
(C)main 函数 (D)空函数
【解答】
变量类型
定义
存储
使用方式
数据
类型 标识符
数据值
通过名访问即直接访问对变量内容操作
指针
类型 * 标识符
地址值
通过指针变量的地址值间址访问对象
验证程序:
#include<iostream>
using namespace std;
int main()
{ int a,b,c;
cout<<"a,b,c= ";
} 4.数据对象在 C++中有几种不同的访问方式?请编写一个程序验证之。
【解答】
数据对象在 C++中的访问方式有:名访问,引用(别名)访问,间址访问。 验证程序:
#include<iostream> using namespace std; int main() { int a;
程序设计(C)作业三(有答案)
程序设计(C)作业三(有答案)第3次作业答案(红字为答案)1. 下列叙述中错误的是()A. 对于double 类型数组,不可直接用数组名对数组进行整体输入或输出B. 数组名代表数组所占存储区的首地址,其值不可变C. 在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示D. 可以通过赋初值的方式确定数组元素个数提示:请从数组下标的合法取值范围来考虑。
2. 已有定义char a[] = “xyz”,b[]={ ‘x’, ‘y’, ‘z’} ,以下叙述正确的是()A. 数组a 和 b 的长度相同B. 数组 a 的长度小于数组 b 的长度C. 数组a 的长度大于数组 b 的长度D. 上述说法均不正确提示:此题考察字符数组长度和字符串长度之间的关系。
3. 以下能正确定义一维数组的选项是()A. int num[];B. #define N 100 int num[N]C. int num[0..100];D. int N = 100; int num[N];提示:此题考察一维数组的维数界定问题。
4. 下列程序的输出结果是()#includevoid main(){char a[] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f ’, ‘g’, ‘h’, ‘\0 ’}; int i, j;i = sizeof(a); j = strlen(a);printf( “%d, %d\n”, i,j); }A. 9,9B. 8, 9C. 1, 8D. 9,8提示:此题考察字符数组长度和字符串长度之间的关系。
5. 以下不能正确定义二维数组的选项是()A. int a[2][] = {{1, 2}, {3, 4}};B. int a[][2] = {1, 2, 3, 4};C. int a[2][2] = {{1}, {2}};D. int a[2][2] = {{1}, 2, 3};提示:此题考察二维数组初始化的规定。
程序设计基础教程(c语言版)课后答案
z习题解答目录1.2 习题解答 (3)1.2.1 选择题 (3)1.2.2 填空题 (3)1.2.3 编程题 (4)2.2 习题解答 (5)2.2.1 选择题 (5)2.2.2 填空题 (7)2.2.3 编程题 (8)3.2 习题解答 (11)3.2.1 选择题 (11)3.2.2 填空题 (12)3.2.3 编程题 (12)4.2 习题解答 (15)4.2.1 选择题 (15)4.2.2 填空题 (17)4.2.3 编程题 (18)5.2 习题解答 (29)5.2.1 选择题 (29)5.2.2 填空题 (31)5.2.3 编程题 (33)6.2 习题解答 (37)6.2.1 选择题 (37)6.2.2 填空题 (41)6.2.3 编程题 (43)7.2 习题解答 (67)7.2.1 选择题 (67)7.2.2 填空题 (68)7.2.3 编程题 (68)21.2 习题解答1.2.1 选择题1、B【分析】在一个C程序中必须有且只能有一个main函数,而且main函数可以在任何地方出现.2、C【分析】C 语言中合法以的标识符组成为:字母,数字,下划线,且数字不能打头,亦不能为关键字。
A中,-sub 不合法。
B 中4d不合法。
D 中void 为关键字。
3、【分析】4、C【分析】转义字符中,第一个\”输出“,第二\\输出\,第三个\b退格,把前一个\去掉了,第四个\’输出’,第五个\t跳格,第六个\”输出”,第七个\n输出换行。
5、C【分析】本题将10进制17,分别按8、16进制输出。
8的进制21=2*8+1*1=17(10, 16制11=1*16+1*1=17(10)1.2.2 填空题1、主【分析】一个C源程序中至少包括一个主函数,其他函数没有限制。
2、双引号。
【分析】两种写法都是允许的,使用尖括号表示在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。
《程序设计基础[C ]》实验教程和完整答案解析
《程序设计基础》实验教程对于从事计算机行业的人员来说,设计能力是最主要的基本功之一。
入门课程《程序设计基础》的学习效果将直接关系到编程能力的掌握和提高以及后续课程的学习。
然而,实践证明,许多初学者在学习这门课程时的效果并不理想。
对初学者来说,如何学好本课程?首先,要理解教材中所给出的语法描述,并学会按语法规定去编写指定问题的求解程序。
经过这样的多次反复,初学者就可以找到编程的感觉。
除了要学好理论知识外,更重要的一点是要到计算机上去验证,因为只有实践才是检验真理的标准。
只有通过到计算机上去实践,才能发现学习中存在的问题,巩固所学知识,加强解决实际问题的能力,增强信心。
因此,《程序设计基础》课程的上机实验是本课程必不可少的实践环节,必须加以重视。
本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程,加深对语言的理解,得到程序设计基本方法和能力的训练。
在独立编写程序、独立上机调试程序的同时,真正能用高级语言这个工具去解决实际问题,对计算机学科的相关知识有所了解,从而为后续课程的学习奠定良好的基础。
本实验指导所用环境是Visual C++ 6.0及以上版本。
考虑到本课程的内容和特点,设置了十四个实验,每次实验需要两至三小时,分别侧重于教材中的一个方面,其中标有“*”号的习题的综合性较强,可供学有余力的学生选择。
实验时也可根据具体情况做适当调整。
虽然可能由于课时和机时限制等原因而不能在实验课时内全部得到安排,但还是建议学生能将其中的每个实验都能认真做一遍,因为这些实验都是学习本课程所必需的。
学生在做实验之前应仔细阅读本实验指导书,初步掌握实验的基本要求和实验方法。
在实验过程中,学生应该有意识的培养自己调试程序的能力,积累发现问题、解决问题的经验,灵活主动的学习。
对于分析运行结果的实验习题,上机前先进行用人工分析,写出运行结果,与上机调试得到的结果进行对照,如有差异,分析其原因。
对于程序编制的实验习题,上机前应考虑出较成熟的编程思路,有意识提供出多种方案,以灵活运用所学知识和技巧。
程序设计基础(C)习题指导书2021版(附带答案)
程序设计基础(C)习题指导书2021版(附带答案)《程序设计基础(c)》习题指导书第一章数据类型和表达式一.知识点1.C语言的特点:① 语言简洁紧凑,使用方便灵活;② 富有的运营商;③数据结构丰富;④具有结构化控制语句;⑤语法限制不太严格,程序设计自由度大;⑥ 能进行位运算,能实现汇编语言的大部分功能,并能直接操作硬件;⑦ 生成的目标代码质量高,程序执行效率高;⑧ 程序的可移植性很好。
2.C程序组成:⑴c程序是由函数构成的;(2)函数包括函数头(即函数的第一行)和函数体(即曲括号部分);(3)功能体一般包括声明部分和执行部分;⑷一个c程序总是从main函数开始执行,从main函数结束;(5) C程序的编写格式是免费的。
多条语句可以写在一行,一条语句可以写在多行;(6)每个语句和数据定义的末尾必须有分号;⑺c语言本身没有输入输出语句,是通过函数实现输入输出的;⑻可以用/*??*/对c程序的任何部分作注释。
3.C语言程序的操作:源程序文件的扩展名为C,目标程序文件的扩展名为Obj,可执行程序文件的扩展名为exe4.c的数据类型:基本、构造、指针和空类型,char、int、short、long、unsigned、float、double、enum、struct、union、typedef。
5.常数和变量的概念,注意符号常数的定义和使用。
6.整型、实型、字符型常量的表示,注意整型常量的十进制、八进制、十六进制的书写。
7.变量的定义。
C的标识符包括关键字、预定义标识符和用户定义标识符;用户定义标识符的可用字符是字母、数字和下划线,第一个字符是字母或下划线。
8.转义字符:\\n、\\t、\\b、\\r、\\f、\\\\、\\’、\\”、\\ddd、\\xhh。
9.不同数值型数据的混合运算,低级类型转换为高级类型运算。
10.c的运算符:注意结合方向和运算的优先级。
11.算术运算符:+,-,*,/,%,++,-。
《C语言程序设计基础》习题集(含答案)
第一章C语言概述1.1、选择题(1)一个C语言程序是由()组成。
A. 一个主程序及若干个子程序B. 一个主程序C. 一个主函数及若干个子函数D. 一个主函数(2) 一个C语言程序总是从()开始执行。
A. 主过程B. 主函数C. 子程序D. 主程序(3) main函数在源程序中的位置()。
A. 必须在最开始B. 必须在子函数的后面C. 可以任意D. 必须在最后(4) 一个C程序的执行是从()。
A. 本程序的第一个函数开始,到最后一个函数结束B. 本程序的main函数开始,到最后一个函数结束C. 本程序的main函数开始,通常也在main函数结束D. 本程序的第一个函数开始,到main函数结束(5) 以下叙述不正确的是()。
A. 一个C程序可由一个或多个函数组成B. 一个C程序必须包含一个main函数C. 在C程序中,注释只能位于一条语句的最后面D. C程序的基本组成单位是函数1.2、编程题(1)参照本章例题,编程输出如下信息:**********Very good!**********(2)编写一个C程序,输出以下信息:******Turbo C ** * * * *1.3 请根据自己的认识,写出C语言的主要特点。
1.4 简述C程序主要由哪些部分构成?1.5 用户编写的C程序上机运行要经过哪些步骤?第二章基本数据类型和表达式2.1 单项选择题(1) 以下不能用作变量名的是()A)_26 B)case C)scanf D)Double(2) 以下合法的八进制数是()A)0135 B)068 C)013.45 D)o7(3) 若变量已正确定义,以下非法的表达式是()A)a/=b+c B)a%(4.0) C)a=1/2*(x=y=20,x*3) D)a=b=c (4) 设x 为int 类型,其值为11,则表达式:(x++*1/3)的值是()A)3 B)4 C)11 D)12(5) 若题中各变量已正确定义并赋值,下面符合C 语法的表达式是()A )a%=7.6; B)a++,a=7+b+c C)int(12.3)%4 D)a=c+b=a+7 (6) 设k 和x 均为int 型变量,且k=7,x=12,则能使值为3的表达式是()A)x%=k%=5 B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)- (k%=5) (7) 能正确表示数学公式|)sin(|x ,的C 语言表达式是()A)sqrt(abs(sin(x*π/180)))B)sqrt(abs(sin(x*3.14/180))) C)sqrt(sin(x))D)sqrt (fabs (sin(x*3.14/180)))(8) 以下变量x 、y 、z 均为double 型且已正确赋值,不能正确表示代数式z y x的C 语言表达式是()A)x/y*z B)x*(1/(y*z)) C)x/y*1/z D)x/y/z (9) 以下叙述中正确的是()A ) A )C 程序中,赋值运算符的优先级最低。
C程序设计基础题(带答案)
选择题:1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为()x=(i=4,j=16,k=32) .(C程序设计)A) 4 B) 16 C) 32 D) 522.一个C程序的执行是从().(C程序设计)A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束3.以下合法的变量名称().(C程序设计)A) Tel_num B) 8678 C) bath.h D) float4.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,以%d形式输出c2,则结果为:()(C程序设计)A) D B) 68 C) 不确定的值 D) C5.已知字母A的ASCII值为65,以下C语言程序的输出的结果是:( ). (C程序设计) char c1='A',c2='D';printf("%c,%d\n",c1,c2);A)因输出格式不合法,输出错误信息 B)A,68C)A,D D)65,686.以下程序的运行结果是(). (C程序设计)main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A) 6,1 B) 2,1 C) 6,0 D) 2,07.下面的程序段,输出结果是:( ). (C程序设计)int a=3,b=4,c;c=(a>b)? a+2:b+3;printf(“%d”,c);A) 7 B) 3 C) 4 D) 58.已知ch是字符型变量,下面不正确的赋值语句是(). (C程序设计)A) ch=‘a+b’; B) ch=‘\0’; C) ch=‘7’+‘9’; D) ch=5+9;9.判断char型变量ch是否为大写字母的正确表达式是(). (C程序设计)A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)10.读下面的程序段,输出结果是(). (C程序设计)int aa=2;aa*=2;b=aa++;printf(“%d”,b);A) 3 B) 4 C) 5 D) 611. 读程序,分析下面的程序将输出()次“我爱中国”. (C程序设计)int i;for(i=1;i<5;i--){printf(“我爱中国\n”); }A) 1B) 4C) 0D) 无限次12.int i; i=sizeof(float)的结果是(). (C程序设计)A) 4 B)3 C) 2 D) 113.以下程序段,运行结果为(). (C程序设计)x=-1;for(;;){x=x*x;if(x!=1){break;}}A)是死循环 B)循环执行二次C)循环执行一次 D)有语法错误14.下面程序的运行结果是(). (C程序设计)#include<stdio.h>main(){int num=0;while(num<=2){num++;printf("%d\n",num);}}a)1 b)1 c)1 d)12 2 23 3415.若执行下面的程序时从键盘上输入3和4,则输出结果是().(C程序设计) int a,b,sscanf(“%d%d”,&a,&b);s=a;if(a<b)s=b;s=s*s;printf(“%d”,s);A) 14 B) 16 C) 18 D) 2016.下列代码的输出结果是().(C程序设计)int i,j=0;for(i=1;i<10;i++){if(i%4 !=0){j+=i;}}printf(“%d,%d”,i,j);A) 10,33 B) 3,6 C) 10.12 D) 4,1017. 运行下列代码后s的值为().(C程序设计)int i,s=0;for(i=0;i<3;i++){switch(i){case 1: s+=i;case 2:s+=i;default: s+=i;}Printf(“%d”,s);}A) 7 B) 6 C) 8 D) 918. 下列代码的输出结果是().(C程序设计)int i;int bookNum=4;int totalPrice=0;int bookPrice[4]={10,20,30,40};for(i=0; i<4; i+=2){totalPrice+=bookPrice[i];}printf(“%d”,totalPrice);A) 30 B) 40 C) 60 D) 10019.以下程序的输出结果是(). (C程序设计)main( ){ int x=2,y=1,z=2;if (x<y)if (y<0) z=0;else z+=1;printf(“%d\n”,z);}A) 3 B) 0 C) 2 D) 120. C语言中的运算对象必须是整型的运算符是(). (C程序设计)A) % B) / C) = D) <=21. 若变量已经正确定义并赋值,下面符合C语言语法的表达式是()。
计算机程序设计基础(C语言)编程习题
计算机程序设计基础(C语言)编程练习题及参考答案1.输入2个整数,求两数的平方和并输出。
#include <stdio.h>main(){ intt a ,b,s;printf("please input a,b:\n");scanf("%d%d”,&a,&b);s=a*a+b*b;printf("the result is %d\n",s);}2. 输入一个圆半径(r)当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息。
#include <stdio.h>#define PI 3.14 <stdio.h>main(){ float r ,s , l;printf("please input r:\n");scanf("%f”,&r);if (r>=0){s=pi*r*r;l=2*i*r ;printf("the area is %f\n",s);printf("the circumference is %f\n",l);}elseprintf("input error!\n");}3、函数y=f(x)可表示为:2x+1 (x<0)y= 0 (x=0)2x-1 (x>0)编程实现输入一个x值,输出y值。
main(){int x,y;scanf(“%d”,&x);If(x<0)y=2*x+1;If(x>0)y=2*x-1;If(x==0) y=0;prin tf(“%d”,y);}4、编写一个程序,从4个整数中找出最小的数,并显示此数。
main( ){int a,b,c,d,t;scanf (“%d,%d,%d,%d ”,&a,&b,&c,&d);if (a>b){t=a; a=b; b=t;}if (a>c){t=a; a=c; c=t;}if (a>d){t=a; a=d; d=t;}pri ntf (“m in = %d \n”,a);}5.有一函数当x<0时y=1,当x>0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值。
程序设计基础(C)第1——5章复习题答案
程序设计基础(C)第1——5章复习题及参考答案一、单选题1.可以在C语言中使用的一组用户标识符是(C)。
A. 3BB. KEYC. _123D. voidsizeof cl_c2 T3_al_ CHA TDO -for scanf 6B2.while(!x)中的!x与下面条件(A)等价。
A. x==0B. x==1C. x!=5D. x!=03.增1减1运算只能作用于(B)。
A. 常量B. 变量C. 表达式D. 函数4.下面四个选项中,均是字符常量或数值常量的选项是(A)。
A. 0.0B. “A”C. …3‟D. +0010f 3.9E-2.5 011 0xabcd8.9e 1e1 0xff00 2e3…&‟ …\”‟ 0a 50.5.下选项中正确的实型常量是(D)。
A. 0B. 0.618*10^2C. .871D. 3.1415 6.C语言中运算对象必须是整型的运算符是(D)。
A. %= 与/B. = 与&C. * 与^D. % 与|7.设a=2,b=2;则++a+b的结果是( D),a的结果是( B ),b的结果是( A)。
A. 2B. 3C. 4D. 59.下列运算符中优先级最低的是(B)。
A. +B. &&C. <=D. sizeof10.设int a=2;则表达式(a++*1/3)的值是(A),a的值是(D)。
A. 0B. 1C. 2D. 311.字符数据在内存中的存储采用的是(D)。
A. 反码B. 补码C. EBCDIC码D. ASCII码12.在C语言类型说明中,int、char、short等类型数据的长度是(D)。
A. 固定的B. 由用户自己定义的C. 任意的D. 与机器字的长度有关的13.在C语言中,不同类型的两个数据混合运算时,要先转换成相同类型再进行运算,设有int,long,unsigned和char类型的变量和数据,则它们的转换规律是(C),表达式最后的运算结果是(D)类型的数据。
程序设计基础(C)第6--8章复习题答案
第6--8章复习题一、判断题(√)1.数组元素在内存中是按顺序、连续存放的。
(×)2.组成数组的数据可以是若干个不同的类型。
(√)3.字符数组可以存放字符串,也可以存放若干字符。
(×)4.多维数组中各维的大小必须相同。
(×)5.数组定义后没有被初始化也有一个确定的默认值。
(×)6.字符串的结束标志是‘\n’。
(√)7.定义数组时必须有数据类型说明,而不必有存储类型说明。
(×)8.数组在赋初值时允许越界。
(×)9.一维字符数组中可以存放多个字符串。
(√)10.定义函数时必须指出该函数的类型。
(×)11.函数说明必须放在函数体内,不可放在函数体外。
(√)12.定义函数时给出的参数是形参,调用函数时给出的参数是实参。
(√)13.函数调用时要求形参与实参个数相等、对应类型相同。
(√)14.函数的调用方式既可以传值也可以传地址。
(×)15.函数可以嵌套调用,也可以嵌套定义。
(√)16.函数的函数体可以是空的,也可以有若干条语句。
(√)17.预处理命令的前面必须加一个“#”。
(√)18.一条文件包含命令只能包含一个文件,若要包含多个文件时,可使用多条文件包含命令。
(×)19.带参数宏定义的参数个数不得超过2个。
(×)20.预处理命令的处理是在程序运行前进行的。
二、单选题1.数组赋初值的初始值表中的数据项个数与数组元素个数的关系,错误的是( D )。
A.大于B.小于C.等于D.小于等于2.设int a[2][3]; 下列数组元素的表示中错误的是( C )。
A.a[0][0] B.a[1][1] C.a[2][2] D.a[1][2]3.下列数组带初始化的定义中,错误的是(B )。
A.int m[5]={3}; B.char s[5]= “ab123”;C.int n[]={6,6,4,3,2,1}; D.int p[3]={1,3,5};4.已知一个一维数组,有10个int元素,其中后面3个元素的值分别为3、2、1,其余元素为默认值。
程序设计基础(C语言)第3版习题及答案
第1章C语言概述【习题1-1】简述C语言的特点。
答:C语言的特点:C语言简洁、紧凑、使用灵活、方便;运算符丰富;数据结构丰富;C是结构式语言;C语法限制不太严格,程序设计自由度大;C语言允许直接访问物理地址;C语言程序生成代码质量高;C语言适用范围大,可移植性好。
【习题1-2】简述上机调试运行C程序的操作步骤。
答:上机运行C语言程序的操作步骤为:启动Visual C++ 6.0→建立工程→创建源程序文件→输入(编辑)源程序内容→保存源程序文件→编译源程序文件→连接目标程序→执行程序→开始另一个程序。
【习题1-3】上机运行本章的3个例题。
答:略。
【习题1-4】请从以下的4个选项中选择一个正确答案。
(1)A (2)A (3)C (4)B【习题1-5】参照本章例题,编写一个C语言程序,输出以下信息:**************Nice to meet you!**************编写程序如下:#include<stdio.h>void main(){printf("**************\n");printf("Nice to meet you!\n");printf("**************\n");}第2章基本数据类型和运算符【习题2-1】上机编辑并调试本章所有例题。
答:略。
【习题2-2】下面哪些是合法的常量?⑴20 0.5 012 13e5.1 E-5 8e4 5. 0x6a⑵'mn' "OK" "a" '\012' "a/b" '\\'答:⑴合法的常量有:20 0.5 012 8e4 5. 0x6a⑵合法的常量有: "OK" "a" '\012' "a/b" '\\'【习题2-3】下面的变量名中哪些是合法的?A&b abc123 abc% AbC a_b_cint _abc 123abc a\b?ca bc a*bc 'a'bc答:合法的变量名有:abc123 AbC a_b_c _abc【习题2-4】指出下面的变量定义哪些是正确的,哪些是不正确的,为什么?⑴Int i,j;⑵float a,b;⑶int a,b;float a,b;⑷float a,int b;⑸char 'a';答:⑴错误,因为关键字Int 应该全为小写字母⑵正确⑶错,因为同一变量在程序的同一处不应该声明为不同的数据类型 ⑷错,因为不同类型的变量要分别声明,其间应使用分号,而不是逗号 ⑸错,'a'表示字符常量,不能用作变量名 【习题2-5】把下列数学式子写成C 语言表达式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《程序设计基础(C)》作业第1章C语言的基本构成一、选择题1.( A )是构成C语言程序的基本单位。
(A)函数(B)过程(C)子程序(D)文件2.(D )是C语言提供的合法的数据类型关键字。
(A)Float (B)signed(C)integer (D)Char3.以下选项中不合法的用户标识符是( C )。
(A)abc.c (B)file(C)Main (D)PRINTF4.以下选项中不合法的用户标识符是(C )。
(A)l23 (B)printf(C)A$(D)Dim5.合法的C语言长整型常数是( B )。
(A)0L (B)5712700(C)0.054838743 (D)2.1869e106.C语言中,要求运算数必须是整型的运算符是( B )。
(A)% (B) /(C)< (D)!7.以下选项中正确的整型常量是( A )。
(A)12. (B)-20(C)l,000 (D)04588.以下选项中不正确的实型常量是( D )。
(A)2.607E-1 (B)0.8103e2.(C)77.77 (D)456e-29.C语言中运算对象必需是整型的运算符是( B )。
(A) \ (B) +(C) * (D) %二、程序调试题1.编辑、调试以下程序步骤1:在Visual C++环境下新建文件可用[开始]→[程序]→[Microsoft Visual C++6.0] →[Microsoft Visual C++6.0] →[文件] →[新建]→[文件] →[C++ Sourse File],输入文件请思考文件ex1-1.c由几个函数构成?调用了那几个系统函数?此程序中用到了哪几个保留字?哪几个用户自定义标识符?步骤3:编译并运行程序,程序运行时输入两个整数,20 40 ,观察程序运行的结果。
2.编辑、调试以下程序步骤1:在Visual C++环境下新建文件可用[开始]→[程序]→[Microsoft Visual C++6.0] →[Microsoft Visual C++6.0] →[文件] →[新建]→[文件] →[C++ Sourse File],输入文件名ex1-2.c步骤3:[文件] →[新建]→[文件] →[C++ Sourse File],输入文件名ex1-2-2.c,源程序代码为:c=a&&b;return c;}步骤4:[文件] →[新建]→[文件] →[C++ Sourse File],输入文件名ex1-2-3.c,源程序代码为:int or(int a,int b){int c;c=a||b;return c;}步骤5:点击编译图标,编译程序1-2.c步骤4:点击执行图标,执行程序1-2.c ,当程序运行时,键盘输入20 40,按回车。
20 4020 && 40=120 || 40=1您可以输入其它的整数,观察程序的执行结果。
第2章输入输出程序设计1.用printf输出一个中空的五角星。
2.仿照例子2.2,定义一个字符数组,从键盘输入一字符串,然后输出的程序。
3.从键盘输入十六进制整数,转化为八进制数输出。
4.只定义两个整型数据并赋值,实现两个整型数的互换。
5.从键盘上输入一个整数,分别输出8、16进制数的程序。
6.从键盘上输入一个整数,分别输出它的个位数,十位数,百位数。
7.以下程序输出结果是()。
#include<stdio.h>void main(){int i=010,j=10;printf("%d,%d\n",++i,j-- );}8.运行程序,屏幕提示“您是一个学生吗”,您输入’y’或’n’进行回答,屏幕输出您的选项。
9.从键盘输入一个角度x,求10*sin(x)的值。
第3章循环程序设计1.执行语句for(i=0;i++<5;);后,变量i 的值是()。
(A)6 (B)5(C)4 (D)02.若int i=0;下列语句计算1+2+…+10的是()。
(A)while(s+=i);(B)for(;i<=10;i++,s+=i)(C)for(;i<=10;s+=i,i++)(D)for(;i<9;i++,s+=i)3.若int i,x; 则语句 for(i=x=0;i<9;i+=++x);的循环体要执行()次。
10.以下不是死循环的语句是()。
(A)for(;;x++);(B)while(1){x++};(C)do{i++;}while(1)(D)for(x=-10;x++;)4.以下for语句的循环次数是多少?int i,j=3;for(;i=j;i--,j--) printf("%d",i);5.下面的语句显示输出6行6列的整数数组h的主对角线上的所有元素,请补充完整:for(int i=0;i< ; )printf("%d", )6.写出以下程序运行的结果,此程序实现了什么功能?#include<stdio.h>void main(){ int a[10]={2,4,0,-5,10,6,-8,9,6,7};int i, count=0;for(i=0;i<10;i++)if(a[i]==0) count++;else continue;printf("%d\n ", count);}7.写出以下程序的功能。
#include<stdio.h>void main(){int a[10]={2,4,0,-5,10,6,-8,9,6,7},tmp,k;for (k=0;k<10/2;k++){tmp=a[k];a[k]=a[10-k-1];a[10-k-1]=tmp;}}8.写出以下程序运行后的输出结果。
#include<stdio.h>void main(){int i,j;for(i=0;i<6;i++){for(j=0;j<i;j++)printf(" ");for(j=0;j<2*(5-i)-1;j++)printf("*");printf("\n");}}9.请改正下列程序的错误,改正后的程序写在右边的空白处,并上机调试检验。
(1)#include<stdio.h>void main( ){int i,s;i=1; s=0;while(i<=100);s=s+i;i++;printf(“1+2+3+….+99+100=%d\n”,s);}(2)#include<stdio.h>void main( ){int i,s;i=1;s=0;while(i<=100)s=s+i;i++;printf(“1+2+3+….+99+100=%d\n”,s);}(3)#include<stdio.h>void main( ){int i=1,s;while(i<=100) ;{s=s+i;i++;}printf(“1+2+3+….+99+100=%d\n”,s);}10.输入一个基数,例如输入9,输出为:求1*3*……*9的值。
输出为:1*3*5*7*9=94511.输入一个5~10之间的整数n ,求1!+2!+3!+...+n!。
例如输入5,输出为:1!+2!+3!+ (5)=15312.在屏幕上输出以下内容11212312341234512345612345671234567812345678913.求2+4+6+……+98+100的和,用多种for 表达式来完成。
14. 输入一行字符,统计它有多少个字母?第4章 分支程序设计1.输入若干整数给x ,使用if 语句输出x 的绝对值,当输入0时结束。
2.输入一批数,输出比相邻数大的数,当输入0时结束。
3.将输入字符的大写字符转换成小写字符输出,小写字符原样输出。
4.输入一批字符,按回车时结束,统计小写字符、大写字符、数字字符、或其它字符的个数。
5.编写程序,计算分段函数:10101110325><<≤⎪⎪⎩⎪⎪⎨⎧-+=x x x x x x y67、用switch完成:读入一个实数x,再输入一整数,若输入是1,则计算sin(x),若输入2,则计算cos(x),若输入3,则计算tan(x),若输入其他值,则显示错误信息。
8、用switch完成:输入星期1 到星期5,输出它们对应的颜色星期1:blue星期2:red星期3:white星期4:yellow星期5:green9、用switch完成:从键盘输入A、B、C、D四个等级中的一个,转化输出第5章数组及其应用1.从键盘输入12个数,分别为:900,2,3,58,34,76,87,72,90,20,78,30,找出最大和最小数。
2.采用遍历查找,在数组a[SIZE]={2, 3,20,58, 72, 76,78,87,90,900}中,找出偶数。
3.采用折半查找,在数组a[SIZE]={2, 3,20,58, 72, 76,78,87,90,900}中,找到87,然后进行删除。
第6章函数及其应用练习与实践一、阅读程序,写出程序运行的结果。
1.写出以下程序的执行结果。
#include<stdio.h>float aver(int a[]){int k,sum=0;float ave;for(k=0;k<10;k++)sum+=*(a+k);ave=(float)sum/10;return (ave);}int main( ){static b[]={78,89,98,76,78,45,88,81,92,85};ave=aver(b);printf("ave=%f\n",ave);}提示:数组b的首地址传递给形参a,*(a+k)就是数组元素b[k].2.阅读程序,写出程序的执行结果。
#include<stdio.h>void abc( char str[] ){int a, b ;for(a = b = 0 ; str[a]!='\0'; a++ )if(str[a]!= 'c’)str[b++] = str[a];str[b]='\0';}int main( ){char str[] ="abcdef" ;abc(str);printf("str[ ]=%s " , str );return 0;}提示:数组str的首地址传递给形参str,str[a]就是实参中的数组元素str[a],当数组元素不为’c’时进行复制。