《计算机程序设计基础》课后练习题参考答案
c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析1. 习题一:编写一个C程序,输出“Hello World!”。
解析:这是一个非常简单的C程序,只需要使用printf函数输出所需的字符串即可。
```c#include <stdio.h>int main() {printf("Hello World!");return 0;}```2. 习题二:编写一个C程序,计算两个整数的和并输出结果。
解析:这个程序需要使用scanf函数从用户输入中读取两个整数,并使用printf函数输出它们的和。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入第一个整数:");scanf("%d", &num1);printf("请输入第二个整数:");scanf("%d", &num2);sum = num1 + num2;printf("两个整数的和为:%d", sum);return 0;}```3. 习题三:编写一个C程序,判断一个数是奇数还是偶数并输出结果。
解析:这个程序需要使用scanf函数读取用户输入的整数,并使用if-else语句判断该数的奇偶性,然后使用printf函数输出结果。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("该数是偶数");} else {printf("该数是奇数");}return 0;}```4. 习题四:编写一个C程序,判断一个年份是否为闰年并输出结果。
《程序设计基础》答案 (2)

《程序设计基础》习题一答案一、单项选择题(本大题共20小题,每小题2分,共40分)1.int a[10];合法的数组元素的最小下标值为().A:10B:9C:1D:0答案:D2。
以下运算符中优先级最低的是()。
A:&&B:&C:||D:|答案:C3。
若使用一维数组名作函数实参,则以下正确的说法是()。
A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配C:在被调用函数中,不需要考虑形参数组的大小D:实参数组名与形参数组名必须一致答案:A4。
已知函数的调用形式:fread(buffer,size,count,fp);其中buffer代表的是()。
A:一个整数,代表要读入的数据项总数B:一个文件指针,指向要读的文件C:一个指针,指向要读入数据的存放地址D:一个存储区,存放要读的数据项答案:C5.对以下说明语句int a[10]={6,7,8,9,10}; 的正确理解是()。
A:将5个初值依次赋给a[1]至a[5]B:将5个初值依次赋给a[0]至a[4]C:将5个初值依次赋给a[6]至a[10]D:因为数组长度与初值的个数不相同,所以此语句不正确答案:B6.下列程序的输出结果是()。
main(){ int x=1,y=0,a=0,b=0;switch(x){case 1:switch(y){case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;case 3:a++;b++;break;}printf("a=%d,b=%d\n”,a,b);}A:a=1,b=0B:a=2,b=1C:a=1,b=1D:a=2,b=2答案:B7.下列程序的输出结果为()。
main(){int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n”,x);}A:27。
程序设计基础(C语言)习题以及答案

一、选择题1.下列属于C语言中合法的标识符的是( B )A 、ex-1B 、-cookC 、951aD 、if2.若 x 为 float 型变量,则以下语句(A )。
x=213.82631;printf("%-4.2f\n",x);A、输出为213.83B、输出格式描述符的域宽不够,不能输出C、输出为213.82D、输出为-213.823.一个C程序的执行是从(C )A、main函数开始,直到最后一个函数结束B、第一个函数开始,直到最后一个函数结束C、main函数开始,直到main函数结束D、第一条语句开始,直到最后一条语句结4.构成C语言源程序的基本单位是(B )A、过程B、函数C、子程序D、命令5.以下叙述不正确的是(D )A、注释说明被计算机编译系统忽略B、注释说明必须跟在“//”之后不能换行或者括在“/*”和“*/”之间且注释符必须配对使用C、注释符“/”和“*”之间不能有空格D、在C程序中,注释说明只能位于一条语句的后面6.在C程序中,main函数的位置( A)A、可以任意B、必须作为最后一个函数C、必须作为第一个函数D、必须放在它所调用的函数之后7. C语言属于(C )A、机器语言B、汇编语言C、高级语言D、低级语言8.使用“scanf("a=%d,b=%d",&a,&b)”,要使a,b的值均为25,正确的输入是(D )。
A、a=25 b=25(空格分开)B、25 25(空格分开)C、25,25D、a=25,b=259.下列叙述中,不正确的是( C)A、分号是C语句的必要组成部分B、C语句的注释可以写在语句的后面C、主函数的名字不一定用main表示D、函数是C程序的基本单位10.C程序是由( B)构成的A、若干过程B、一个或多个函数C、若干子程序D、一个主程序与若干子程序11. 以下程序的输出结果是(B )。
#include<stdio.h>int main(){int a=010,b=0x10,c=10;printf("%d,%d,%d",a,b,c);}A、10,10,10B、8,16,10C、16,8,10D、8,10,1012.执行以下程序后,输出结果为(A)#include<stdio.h>int main(){int x;float y;y=3.6;x=(int)y+10;printf("x=%d,y=%f",x,y);}A、x=13,y=3.600000B、x=13.5,y=3.60000C、x=13,y=3D、x=13,y=3.613.已知int x=5,y=5,z=5;则执行语句x%=y+z;后,x的值是(D)A、6B、1C、0D、513.下列不合法的字符常量是( B)A、'2'B、'ab'C、'\n'D、'\101'14.下列合法的转义字符是(A )A、'\"'B、'\ee'C、'\018D、'xab'15.下面程序的输出结果是( B)。
计算机程序设计基础习题册含答案)

《计算机程序设计基础》计算机程序设计基础_基础知识(一) 班级学号 姓名 成绩一、 单选题习题册1.C++源程序文件的默认扩展名为A。
2.A) cpp B) exeC) obj D) lik3.由C++源程序文件编译而成的目标文件的默认扩展名为C。
4.A) cpp B) exeC) obj D) lik5.由C++目标文件连接而成的可执行文件的默认扩展名为B。
6.A) cpp B) exeC) obj D) lik7.编写C++程序一般需经过的几个步骤依次是B。
8.A)编译、编辑、连接、调试B)编辑、编译、连接、调试C)编译、调试、编辑、连接D)编辑、调试、编辑、连接9.程序中主函数的名字为A 。
10.A) main B) MAINC) Main D) 任意标识符11.下面四个选项中,均是不合法的用户标识符的选项的是C。
12.A) A p_o doB)float lao _AC)b-a goto intD)_123 temp INT13.下列变量名中合法的是C。
14.A) B)C)Tom B) 3a66C) _6a7b D) $ABC15.存储以下数据,占用存储字节最多的是 D 。
16.A) 0 B) ‘0’C) “0” D) 0.017.在C++语言中,字符型数据在内存中的存储形式是D。
18.A) 补码 B) 反码C) 原码 D) ASCII码19.若有说明语句:char c =’\072’;则变量c A。
20.A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法,变量的值不确定二、填空题1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。
2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。
3.一条表达式语句必须以__分号_;___作为结束符。
4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。
程序设计基础教程(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、双引号。
【分析】两种写法都是允许的,使用尖括号表示在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。
程序设计基础答案

程序设计基础答案程序设计是计算机科学中的一门基础课程,它涉及了计算机程序的设计、开发和实现。
在这篇文章中,我将对一些常见的程序设计问题给出相应的答案,并解释它们的实现原理和逻辑。
问题一:如何计算两个整数的和?答案:要计算两个整数a和b的和,可以使用简单的加法运算。
可以通过以下方式实现:```pythona = 5b = 10sum = a + bprint("Sum:", sum)```上述代码中,我们定义了两个整数a和b,然后通过使用加法运算符来计算它们的和,并将结果存储在sum变量中。
最后,我们将结果打印出来。
问题二:如何判断一个数是否为偶数?答案:要判断一个数是否为偶数,可以使用取余运算。
如果一个数除以2的余数为0,则可以确定该数是偶数。
可以通过以下方式实现:```pythonnum = 6if num % 2 == 0:print("Number is even")else:print("Number is odd")```上述代码中,我们定义了一个变量num,并使用取余运算符判断num是否被2整除。
如果余数为0,则说明num是偶数;否则,num 是奇数。
问题三:如何计算一个数的阶乘?答案:要计算一个数的阶乘,可以使用循环结构。
阶乘是将一个数与小于它的所有正整数的乘积。
可以通过以下方式实现:```pythonnum = 5factorial = 1for i in range(1, num + 1):factorial *= iprint("Factorial:", factorial)```上述代码中,我们定义了一个变量num,并初始化阶乘变量factorial为1。
然后,使用for循环结构,将num与小于它的所有正整数相乘,将结果存储在factorial变量中。
最后,我们将计算得到的阶乘打印出来。
问题四:如何判断一个数是否为素数?答案:要判断一个数是否为素数,可以使用循环结构和条件判断。
程序设计基础练习题(全部有答案版)

程序设计基础练习题(全部有答案版)程序设计基础练习题(全部有答案版)介绍:程序设计是计算机科学中的一门基础学科,它涉及到计算机程序的设计、编写和调试。
通过练习基础练习题,学生可以巩固和提高自己的程序设计能力。
本文将为您提供一些程序设计基础练习题,并附上答案,帮助您更好地理解和掌握程序设计的基本知识。
1. 基本输入输出题目描述:编写一个程序,要求用户输入两个数字,然后将这两个数字相加并输出结果。
```C++#include <iostream>int main() {int num1, num2, sum;std::cout << "请输入两个数字:" << std::endl;std::cin >> num1 >> num2;sum = num1 + num2;std::cout << "两个数字的和为:" << sum << std::endl;return 0;```2. 条件判断题目描述:编写一个程序,要求用户输入一个整数,然后判断该整数是否为偶数,并输出判断结果。
```Javaimport java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num;System.out.println("请输入一个整数:");num = scanner.nextInt();if (num % 2 == 0) {System.out.println("该整数是偶数。
");} else {System.out.println("该整数不是偶数。
程序设计基础练习题(全部有答案版)

一、单项选择题(每小题2分,共20分)第一章D 1.下列说法中错误的是()。
A、程序的执行总是从主函数开始B、主函数可以调用任何非主函数的其它函数C、任何非主函数可以调用其它任何非主函数D、程序可以从任何非主函数开始执行C 2.若a=4,b=7,则输出4*7=28的语句是()。
A、printf(“a*b=%d\n”a+b);B、 printf(“a*b=%d\n”,a*b);C、printf(“%d*%d=%d\n”,a,b,a*b);D、 printf(“%d*%d=%d\n”,a+b);第三章C 1. C语言中int型数据占2个字节,则long型数据占(C )个字节。
A、1B、2C、4D、8D 2.若C中int型数据占2个字节,则double型数据占(D )个字节。
A、1B、2C、4D、8B 3.若a为整型变数,则以下语句(B )。
a=-2L;printf(“%d\n”,a);A、赋值不合法B、输出-2C、输出不确定值D、输出2D 4. 若int型数据占2个字节,则下列语句的输出为(D )。
int k=-1;printf(“%d,%u\n”,k,k);A、-1,-1B、-1,32767C、-1,32768D、-1,65535B 5. 下列程序的输出是(B )。
#include<stdio.h>main(){printf(“%d\n”,null);}A、0B、变量无定义C、-1D、1C 6.若x为float型变数,则以下语句:x=223.82748;printf("%6.2f\n",x);运行结果为(C )。
A、223.8B、223.82C、223.83D、223.827D 7. 设有语句int a=3;则执行语句a+=a-=a*a后,变量a 的值是(D )。
A、3B、0C、9D、-12第四章A 1. 执行语句:a=5,b=8;printf(“%d\n”,c=a/b); 后输出的值为(A )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机程序设计基础》课后练习题1一.判断题(1)(错)事件过程由某个用户事件或系统事件触发执行,但不能被其他过程调用。
(2)(错)若X=2, Y=5,则表达式 Y-2>X AND X+2>Y 的结果为:True。
(3)(错)常量是指在程序运行过程中其值可以改变的那些量。
(4)(错,timer没有)VB工具箱中的所有控件都具有宽度(Width)和高度(Height)属性。
(5)(错)定义变量:Dim max,min as Single , 则max 和 min 的数据类型均为Single。
(6)(对)如果创建的菜单项的标题是一个减号“-”,则该菜单项显示为一条分隔线。
(7)(错)标准模块文件的扩展名是“*.VBP”。
(8)(错,都不能)定时器控件可以响应Click事件,但不能响应DbClick事件。
(9)(错)在默认情况下,数组下标下界的缺省值为1。
(10)(对)在使用字体对话框时,需要对其Flags属性先进行相应设置。
二.单选题(11)在Visual Basic中,表示鼠标单击事件的是 C 。
A)Activate B)DoubleClick C)Click D)MouseDown(12)用于设置计时器时间间隔的属性是 A 。
A)Interval B)Name C)Left D)Top(13)函数Int(10*Rnd)是在 D 范围内的整数。
A)[1,10] B)[1,10] C) [0,9) D)[0,9](14)Select case语句结构的结尾应使用 D 。
A)End B) End Case C) End Sub D) End Select(15)改变了容器的坐标系后,该容器的 A 属性值不会改变。
A)left B)scaleleft C)scaletop D)scalewidth(16)执行下列语句后,列表框中各表项顺序为 DList1.ClearFor i=1 to 4 : List1.AddItem i-1,0 :Next iA)B)C)D)(17)输入对话框InputBox的返回值的类型是 A 。
A)字符串 B)整数 C)浮点数 D)长整数(18)将焦点主动设置到指定的控件或窗体上,应采用 B 方法。
A)SetDate B)SetFocus C)SetText D)GetData (19)有如下程序段:Dim I As Integer , S As IntegerS = 1FOR I = 1 TO 8 STEP 2S = S * INEXT IPRINT “S = “ ; S运行结果为 BA)S = 9 B)S = 105 C)S = 1 D)S = 16(20)利用以下___D____语句,可以输出日期和时间信息。
A)Print Date B)Print Month C)Print Time D)Print Now (21)一只漂亮的酒杯被摔碎了,则漂亮,酒杯,摔是___D____。
A)对象,属性,事件 B)对象,属性,方法C)属性,对象,方法D)属性,对象,事件(22)将通用对话框以“打开文件对话框”方式打开,则选以下 A 方法。
A) ShowOpen B)ShowColor C)ShowSave D)ShowFont(23)执行语句“Line (100, 100)-(150, 200), vbBlue, B”,在窗体上绘制出一个矩形,那么该矩形的面积 = A 。
A)5000 B)10000 C) 15000 D)20000(24)如何使一个标签或按钮控件在运行时不可用___C____。
A)把它的Visible属性设置成False B)把它的Visible属性设置成TrueC)把它的Enabled属性设置成False D)把它的Enabled属性设置成True (25)下列 C 表达式的结果为"1234556789"。
A)Trim("12345 "+" 56789") B)Ltrim("12345 ")+Rtrim(" 56789") C)Rtrim("12345 ") & ("56789")D)Ltrim("12345 ") & Rtrim(" 56789")(26)将图形框(PictureBox)控件的AutoSize属性设置为True后,则对于图形框而言,____B____。
A)图形框中的图片自动改变大小适应图形框B)图形框自动改变大小适应其中的图形C)如果图片的大小比图形框大,则图形框自动裁剪图象以适应图形框的大小。
D)如果图片的大小比图形框小,则图形框大小不发生变化。
(27)要获得当前驱动器应使用驱动器列表框的哪个属性 B 。
A)Path B)Drive C)Dir D)Pattern(28)以下关于函数过程的叙述中,正确的是____A____。
A)函数过程形参的类型与函数返回值的类型没有关系B)在函数过程中,过程的返回值可以有多个C)数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递D)如果不指明函数过程参数的类型,则该参数没有数据类型(29)单击滚动条的滚动箭头时,产生的事件是___C____。
A)Click B)Scroll C) Change D)Move(30)以下能返回文件长度的函数是__B___。
A)BOF B)LOF C)LEN D)EOF三.程序填空题【程序填空1】在C盘当前文件夹下已存在名为Data.txt的文件,利用文本框(Text1)输入若干英文单词。
要求每输入一个单词后,按下回车键将文本框中的单词写入文件,然后清除文本框的内容以便输入下一个单词。
当在文本框中输入的单词是“END”时,则表示结束输入(对于单词“END”不论大小写都视为结束),最后将文件关闭。
Private Sub Form_Load()(31) AText1.Text = ""End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 ThenIf (32) D = "END" ThenClose #EndElse(33) A(注意,Text1的默认属性为text,可省略不写)Text1.Text = ""End IfEnd IfEnd Sub(31)A)Open "C:\Data.txt" For Output As #1B)Open "C:\Data.txt" For Input #1C)Open "C:\Data.txt" Input As #1D)Open "C:\Data.txt" Output As #1(32)A)LCase(Text1.Text) B)Text1.TextC)Str(Text1) D)UCase(Text1.Text)(33)A)Write #1, Text1 B)Write #1, TextC)Write #3, Text1.Text D)Write #1, Text.Text【程序填空2】程序运行后如下图所示,Label1的Caption显示为"字体定时变大",影响字体大小的属性每隔0.5秒增加1,数值在[8,72]之间变化。
Option ExplicitPrivate Sub Form_Load()Timer1.Enabled = True(34)BLabel1.Caption = "字体定时变大"End SubPrivate Sub Timer1_Timer()Static i As IntegerIf i < 7 Or i >= 72 Then i = 7i = i + 1(35)AEnd Sub(34)A)Timer1.Interval=5/10 B) Timer1.Interval = 500C)Timer1.Interval=True D)Timer1.Interval=False(35)A)Label1.FontSize = i B)Label1.Font = iC)Label1.Size = i D)Label1.FontSize = i+1【程序填空3】已知五个数存放在数组中,用冒泡法对该数组进行递减排序(冒泡法:一旦发现数组中两个数逆序马上交换这两个数)。
Private Sub Command1_Click()Dim a(1 To 5) As IntegerDim n%, i%,j%, t%a(1) = 53: a(2) = 34: a(3) = 45: a(4) = 89: a(5) = 23For i = 1 To 4(确保第i轮循环后,a(i)位置上存放第i大的数)For j = 5 To i+1 Step -1If (36)B Thent = a(j)(37)Da(j - 1) = tEnd IfNext jNext iFor i = 1 To 5Print a(i);Next iEnd Sub(36)A)a(j) <a(j - 1) B)a(j) > a(j - 1)C)a(i) > a(j) D)a(j)> a(i)(37)A)a(i)=a(j) B) a(j-1)=a(j) C)a(j)=a(i) D) a(j) = a(j - 1)【程序填空4】在窗体上画一个名称为Combol的组合框,画两个名称分别Label1和Label2及Caption属性分别为“城市名称”和空白的标签。
程序运行后(如下图所示),当在组合框中输入一个新的项目按回车键时(回车键的ASCII码为13),如果输入的项在组合框的列表中不存在,则自动添加到组合框的列表中,并在Label2中给出提示“已成功添加输入项;如果存在,则在Label2中给出提示“输入项已在组合框中”。
Private Sub Combo1_ KeyPress (KeyAscii As Integer)If _ (38) B ThenFor i=0 To Combo1.ListCount-1If Combo1.Text= _ (39) B ThenLabel2.Caption="输入项已在组合框中"Exit SubEnd IfNext iLabel2.Caption="已成功添加输入项"Combo1._ (40) C Combo1.TextEnd IfEnd Sub(38)A)KeyAscii=0 B)KeyAscii=13 C)KeyAscii=8 D)KeyAscii=9(39)A)Combo1.ListIndex B)Combo1.List(i) C)Combo1.AddItem(i) D)Combo1.Clear(40)A)Selected B)RemoveItem C)AddItem D) ListIndex四.程序阅读题【程序阅读1】根据以下代码,单击窗体三次,那么第一次单击后输出的a、b、c的值为_____(41)_ C__,第二次单击后输出的a、b、c的值为_____(42)__D_,第三次单击后输出的a、b、c的值为_____(43) _A_。