上机考试模拟系统 练习模式 50套编程题目答案

合集下载

c语言上机操作考试题库及答案

c语言上机操作考试题库及答案

c语言上机操作考试题库及答案1. 编写一个C语言程序,计算并输出100以内所有奇数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i < 100; i++) {if (i % 2 != 0) {sum += i;}}printf("The sum of odd numbers less than 100 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现字符串的反转。

答案:```c#include <stdio.h>#include <string.h>void reverseString(char *str) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str);return 0;}```3. 编写一个C语言程序,计算并输出1到100之间所有能被3整除的数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 3 == 0) {sum += i;}}printf("The sum of numbers divisible by 3 between 1and 100 is: %d\n", sum);return 0;}```4. 编写一个C语言程序,实现两个整数的交换。

2021年计算机二级C语言50套上机题及答案

2021年计算机二级C语言50套上机题及答案

2021年计算机二级C语言50套上机题及答案2021年计算机二级C语言50套程序编写上机题及答案1、请编写函数fun,其功能是:统计s所指字符串中的数字字符个数,并作为函数值返回。

例如,s所指字符串中的内容是:2def35adh25 3kjsdf 7/kj8655x,函数fun返回值为:11注意: 部分源程序在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include voidint fun(char *s){ int count=0; while(*s!='\\0') {if(*s>=48 && *s<=57) count++; s++; }return count;}main(){ char *s=\ printf(\ printf(\}2、编写一个函数,从num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址。

(注意: 主函数中用****作为结束输入的标志,函数fun中给出的语句仅供参考。

) 注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include #includevoid fun(char(*a)[81],int num,char **max) {/* 以下代码仅供参考 */int i,k=0,len, maxlen; /* k为a数组中最长串所在元素的下标,初始为0,maxlen为其串长 */ maxlen=strlen(a[k]); for(i=1;i{ len=strlen(a[i]) ; if(maxlen{k=i ;maxlen=len ;}/* 以下完成查找最长串 */ }*max=a[k]; } main() {char ss[10][81],*ps;void int n,i=0;printf(\输入若干个字符串:\ gets(ss[i]); puts(ss[i]);while(!strcmp(ss[i],\ { i++; gets(ss[i]); puts(ss[i]); } n=i;fun(ss,n,&ps);printf(\ }3、请编写函数fun,它的功能是:求出ss所指字符串中指定字符的个数,并返回此值。

上机考试复习题(附答案)

上机考试复习题(附答案)
}
9.编写程序输出如下图形:
*
***
*****
*******
*********
答案在P(79) 5.8
10.求出100~1000内同时满足除以5余2,除以7余3,除以11余7的所有整数的和及整数的个数。
练习册
11.输入四个整数,要求按照由大到小的顺序输出。
练习册
12.编写计算x的n次乘方的程序。
P(76)例题6.4
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);
}
4.编写程序输出如下图形:
*
**
***
****
*****
答案在P(65)例题
16.计算n!。说明:分别用for循环和递归实现。
P(81)例题6.8
17.编程实现:从键盘输入3个变量的值,其中a=10,b=20,c=30,然后将三个变量的值进行交换,使得a=20,b=30,c=10。
18.输入三角形的边长,求三角形面积(面积=sqrt(s(s-a)(s-b) (s-c)),s=(a+b+c)/2)。
printf("Input string:");
while((ch=getchar())!='\n')
{
if(ch>='a'&&ch<='z')printf("%c",ch-32);

上机操作题模拟试卷50(题后含答案及解析)

上机操作题模拟试卷50(题后含答案及解析)

上机操作题模拟试卷50(题后含答案及解析) 全部题型 2. 基本操作题 3. 简单应用题 4. 综合应用题基本操作题1.在考生文件夹下,有一表单文件myform.SCX。

打开该表单文件,然后在表单设计器环境下完成如下操作:(1)在属性窗口中将表单设置为不可移动的,并将其标题设置为“表单操作”。

(2)为表单新建一个名为mymethod 的方法,方法代码为:wait”mymethod’’window。

(3)设置Ok按钮的Click 事件代码,其功能是调用表单的mymethod方法。

(4)设置Cancel按钮的Click 事件代码,其功能是关闭当前表单正确答案:(1)①在命令窗口执行命令:,打开表单设计器修改表单。

②选中表单,在“属性”面板中修改表单(Forml)的Movable属性值为:.F.,修改Caption属性值为:表单操作。

(2)①接上一小题操作,执行【表单】一【新建方法程序】菜单命令,在弹出的“新建方法程序”对话框的“名称”文本框中输入“mymethod”,单击“添加”按钮新增方法,然后关闭对话框。

②接着在“属性”窗口中双击此方法,打开用户自定义过程代码框输入:wait·mymethod”window。

(3)接上一小题操作,双击“Ok”命令按钮,编写该按钮的Click事件代码:THIsFORM.Mymethod。

(4)①接上一小题操作,双击“Cancel”命令按钮,编写该按钮的Click事件代码:THIsFORM.RELEASE。

②单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。

涉及知识点:上机操作题简单应用题2.(1)利用查询设计器创建查询,从.xuesheng和cheni表中找出所有1982年出生的汉族学生记录。

查询结果包含“学号”、“姓名”、“数学”、“英语”和“信息技术”5个字段:各记录按“学号”降序排序;查询去向为表tablel。

最后将查询保存在queryl.qpr文件中,并运行该查询。

计算机等级考试上机练习系统部分程序调试题答案

计算机等级考试上机练习系统部分程序调试题答案

计算机等级考试上机练习系统部分程序调试题答案1、该程序功能:输入1个字符串,输出其中所出现过的大写英文字母。

如运行时输入字符串"FONTNAME and FILENAME",应输出"F O N T A M E I L"。

#include <stdio.h>void main(){ char x[80],y[26]; int i,j,ny=0;gets(x);for(i=0;x[i]!='\0';i++)if(x[i]>='A'&&x[i]<='Z') {for(j=0;j<ny;j++)/***** 1 *****/if(y[i]==x[j]) continue; if(y[j]==x[i]) break;if(j==ny) { y[ny]=x[i]; ny++; }}/***** 2 *****/for(i=0;i<26;i++) for(i=0;i<ny;i++)printf("%c ",y[i]);printf("\n");}2、该程序功能:输入x和正数eps,计算多项式1-x+x*x/2!-x*x*x/3!+...的和直到末项的绝对值小于eps为止。

#include <stdio.h>#include <math.h>void main(){ float x,eps,s=1,t=1,i=1;scanf("%f%f",&x,&eps);do {/***** 1 *****/t=-t*x/++i; t=-t*x/i++;s+=t;/***** 2 *****/} while(fabs(t)>=eps) while(fabs(t)>=eps);printf("%f\n",s);}3、该程序功能:运行时若输入a、n分别为3、6,则输出下列表达式的值:3+33+333+3333+33333+333333#include <stdio.h>void main(){ int i,a,n; long t=0;/********* 1 *******/s=0; long s=0;scanf("%d%d",&a,&n);for(i=1;i<=n;i++) {/******* 2 ******/t=t*10+i; t=t*10+1;s=s+t;}s=s*a;printf("%ld\n",s);}4、该程序功能:输出6~1000之间的完数(1个数的因子和等于其自身的数:6=1+2+3、28=1+2+4+7+14,则6、28都是完数)。

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、编一个函数fun(char *s),函数的功能是把字符串中的内容逆置。

例子如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba。

试题程序:#define N 10fun(char *s){ int i=0,t,n=strlen(s);for(;s+i<s+n-1-i;i++){t=*(s+i);*(s+i)=*(s+n-1-i);*(s+n-1-i)=t;}}main(){ char a[N];clrscr();printf("Enter a string:"); gets(a);printf("The original string is:");puts(a);fun(a);printf("\n");printf("The string after modified:");puts(a);}2、写程序,实现矩阵(3行3列)的转置(即行列互换)。

int fun(int array[3][3]){ int i,j,t;for(i=0;i<2;i++)for(j=i+1;j<3;j++){t=array[i][j];array[i][j]=array[j][i];array[j][i]=t;}}main(){ int i,j;clrscr();for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%7d",array[i][j]);printf("\n");}fun(array);printf("Converted array:\n");for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%7d",array[i][j]);printf("\n");}}3、请编一个函数fun(int *a,int n,int *odd,int *even),函数的功能是分别求出数组中所有奇数之和以及所有偶数之和。

上机考试库 50套整

上机考试库  50套整

上机考试题库第一套程序填空题给定程序中,函数fun的功能是:找出100至x(x≤999)之间各位上的数字之和为15的所有整数,然后输出;符合条件的整数个数作为函数值返回。

例如,当n值为500时,各位数字之和为15的整数有:159、168、177、186、195、249、258、267、276、285、294、339、348、357、366、375、384、393、429、438、447、456、465、474、483、492.共有26个。

#include <stdio.h>int fun(int x){ int n, s1, s2, s3, t;/**********found**********/n=__1__;t=100;/**********found**********/while(t<=__2__){ s1=t%10; s2=(t/10)%10; s3=t/100;if(s1+s2+s3==15){ printf("%d ",t);n++;}/**********found**********/__3__;}return n;}main(){ int x=-1;while(x>999||x<0){ printf("Please input(0<x<=999): "); scanf("%d",&x); }printf("\nThe result is: %d\n",fun(x));}程序修改题给定程序MODI1.C中函数fun的功能是:先将s所指字符串中的字符按逆序存放到t所指字符串中,然后把s所指串中的字符按正序连接到t所指串的后面。

例如:当s所指的字符串为:“ABCDE”时,则t所指的字符串应为:“EDCBAABCDE”。

#include <stdio.h>#include <string.h>void fun (char *s, char *t){/************found************/int i;sl = strlen(s);for (i=0; i<sl; i++)/************found************/t[i] = s[sl-i];for (i=0; i<sl; i++)t[sl+i] = s[i];t[2*sl] = '\0';}main(){ char s[100], t[100];printf("\nPlease enter string s:"); scanf("%s", s);fun(s, t);printf("The result is: %s\n", t);}程序设计题函数fun的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。

二级语言上机考试答案

二级语言上机考试答案

二级语言上机考试答案1. 请解释什么是面向对象编程,并给出一个简单的例子。

答案:面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它使用对象来表示现实世界中的实体,这些对象具有属性和方法。

面向对象编程的核心概念包括封装、继承和多态。

例如,我们可以创建一个名为“Car”的类,它具有属性如颜色、品牌和速度,以及方法如启动、加速和刹车。

通过实例化这个类,我们可以创建多个具有不同属性的汽车对象。

2. 描述什么是数据库事务,并解释其ACID属性。

答案:数据库事务是一组原子性的数据库操作序列,这些操作要么全部成功,要么全部失败。

事务确保数据库从一个一致的状态转换到另一个一致的状态。

ACID属性是事务的四个关键特性,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。

原子性意味着事务中的所有操作要么全部完成,要么全部不做;一致性确保事务将数据库从一个有效状态转换到另一个有效状态;隔离性保证了并发执行的事务之间的操作不会相互干扰;持久性意味着一旦事务完成,其结果就是永久性的。

3. 简述什么是云计算,并列举至少三种云计算服务类型。

答案:云计算是一种通过互联网提供计算资源的模式,这些资源包括服务器、存储、数据库、网络、软件等,可以按需提供给用户。

云计算服务类型包括基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。

IaaS提供虚拟化的计算资源;PaaS提供开发环境和工具,允许用户开发、运行和管理应用程序;SaaS提供在线应用程序,用户可以直接通过互联网使用。

4. 解释什么是API,并说明其在软件开发中的作用。

答案:API(应用程序编程接口)是一套预先定义的函数、协议和工具,用于构建软件应用程序。

API允许不同的软件系统相互通信,使得开发者可以访问和使用特定软件的功能或数据,而无需了解其内部工作原理。

C#上机考试题目大全和答案

C#上机考试题目大全和答案
(5)编写一个程序接受用户输入的字符。如果输入的字符是 0-9 数字中的一个,则显示“您 输入了一个数字”,否则显示“这不是一个数字”。 (6)编写一个程序,该程序使用一个数组存储 30 个学生的考试成绩,并给各个数组元素指 定一个 1-100 的随机值,要求利用索引来对数组中的元素进行赋值和显示。然后计算平均成 绩。 (7)编写一个 windows 应用程序,能将窗体背景颜色 1 秒钟变换一次。 (8)通过方法重载,使用同一个方法名 print 分别执行输出整数、双精度数与字符串的功能。 1. using System; using System.Collections.Generic; using System.Text;
mc.Elapsed += ca.TimerHandlerA; handler A -- instance.
Thread.Sleep(100000); } } public class MyTimerClass { public event EventHandler Elapsed; private void OnOneSecond(object obj, EventArgs e) {
Console.WriteLine(DateTime.Now.ToLongTimeString()); } }
class Program {
static void Main() {
ClassA ca = new ClassA(); the class object.
MyTimerClass mc = new MyTimerClass(); Create the timer object.
i = 100; j=50; k=200; } }
} }
8.

Java程序上机练习题库(含答案)

Java程序上机练习题库(含答案)

上机练习题(共包括四部分、16个练习、共96个练习题,请使用“视图”中的“文档结构图”查看)一、java语言基础和面向对象(教材内容的第1、2、3章)练习1(4)掌握:各种数据类型变量的定义和访问,各种数据类型常量的使用,数据类型转换。

1. 编写Applet,其功能为:取两个小于1000的正随机数,若两个数均小于10,先将它们都放大50倍,否则不改变这两个数。

最后,求这两个数的和并将结果输出。

要求这些功能在主类的方法init( ) 中实现,并使输出结果仅保留小数点后4位(不需四捨五入)。

@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void init( ){Label out1=new Label(" ");Label out2=new Label(" ");double x,y;add(out1);add(out2);x=Math.random( )*1000;y=Math.random( )*1000;if(x<10&y<10) { x*=50; y*=50; }out1.setText(""+x+"+"+y+" 约等于");out2.setText(""+(int)((x+y)*10000)/10000.0);}}2. 请编写一个Applet,其功能为:取一个小于10000的正随机整数,并输出该数的平方根。

要求这些功能在主类的方法paint( ) 中实现,并使输出结果在四捨五入后保留小数点后4位。

@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void paint(Graphics g){int k;k=(int)(Math.random( )*1000);g.drawString(""+k+" 的平方根约等于"+(int)((Math.sqrt(k)+0.00005)*10000)/10000.0,20,20);}}3. 编写一个Applet,其功能为:取一个50~200之间的正随机整数,如果该数为奇数则求它的平方根并转换成float型数后再输出;如果该数为偶数则求它的平方并输出。

计算机上机考试试题及答案java

计算机上机考试试题及答案java

计算机上机考试试题及答案java计算机上机考试试题及答案(java)1. 基本操作(1小题,计30分)注意:下面出现的“考生文件夹”均为%USER%在考生文件夹中存有文件名为Java_1.java文件,请完善Java_1.java文件,并进行调试,使程序运行后输出窗口如下:由于Java_1.java文件不完整,请在注释行“//*********Found*********”下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或其他已有语句内容。

存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。

给定源程序:import javax.swing.*;import java.text.DecimalFormat;public class Java_1{//*********Found**********public static ___________________ main( String args[] ){SimpleTime t = new SimpleTime( 12, 30, 19 );//*********Found**********___________________.showMessageDialog( null, t.buildString(), " \"this\" 引用示范",RMATION_MESSAGE );System.exit( 0 );}}class SimpleTime {private int hour, minute, second;public SimpleTime( int hour, int minute, int second ){this.hour = hour;this.minute = minute;this.second = second;}public String buildString(){//*********Found**********return "this.toString(): " + ___________________() +"\ntoString(): " + toString() +"\nthis (with implicit toString() call): " +this;}public String toString(){DecimalFormat twoDigits = new DecimalFormat( "00" );return twoDigits.format( this.hour ) + ":" +twoDigits.format( this.minute ) + ":" +twoDigits.format( this.second );}}解题思路:Java程序修改如下:第1处:main方法的标识符,需填入 void第2处:显示信息对话框函数,需填入 JOptionPane第3处:返回的字符串内容,需填入 toString 或 this.toString 参考源程序:c:\wexam\28990001\hlpsys\参考答案\Java_1.java请把该程序复制到c:\wexam\28990001中,然后进行编译和执行。

上机模拟卷-参考答案

上机模拟卷-参考答案

【程序功能】将一个实数转换为二进制科学计数法表示并输出。

二进制科学记数法是指将一个绝对值大于2或小于1的实数记为a×2±n形式,其中尾数a是用二进制表示的实数且1≤|a|<2,指数中的n是用二进制表示的整数。

例如:0.125的二进制科学计数法表示是1.0⨯2 - 11 。

若用B代表基数2,则a×2±n可表示为aB±n的形式。

例如,1.0⨯2 - 11表示为1.0 B-11。

【测试数据与运行结果】第一次运行时输入:0输出:0.0B0第二次运行时输入:0.125输出:1.0B-11第三次运行时输入:315输出:1.00111011B+1000【含有错误的源程序】#include <stdio.h>void outBinary(int x){ if(x/2) outBinary(x/2);printf("%d",x%2);}void outFloatBinary(float x){ int e=0;if(x==0){ puts(0.0B0); /* 改为puts(“0.0B0”); */return;}if(x<0){ putchar('-'); x=-x; }while(x>=2.0){ e++; x/=2; }while(x<1.0){ e++; x*=2; } /*改为{ e--; x*=2; } */printf("1."); x=(x-(int)x)*2;do{ printf("%d", x); /* 改为printf("%d",(int)x); */x=(x-(int)x)*2;}while(x!=0);if(e=0) printf("B0"); /* 改为if(e==0) printf("B0"); */else if(e>0){ printf("B+"); outBinary(e); }else{ printf("B-"); outBinary(-e); }printf("\n");}void main( )scanf("%f", &a);outFloatBinary(a);getch();}二、编程题【程序功能】实现包含一个变元x的多项式合并同类项操作。

C语言简单上机考试编程及答案(一)

C语言简单上机考试编程及答案(一)

C语言简单上机考试编程及答案(一)在学习C语言时,除了掌握基本语法和理论知识,还需要进行上机练习和编程考试来巩固和检查学习成果。

下面是一份C语言简单上机考试编程及答案,希望对大家练习和测试C语言知识有所帮助。

一、基础语法1.请编写一个程序,实现输入两个整数,输出它们的和、差、积和商。

#include <stdio.h>void main(){int a, b;printf("请输入两个整数:\n");scanf("%d%d", &a, &b);printf("a + b = %d\n", a + b);printf("a - b = %d\n", a - b);printf("a * b = %d\n", a * b);printf("a / b = %d\n", a / b);}2.请编写一个程序,判断输入的整数是否是偶数。

#include <stdio.h>void main(){int n;printf("请输入一个整数:\n");scanf("%d", &n);if (n % 2 == 0)printf("%d是偶数\n", n);elseprintf("%d是奇数\n", n);}二、循环语句1.请编写一个程序,输出1-100中所有偶数的和。

#include <stdio.h>void main(){int i, sum = 0;for (i = 1; i <= 100; i++){if (i % 2 == 0)sum += i;}printf("1-100中所有偶数的和为%d\n", sum);}2.请编写一个程序打印如下图案,要求任意输入大于等于3的整数n,如n=5时输出如下图案:*************#include <stdio.h>void main(){int i, j, k, n;printf("请输入一个大于等于3的整数:\n");scanf("%d", &n);for (i = 1; i <= n / 2 + 1; i++){for (j = 1; j <= n / 2 + 1 - i; j++)printf(" ");for (k = 1; k <= i * 2 - 1; k++)printf("*");printf("\n");}for (i = n / 2; i >= 1; i--){for (j = 1; j <= n / 2 + 1 - i; j++)printf(" ");for (k = 1; k <= i * 2 - 1; k++)printf("*");printf("\n");}}三、函数调用1.请编写一个函数,实现输入两个整数,返回它们的和。

机试练习5(41-50套含答案)

机试练习5(41-50套含答案)

第四十一套请补充函数fun,该函数的功能是:判断一个数是否为素数。

该数是素数时,函数返回字符串"yes!",否则函数返回字符串"no!",并在主函数中输出。

注意:部分源程序给出如下。

请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdlib.h>#include <conio.h>#include <stdio.h>【1】{int I, m;m=1;for(I=【2】;I<n; I++)if (【3】){m=0;break;}if (m==1&&n>1)return("yes!");elsereturn("no!");}void main(){int k=0;system("CLS");printf("Input:");scanf("%d",&k);printf("%s\n",fun(k));}【参考答案】(1) char *fun(int n) (2) 2(3) n%i==0或!(n%i)下列给定程序中,函数fun的功能是:按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依次存放在w所指的数组中。

若s 所指数组中元素的个数不是5的倍数,多余部分忽略不计。

例如,s所指数组有14个元素,则只对前10个元素进行处理,不对最后的4个元素求平均值。

请改正函数fun中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:#include <stdio.h>#define SIZE 20fun (double *s,double *w){ int k,i; double sum;for(k=2,i=0;i<SIZE;i++){s[i]=k;k+=2;}sum=0.0;for(k=0,i=0;i<SIZE;i++){sum+=s[i];/*************found**************/if(i+1%5==0){w[k]=sum/5; sum=0;k++;}}return k;}void main(){ double a[SIZE],b[SIZE/5];int i, k;k=fun(a,b);printf("The original data:\n");for(i=0;i<SIZE;i++){if(i%5==0) printf("\n");printf("%4.0f",a[i]);}printf("\n\nThe result:\n");for(i=0;i<k;i++) printf("%6.2f",b[i]);printf("\n\n");}【参考答案】(1)错误:if(i+1%5==0) 正确:if((i+1)%5==0)程序定义了的二维数组,并在主函数中自动赋值。

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

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

C语言上机程序设计题库及答案在计算机科学与技术领域中,C语言是一门非常重要的编程语言。

作为高级语言,C语言广泛应用于软件开发、系统编程以及嵌入式系统等领域。

针对C语言的上机程序设计,我整理了一份题库,并提供了相应的答案,供学习和参考使用。

1. 题目1:求给定整数数组中的最大值题目描述:给定一个整数数组,编写一个程序找到数组中的最大值,并将其输出。

代码示例:```c#include <stdio.h>int findMax(int arr[], int n) {int max = arr[0];for (int i = 1; i < n; i++) {if (arr[i] > max) {max = arr[i];}}return max;}int main() {int arr[] = {1, 2, 3, 4, 5};int n = sizeof(arr) / sizeof(arr[0]);int max = findMax(arr, n);printf("The maximum value is: %d\n", max);return 0;}```2. 题目2:判断一个字符串是否为回文字符串题目描述:给定一个字符串,判断它是否为回文字符串(正读和倒读都相同)。

