程序设计基础上机考试题库

合集下载

程序设计题库及答案详解

程序设计题库及答案详解

程序设计题库及答案详解程序设计题库及答案详解是面向计算机科学与技术专业学生以及编程爱好者的一份重要学习资料。

它不仅包含了大量的编程题目,还提供了详细的解题思路和答案,帮助读者深入理解程序设计的原理和技巧。

# 一、基础题目1. 题目1:编写一个程序,实现两个整数的加法。

- 答案详解:首先定义两个整数变量,然后使用加法运算符将它们相加,并将结果存储在一个新变量中。

最后,输出结果。

2. 题目2:编写一个程序,实现字符串的反转。

- 答案详解:可以使用循环结构遍历字符串的每个字符,并将它们添加到一个新的字符串的开始位置。

完成后,输出反转后的字符串。

# 二、数组与循环3. 题目3:编写一个程序,找出数组中的最大值。

- 答案详解:首先初始化一个变量来存储最大值,然后使用循环遍历数组中的每个元素,并与当前最大值进行比较,如果当前元素更大,则更新最大值。

循环结束后,输出最大值。

4. 题目4:编写一个程序,实现数组的排序。

- 答案详解:可以使用冒泡排序或选择排序等算法。

以冒泡排序为例,通过多次遍历数组,比较相邻元素的大小,并在必要时交换它们的位置,直到整个数组有序。

# 三、函数与递归5. 题目5:编写一个函数,计算两个数的乘积。

- 答案详解:定义一个函数,接受两个参数,然后在函数内部使用乘法运算符计算它们的乘积,并返回结果。

6. 题目6:编写一个递归函数,计算阶乘。

- 答案详解:定义一个递归函数,如果输入的数为0或1,则返回1;否则,返回输入数乘以递归调用该函数的结果,输入数减1。

# 四、数据结构7. 题目7:编写一个程序,实现链表的插入操作。

- 答案详解:首先定义链表节点的结构,然后编写一个函数来创建新的节点。

在插入操作中,根据插入位置的不同,调整节点的指针指向。

8. 题目8:编写一个程序,实现二叉树的遍历。

- 答案详解:可以使用前序、中序或后序遍历。

以中序遍历为例,首先遍历左子树,然后访问根节点,最后遍历右子树。

C语言程序设计上机考试试题和参考答案

C语言程序设计上机考试试题和参考答案
char str1[80], str2[80]; int m, n;
printf("Input str1:\n"); gets(str1); //1
printf("Input m and n:\n"); scanf("%d%d", &m, &n); //1
mystrcpy(str1, str2, m, n); //2 puts(str2); }
1、请按行读入数据 2、请按给定的函数原型编写程序,否则即使程序运行结果正确,也不给分。 参考答案
#include<stdio.h>
void Input(int a[][10], int n);
int Compute(int a[][10], int n);
main()
{
int n, a[10][10]; int sum;
//2
{
int i, flag = 0, sum = 0; //1
for (i = 1; i <= n / 2; i++) //1
{
if (n % i == 0)
//1
{
sum = sum + i; //1
}
}
if (sum == n)
//1
{
flag = 1;
}
return flag;
//1
} 3.(15 分)请按给定要求编程计算方阵的主对角线之和。其中方阵的输入请在 Input 函数实现,计算主对角之和请在 Compute 函数实现,计算结果请在主函数打印, 且给定的方阵最大为 10x10,方阵实际大小请在主函数读入。Input 函数和 Compute 函数的函数原型如下:

计算机程序设计基础习题册含答案)

计算机程序设计基础习题册含答案)

《计算机程序设计基础》计算机程序设计基础_基础知识(一) 班级学号 姓名 成绩一、 单选题习题册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++程序设计上机考试题库大全(经典)

C++程序设计上机考试题库大全(经典)

C++程序设计上机考试题库大全一、第一类题目1.定义盒子Box类,要求具有以下成员:长、宽、高分别为x,y,z,可设置盒子形状;可计算盒子体积;可计算盒子的表面积。

#include<iostream.h>class Box{ private:int x,y,z; int v,s;public:void init(int x1=0,int y1=0,int z1=0) {x=x1;y=y1;z=z1;}void volue() {v=x*y*z;}void area() {s=2*(x*y+x*z+y*z);}void show(){cout<<"x= "<<x<<" y= "<<y<<" z="<<z<<endl;cout<<"s= "<<s<<" v= "<<v<<endl;}};void main(){ Box a;a.init(2,3,4);a.volue();a.area();a.show();}2.有两个长方柱,其长、宽、高分别为:(1)30,20,10;(2)12,10,20。

分别求他们的体积。

编一个基于对象的程序,在类中用带参数的构造函数。