编写一个程序实现此功能。

代码示例:```c#include <stdio.h>#include <string.h>int isPalindrome(char str[]) {int len = strlen(str);for (int i = 0; i < len / 2; i++) {if (str[i] != str[len - i - 1]) {return 0;}}return 1;}int main() {char str[] = "level";if (isPalindrome(str)) {printf("The string is a palindrome.\n");}else {printf("The string is not a palindrome.\n");}return 0;}```3. 题目3:计算阶乘题目描述:给定一个正整数,编写一个程序计算其阶乘。

计算机二级上机试题模拟50

计算机二级上机试题模拟50

《五十套》1.基本操作题在考生文件夹下的“samp1.mdb”数据库文件中已建立表对象“tEmployee”。

请按以下操作要求,完成表的编辑:(1)判断并设置“tEmployee”表的主键;(2)设置“性别”字段的默认值为“男”;(3)删除表中1949年以前出生的雇员记录;(4)删除“照片”字段;(5)设置“雇员编号”字段的输入掩码为只能输入10位数字或空格形式;(6)在编辑完的表中追加如下新记录:2.简单应用题在考生文件夹下有一个数据库文件“samp2.mdb”,里面已经设计好三个关联表对象“tStud”、“tCourse”、“tScore”和一个临时表“tTemp”及一个窗体对象“fTmp”。

请按以下要求完成设计:(1)创建一个查询,查找并显示没有运动爱好学生的“学号”、“姓名”、“性别”和“年龄”4个字段内容,将查询命名为“qT1”;(2)创建一个查询,查找并显示所有学生的“姓名”、“课程名”和“成绩”3个字段的内容,将查询命名为“qT2”;(3)创建一个参数查询,查找并显示学生的“学号”、“姓名”、“性别”和“年龄”4个字段内容。

其中设置性别字段为参数,参数条件要引用窗体“fTmp”上控件“tSS”的值,将查询命名为“qT3”;(4)创建一个查询,删除临时表对象“tTemp”中年龄为奇数的记录,将查询命名为“qT4”。

3.综合应用题考生文件夹下有一个数据库文件“samp3.mdb”,其中存在已经设计好的表对象“tEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。

请在此基础上按照以下要求补充设计:(1)将报表“rEmp”的报表页眉节区内名为“bTitle”标签控件的标题显示为“职工基本信息表”,同时将其放在距上边0.5厘米、距左侧5厘米的位置;(2)设置报表“rEmp”主体节区内的“tSex”文本框件控显示“性别”字段的值;(3)将窗体按钮“btnP”的单击事件属性设置为宏“mEmp”,以完成按钮单击打开报表的操作;(4)窗体加载时将考生文件夹下的图片文件“test.bmp”设置为窗体“fEmp”的背景。