#include <iostream>using namespace std;class Box{public:Box(int,int,int);int volume();private:int length;int width;int height;};Box::Box(int len,int w,int w){length=len;height=h;width=w;}int Box::volume(){return(length*width*height);}int main(){Box box1(30,20,10);cout<<"The volume of box1 is "<<box1.volume()<<endl;Box box2(12,10,20);cout<<"The volume of box2 is "<<box2.volume()<<endl;return 0;}3.有两个长方柱,其长、宽、高分别为:(1)12,20,25;(2)10,30,20。

C语言上机程序设计题库及答案

C语言上机程序设计题库及答案

C语言上机程序设计题库【程序设计】功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。

【参考代码】double y=0;y=sin(m)*10;return(y);功能:若x、y为奇数,求x到y之间的奇数和;若x、y为偶数,则求x到y之间的偶数和。

【参考代码】int i,s=0;for(i=x;i<=y;i+=2)s=s+i;return s;功能:编写程序,实现矩阵(3行3列)的转置(即行列互换)【参考代码】int i,j,t;for(i=0; i < 3; i++)for(j=0; j < i; j++){ t=array[i][j];array[i][j]=array[j][i];array[j][i]=t; }功能:求一个四位数的各位数字的立方和。

【参考代码】int d,s=0;while (n>0){d=n%10;s+=d*d*d;n/=10;}return s;功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。

二维数组中的数已在主函数中赋予。

【参考代码】int i,j;for(j=0;j<N;j++){pp[j]=tt[0][j];for(i=1;i<M;i++)if(tt[i][j]<pp[j])pp[j]=tt[i][j];}功能:求一组数中大于平均值的数的个数。

【参考代码】int i,k=0;float s=0,ave;for(i=0;i<n;i++)s+=a[i];ave=s/n;printf("%f ",ave);for(i=0;i<n;i++)if(a[i]>ave)k++;return k;题目:分别统计字符串中字母、数字、空格和其他字符出现的次数(字符长度小于80)。

程序设计基础练习题(全部有答案版)

程序设计基础练习题(全部有答案版)

一、单项选择题(每小题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.输⼊整数n,输出由2×n+1⾏2×n+1列组成的以下(n=2)的图案。

2.输⼊整数n(<10),输出以下形式(n=3)的数字排列图案。

3.编写⼀个程序,输⼊⼀个整数,输出0~9各数字在该整数中出现的次数。

4.编写⼀个程序,输出所有英⽂字符及它们的ASCII码值,其中代码值分别⽤⼋进制形式、⼗六进制形式和⼗进制形式输出。

5.⽔仙花数是⼀个n(n>=3)位数字的数,它等于每个数字的n次幂之和。

例如,153是⼀个⽔仙花数,153=13+53+33。

试编写⼀个程序求⼩于999的所有⽔仙花数。

6.编写程序解百鸡问题:鸡翁⼀,值钱五;鸡母⼀,值钱三;鸡雏三,值钱⼀。

百钱买百鸡。

问鸡翁、鸡母和鸡雏各⼏何7.编写⼀个程序,输⼊⼀个整数,逐位地输出整数的⼗进制数,要求位与位之间有⼀个空格符分隔。

8.编写程序,列表输出整数1~10的平⽅和⽴⽅值。

9.编写⼀个程序,输⼊3个实数,判断这些值能否作为⼀个三⾓形的三条边的长,如果能构成三⾓形,要求输出三⾓形的⾯积。

10.输⼊正整数n,输出n⾏n列星号字符组成的三⾓形图案。

以下是n等于4的图案。

11.输⼊正整数n,输出由n⾏2×n-1列星号字符组成的三⾓形图案。

以下是n等于3的图案。

12.输⼊正整数你n,输出n⾏2×n-1列的空⼼三⾓形图案。

以下是n等于4的图案。

13..输⼊正整数n,输出n⾏n列的空⼼四边形图案。

以下是n等于5的图案。

14.编写程序,按下⾯的公式计算⾃然对数底e的值。

E=1+1/1!+1/2!+1/3!+1/5!+···15.编写程序,按如下公式计算圆周率π的近似值。

π=4-4/3+4/5-4/7+4/9-4/11+···16.编写输⼊正实数x,求平⽅不超过x的最⼤整数n,并输出。

17.回⽂整数是指正读和反读相同的整数,编写⼀个程序,输⼊⼀个整数,判断它是否是回⽂整数。

《C++程序设计基础》上机题库

《C++程序设计基础》上机题库

后又再吃了一个。第2天早上又将剩下的桃子吃掉一半后又再吃 了一个。以后每天早上都吃了前一天剩下的一半另加一个。到 第10天早上想再吃时,就只剩一个桃子了,求第1天共摘了多少 个桃子。 8、 输出以下图案,要求使用循环体结构 & &*。 &**。。 &***。。。 &****。。。。 &***。。。 &**。。 &*。 & 9、 两个乒乓球队进行比赛,各出3人。甲队为A、B、C3人,乙 队为X、Y、Z3人。已抽签决定比赛名单。有人向队员打听比赛 名单,A说他不和X比,C说他不和X、Z比,请编程找出3对赛手 名单。 10、 编程求所有的3位素数,且该数是对称的。所谓对称是指 一个数,倒过来还是该数,例如,375不是对称,因为倒过来后 变成573。 11、 编程求解母牛问题。若一头母牛,从出生起第四个年头开 始每年生一头母牛,按这规律,第n年时有多少头母牛?n为用 户在运行时指定的数值。 12、 百钱买百鸡问题:雄鸡7元/只,母鸡5元/只,小鸡1元/3 只. 花100元钱,买100只鸡,如果雄鸡、母鸡和小鸡都必须 有,则雄鸡、母鸡和小鸡应各买几只?
输出)。 a= 3 b= 4 c= 5 x=1.200000,y=2.400000,z=-3.600000 x+y= 3.60 y+z=-1.20 z+x=-2.40 u= 51274 n= 128765 c1=’a’ or 97(ASCII) c2=’b’ or 98(ASCII)
29、 设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆 球体积,圆柱体积。用scanf输入数据,输出计算结果;输出时要求有文 字说明,取小数点后2位数字,请编写程序。 30、 编程输出以下图形
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章:
1.输入整数n,输出由2×n+1行2×n+1列组成的以下(n=2)的图案。