上机编程考试题目和答案

上机编程考试题目和答案

上机编程考试题目和答案上机编程考试题目:实现一个简单的学生信息管理系统**题目描述:**设计并实现一个简单的学生信息管理系统,该系统应能够完成以下功能:1. 添加学生信息2. 删除学生信息3. 修改学生信息4. 查询学生信息5. 显示所有学生信息学生信息包括:学号、姓名、年龄、专业。

**输入输出要求:**- 输入:用户通过控制台输入相应的指令和数据。

- 输出:系统根据用户输入的指令,输出相应的结果。

**示例代码框架:**```pythonclass Student:def __init__(self, student_id, name, age, major): self.student_id = student_id = nameself.age = ageself.major = majorclass StudentManager:def __init__(self):self.students = {}def add_student(self, student):if student.student_id in self.students:print("学生信息已存在。

")else:self.students[student.student_id] = studentprint("学生信息添加成功。

")def delete_student(self, student_id):if student_id in self.students:del self.students[student_id]print("学生信息删除成功。

")else:print("学生信息不存在。

")def update_student(self, student_id, name=None, age=None, major=None):if student_id in self.students:if name:self.students[student_id].name = nameif age:self.students[student_id].age = ageif major:self.students[student_id].major = majorprint("学生信息更新成功。

4上机编程及答案

4上机编程及答案

1: 第1题m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人作为函数值返回,将低于平均分的分数放在below所指定的函数中。

答案:int fun(int score[],int m,int below[]){int i,k=0,aver=0;for(i=0;i<m;i++)aver+=score[i];aver/=m;for(i=0;i<m;i++)if(score[i]<aver){below[k]=score[i];k++;}return k;}2: 第2题请编写函数fun,它的功能是:求出1到100之内能北7或者11整除,但不能同时北7和11整除的所有证书,并将他们放在a所指的数组中,通过n返回这些数的个数。

答案:void fun(int *a, int *n){int i,j=0;for(i=2;i<1000;i++)if ((i%7==0 || i%11==0) && i%77!=0)*n=j;}3: 第3题请编写函数void fun(int x,int pp[],int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。

答案:void fun(int x, int pp[ ], int *n){int i=1,j=0;k=0,*t=pp;for(i=0;i<=x;i++)if(i%2!=0){t[j]=I;j++;}for(i=0;i<j;i++)if(x%t[i]==0){pp[k]=t[i];k++;}*n=k;}4: 第4题请编写一个函数void fun(char *tt,int pp[]),统计在tt字符中"a"到"z"26各字母各自出现的次数,并依次放在pp所指的数组中。

void fun(char *tt, int pp[]) {int i;for (i=0;i<26;i++)pp[i]=0;while (*tt){switch (*tt){case ‘a’: pp[0]++;break; case ‘b’: pp[1]++;break; case ‘c’: pp[2]++;break; case ‘d’: pp[3]++;break; case ‘e’: pp[4]++;break; case ‘f’: pp[5]++;break; case ‘g’: pp[6]++;break; case ‘h’: pp[7]++;break; case ‘i’: pp[8]++;break; case ‘j’: pp[9]++;break; case ‘k’: pp[10]++;break; case ‘l’: pp[11]++;break; case ‘m’: pp[12]++;break; case ‘n’: pp[12]++;break;c ase ‘o’: pp[14]++;break;case ‘p’: pp[15]++;break;case ‘q’: pp[16]++;break;case ‘r’: pp[17]++;break;case ‘s’: pp[18]++;break;case ‘t’: pp[19]++;break;case ‘u’: pp[20]++;break;case ‘v’: pp[21]++;break;case ‘w’: pp[22]++;break;case ‘x’: pp[23]++;brea k;case ‘y’: pp[24]++;break;case ‘z’: pp[25]++;break;}tt++;}}5: 第5题请编写一个函数void fun(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k各素数存入xx所指的数组中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
void fun(char *s, char t[])
{
int i=0;
while((*s)!='\0')
{
if((*s)%2==1)
{ t[i]=*s; i++; }
s++;
}
t[i]='\0'; /*因为是字符串,故末尾必须加上字符串结尾符 '\0'*/
{
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
b[i][j]=a[j][i];/*关键语句实现转置*/
for(i=0;i<3;i++)
for(j=0;j<3;j++)
b[i][j]=a[i][j]+b[i][j];
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
if(strcmp(a->num,b)==0) /*注意该函数的两个参数*/
{
result=*a; /*结构体整体赋值*/
break;
}
else
a++;
if(i==N)
result.num[0]='\0',result.s=-1; /*注意数组num是字符串数组不能对它
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
2.提示:该题要求对结构体有比较深入的理解
STREC fun( STREC *a, char *b )
{
int i;
STREC result;
for(i=0;i<N;i++)
do
{
p=m%10;
m/=10;
n++;
}while(m);
m=w-(int)pow(10,n-1)*p;/*这里使用了pow()函数,必须添加头文件math.h*/
return m;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
*t=*(t+1),t++;
}
p--;
}
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
9.提示:要求对指针有较高要求的掌握
void fun( char *a,int n )
{
char *b=a;
int num=0;
@王 纯--------(26--45) @
@叶金平--------(21--25) @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
1.提示:该题目思路比较简单,关键在于细节的处理
{
int i,j;
*k=0;
for(i=2;i<m;i++)
for(j=2;j<=i/2;j++)/*判断小于m的每一个数i是否为非素数*/
if(i%j==0)
{
xx[(*k)++]=i; /*通过*k计数*/
break;
}
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8.提示:真正理解这题中删除的意思,即覆盖,要求对指针有较高要求的掌握
假设指针a为A*B**CD***
void fun( char *a, char *p )
{
char *t;
while(*p=='*')
p--; /*将指针移动到从后往前数第一个字母D*/
while(*p!='*')
{
strcpy(s->num,a[i].num);
s->s=a[i].s;
}
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
4.提示:主要考察如何判断一个数为素数(质数)
void fun( int m, int *k, int xx[] )
整体赋值 即:result.num=""是错误的*/
return result; /*注意函数必须返回一个STREC类型的值*/
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
13.提示:该题主要考察取整与取余问题,测试时注意测试数据格式
void fun(int a, int b, long *c)
{
*c=a/10+(a%10)*100+(b%10)*10+(b/10)*1000;
for(i=0;a[i];i++)
;
len=i;
15.
double fun(int n)
{
int j=1,i;
double sum=1;
for(i=1;i<=n;i++)
{
j*=i;
sum+=1.0/j;
}
return sum;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
return s;
else
return t;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
7.提示:本题关键在于理解矩阵的转置如何求得,将矩阵当作数组进行处理
void fun ( int a[3][3], int b[3][3])
3.提示:熟悉结构体的操作,涉及结构体操作的时候通常需要使用函数strcpy
fun( STU a[], STU *s )
{
int i;
strcpy(s->num,a[0].num);
s->s=a[0].s;
for(i=0;i<N;i++)
if(s->s<a[i].s)
*n=0;
for(num=1;num<=1000;num++)
if((num%7==0 || num%11==0) && num%77!=0)
a[*n]=num,(*n)++;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
12.提示:将字符串S中ASCII码为奇数的字符移入数组t中即可
6.提示:这里考察字符串长度的计算,可以使用一些常用函数的使用,如strlen()
char *fun ( char *s, char *t) /*注意函数的返回值*/
{
int slen,tlen;
slen=strlen(s);
tlen=strlen(t);
if(slen>=tlen)
b++;
b--; /*将指针移动到从后往前数的第一个星号*/
while(num>n) /*开始对字符串进行处理*/
*b='\0',b--,num--;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
10.提示:在字符串中删除指定字符时,可以借助其他数组进行
for(i=0;i<n-1;i++)
{
b[i]=a[i];
}
for(;a[i];i++)
b[i]=a[i+1];
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
19.
void fun( char *a )
{
int count,i,len;
17.
int fun ( int a[][N] )
{
int i,j;
for(i=0;i<N;i++)
for(j=0;j<=i;j++)
a[i][j]=0;
}
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
18.
int j=strlen(a),i;
void fun( char *a )
{
int i,k=0;
char *p=a,s[81];/*借助数组s进行,将符合要求的字符放置在数组s中*/
while(*p)
{
if(*p!='*')
s[k++]=*p;
p++;
}
for(i=0;i<k;i++)
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@本答案由王纯,揭才明,叶金平老师共同编写,已经@
@通过了系统的测试,欢迎大家参考! @
@揭才明--------(1---20,46--50) @
相关文档
最新文档