2.输入整数n(<10),输出以下形式(n=3)的数字排列图案。

3.编写一个程序,输入一个整数,输出0~9各数字在该整数中出现的次数。

4.编写一个程序,输出所有英文字符及它们的ASCII码值,其中代码值分别用八进制形式、十六进制形式和十进制形式输出。

5.水仙花数是一个n(n>=3)位数字的数,它等于每个数字的n次幂之和。

例如,153是一个水333。

试编写一个程序求小于999的所有水仙花数。

仙花数,153=1+5 +3
6. 编写程序解百鸡问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。

百钱买百鸡。

问鸡翁、鸡母和鸡雏各几何
7.编写一个程序,输入一个整数,逐位地输出整数的十进制数,要求位与位之间有一个空格符分隔。

8.编写程序,列表输出整数1~10的平方和立方值。

9.编写一个程序,输入3个实数,判断这些值能否作为一个三角形的三条边的长,如果能构成三角形,要求输出三角形的面积。

的图案。

4等于n列星号字符组成的三角形图案。

以下是n行n,输出n输入正整数10.
11.输入正整数n,输出由n行2×n-1列星号字符组成的三角形图案。

以下是n 等于3的图案。

12.输入正整数你n,输出n行2×n-1列的空心三角形图案。

以下是n等于4的图案。

13..输入正整数n,输出n行n列的空心四边形图案。

以下是n等于5的图案。

14.编写程序,按下面的公式计算自然对数底e的值。

E=1+1/1!+1/2!+1/3!+1/5!+···
15.编写程序,按如下公式计算圆周率π的近似值。

π=4-4/3+4/5-4/7+4/9-4/11+···
16.编写输入正实数x,求平方不超过x的最大整数n,并输出。

回文整数是指正读和反读相同的整数,编写一个程序,输入一个整数,判断它是否是回文17.
整数。

17.编写一个程序,输出1~256十进制数等价的二进制、八进制和十六进制数值表。

18.草地上有一堆野果,有一只猴子每天去吃掉这堆野果的一半又一个,5天后刚好吃完这堆野果。

求这堆野果原来共有多少个猴子每天吃多少个野果
19.输入n(>2)个整数,输出其中的次最小的数。

第四章
1.在数组的某个下标位置插入一个元素。

2.将数组的某个下标位置的元素从数组中删掉。

3.在数组a[]的前n个元素中寻找值等于变量key值的元素的下标。

4.输入n个整数,用冒泡法将它们从小到大排序,然后输出。

5.用C代码描述以下计算要求:
(1)输出一组数组中下标是4的倍数的元素。

(2)自左至右在一维数组中找第一个值为key的元素的下标。

(3)将一维数组中的元素按与原先存储顺序相反的顺序重新存储。

6.输入一行字符,分别统计其中各英文字母出现的次数(不区分大小写)。

7.采用筛选法求质数。

算法思想简述如下:
(1)将数组中下标为0和1的元素设置为0,下标为2~N的元素设置为1.(2)然后从下标为2的元素开始考查,当发现当前位置的数组元素值为1时,将下标是当前下标2倍、3倍、······的那些元素全部置0。

(3)重复步骤(2),直至考查了数组的全部元素,那些值依旧为1的元素的下标都是质数。

8.编写将数组的前n个元素中,前端的m个元素和随后的n-m个元素互换的程序。

要求程序不另用其他工作数组,如a[]={1,2,3,4,5,6,7,8,9,0},设n=10,m=3。

交换后有:a[]={4,5,6,7,8,9,0,1,2,3}
9.设有编号为1~16个同学按顺时针站成一个圆圈。

首先从第1个人开始,按顺时针从1开始报数,报到第4个人的时候,另其出列。

然后再从出列的下一个人开始,按顺时针从1开始报数,报到第4个人,再令其出列,------如此下去,直到圆圈不再有人为止。

求这16个同学出列的顺序。

、输入今天的的年月日,求出是本年的第几天的程序。

10.
第五章
1.求一个整数的十进制位数。

2.判断一个十进制数是否为回文数。

3.递归计算x的y次方。

4.输入一个正整数,用递归实现该整数的倒序输出。

5.编写一个函数,已知参数n,在屏幕的中间显示一个用星号字符绘制的空心的三角形图案。

例如,n=4,函数的显示的图案为:
6.为低年级小学生编写一两个整数乘法的测验程序。

程序利用随机函数产生两个整数,并给出算式请小学生输入解答。

程序对正确的解答给予鼓励;对不正确的解答给出正确的答案。

另外,为了让程序更有实用性,输入整数的范围也可由用户指定,如一位数乘法、两位数乘法等。

使用随机函数的程序有以下要求:(1)在程序前面包含以下代码:
#include<>
#include<> /*有关时间库函数*/
(2)主函数先用以下代码为随机函数初始化:
Srand(time(NULL));
(3)用以下代码随机取1~9的整数k:
K=1+rand()%9;
为了提高小学生的学习兴趣,程序的回答也希望有所改变,如对正确的回答可以有多种选择,如“Very good!”、“Excellent!”、“Keep up the good work!”等。

同样,对于错误的响应也可以有多种选择,如“No, Please try again.”、“Wrong, Try once more.”、“No, Keep trying.”等。

利用随机函数选择一种回答。

7.如果一个整数(>1)的各因子(包括1,但不包括整数自身)之和等于该整数,称这样的整数位完全数。

例如,因为6=1+2+3,所以6是完全数。

编写一个已知整数判断其是否是完全之内的所有完全数。

1000数的函数,并用该函数输出
8.编写判断已知正整数是否是质数的函数,并利用该函数输出1000之内的所有质数。

9.试用递归函数,返回所给十进制整数相反顺序的整数,如已知1234,函数返回值是4321。

10.写出判断某年为闰年的宏定义。

11.写出从3个整数中找出最大数的宏。

12.编写一个数字转换函数,要求根据菜单选择输出相应的二进制、八进制、十六进制数。

13.有A1、A2、A3三根针,A3针上有10个大小不等的盘子,大的在下,小的在上,要求按以下规则,编写把这10个盘子从A3针搬到A1针上的程序,对给定的10个盘子,输出盘子搬动的过程。

搬盘子的规则:在搬运过程中可以使用A2针。

每次只允许搬动一个盘子。

在搬运的过程中,必须保证大盘始终在下,小盘始终在上。

第六章
1.字符串复制函数strcpy()。

2.两字符串比较函数strcmp()。

3.以下程序把一维数组p[]分割成不等长的段,从指针数组pt方向来看,把p[]
当做二维数组来处理。

编写程序,输出以下图形:
4.对给定的函数表,用函数指针作函数的形参实现求它的最大值,最小值和平均值。

5. 对给定的函数表,用函数指针数组实现求函数的最大值,最小值和平均值。

6.利用返回函数指针的函数实现求数组的最大值,最小值和平均值。

第七章
1.通过菜单选择,实现链表的多个操作(1在链表末尾添加新表元;2在指定表元之后插入新。

删除链表中指定表元)4显示链表中的所有表元;3表元;
2.编写一个函数,实现将已知单链表的表元连接顺序颠倒,即使单链表的第一个表元变为最末一个表元,第二个表元变为最后第二个表元,······,最后一个表元变为第一个表元。

第八章
1、编写从键盘输入41-50的10个整数序列,并按输入顺序输出到c盘根目录下以自己姓名命名的txt文件中。

(例)
2、将键盘输入3行相同的襄樊学院的英文翻译到d盘以自己学号后三位尾数命名的txt文件中,直至输入空行结束。

(例)
3、输入一篇英文短文,统计文件中的行数、单词数和字符数的程序。

(例)
4、从键盘输入通讯录信息并写到c盘“学生通讯录.txt”文件中,并将该文件的内容显示到屏幕上,通讯录中的信息有:本人姓名,寝室地址,电话号码长号、短号(如无请以000000。

代替).。

相关文档
最新文档