北方民族大学c语言实验习题
- 格式:pdf
- 大小:164.34 KB
- 文档页数:14
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
C语言课程实训题目《C语言程序设计》课程实训指导书1.学生学籍管理 ........................................................................... .............................. 2 2.通讯录管理 ........................................................................... .................................. 2 3.酒店房间登记管理 ........................................................................... ....................... 2 4.职工信息管理 ........................................................................... .............................. 3 5.销售管理 ........................................................................... ..................................... 3 6.银行账户信息管理 ........................................................................... ....................... 3 7.商品销售管理 ........................................................................... .............................. 4 8.设备管理 ........................................................................... ..................................... 4 9.飞机订票 ........................................................................... ..................................... 5 10.仓库管理 ........................................................................... ................................... 5 11.学校运动会管理 ........................................................................... ......................... 5 12.教师工作量管理 ........................................................................... ......................... 6 13.学生证管理程序 ........................................................................... ........................... 6 14.学分管理程序 ........................................................................... ............................... 6 15.图书登记管理程序 ........................................................................... ........................ 7 16.学生作业完成情况管理程序 ........................................................................... ......... 7 17.宿舍管理系统 ....................................................................................................... 7 18.图书租借管理系统 ........................................................................... ........................ 8 19.车票管理系统 ........................................................................... ............................ 8 20.学校职工工资管理系统 ........................................................................... .. (8)1《C语言程序设计》课程实训指导书1.学生学籍管理问题描述:已知程序要求管理的学生信息包括:学号,姓名,系别、班级,年龄,性别,入学时间。
实验一1、计算整数各位数字之和(10 分)输入一个3位正整数,将其每一位的数字相加,输出和。
输入格式:输入一个3位正整数。
变量数据类型为unsigned。
输出格式:输出整数每一位相加后的整数和。
输入样例:输出样例:【参考答案】#include ""int main(){ unsigned int a,ge,shi,bai,sum;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;sum=ge+shi+bai;printf("%d\n",sum);return 0;}2、计算代数表达式(10 分)求:输入格式:输入角度x。
变量数据类型为double。
π为。
输出格式:输出y的值,精确到小数点后2位。
输入样例:输出样例:【参考答案】#include <>#include <>#define PIint main(){double x,y;scanf("%lf",&x);y=sqrt((sin(60*PI/180)+1)*(sin(30*PI/180)+1)/cos(x*PI/180));printf("%.2lf",y);return 0;}3、逆序的三位数(10 分)程序每次读入一个正3位数,然后输出按位逆序的数字。
注意:当输入的数字含有结尾的0时,输出不应带有前导的0。
比如输入700,输出应该是7。
输入格式:每个测试是一个3位的正整数。
输出格式:输出按位逆序的数。
输入样例:输出样例:【参考答案】#include ""int main(){ int a,ge,shi,bai,b;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;b=ge*100+10*shi+bai;printf("%d\n",b);return 0;}4、求整数均值(10 分)本题要求编写程序,计算4个整数的和与平均值。
实验六函数一,实验目的:1,掌握定义函数的方法.2,掌握函数实参与形参的对应关系,以及"值传递"的方式.3,掌握函数的嵌套调用和递归调用的方法.4,掌握全局变量和局部变量动态变量,静态变量的概念和使用方法.二,实验准备:1,复习函数调用的基本理论知识.2,复习函数的嵌套调用和递归调用的方法.3,复习全局变量,局部变量;静态变量,动态变量;外部变量等概念和具体使用. 4,源程序.三,实验步骤及内容:1,运行程序并回答问题(1)程序main(){ play(3);}void print_star(){ printf("* * * * * * * * * *\n")}void print_message(){ printf("Good Friend! \n");}void play(n)int n;{ int i;for(i=1;i<=n;++i){ print_star();print_message();}}问题:运行后出现什么错误为什么应如何修改请上机调试.修改:main(){ play(3);}void print_star(){ printf("* * * * * * * * * *\n");(缺少分号)}void print_message(){ printf("Good Friend! \n");}play(n)(原先void的与声明类型不同)int n;{ int i;for(i=1;i<=n;++i){ print_star();print_message();}getch();}运行结果(2)以下程序用于计算1+2+3+4+5.main(){ int i,sum;for(i=1;i<=5;++i)sum=add(i);printf("sum=%d\n",sum);getch();}add (a)int a;{static int s=0;s=s+a;return(s);}运行结果:问题:此程序能否得到正确结果为什么请在不增加语句的条件下,修改程序并上机调试.(3)程序int x=567,y=890;main(){ printf("x=%d,y=%d\n",x,y);}运行结果:问题:运行程序后出现什么错误为什么如何修改答:定义位置出错,y的定义在主函数之后了,将y的定义改在和x一样的位置处。
实训题目 1:商店商品管理系统某商店每天有进货、售货、统计销售额、计算毛利率、查看商品剩余量等业务,所以 人工管理是一件非常繁琐的事情, 为了快速有效地管理, 该商店提出要编制一个计算机管理 软件。
功能要求:循环显示如图 1 所示的主菜单。
选择 1:创建商品档案。
每一个商品信息包括编号、品名、进价、售价、进货量、销 售量、销售额、剩余数、毛利;选择 2:编辑商品信息。
例如,向商品档案添加新商品、删除原有商品、处理原有商 品的新进货量、新销售量、报废量;选择 3:统计销售情况。
在此项中统计每种商品的销售额、剩余数、毛利(毛利=销售额-进价×销售量);选择 4:查询商品信息。
如:根据品名、剩余数(小于 5 或大于 20)进行查询;选择 5:显示商品信息。
显示方式有 3 种,即按原来商品顺序显示、按销售额高到底的顺序显示、按毛利高到底的顺序显示,由于商品较多,所以要求分屏显示。
选择 0:退出系统。
菜单要求:( 1)设计如图 1_1 所示的主菜单;( 2)选择 2 时显示如图 1_2 所示的子菜单; ( 3)选择 4 时显示如图 1_3 所示的子菜单; ( 4)选择 5 时显示如图 1_4 所示的子菜单;主菜单和子菜单能够循环出现, 每一项菜单执行之后, 询问用户是否继续进行。
从子菜 单可以返回到主菜单。
请输入选项编号( 0—5 )1 I——创建商品档案 2 ——编辑商品信息 3 ——统计销售情况 4 ——查询商品信息 5 ——显示商品信息 0——退出系统请输入选项编号( 0 — 4)******************************|1 ——添加新商品2 ——删除原有商品3 ——修改原有商品信息 4——返回 0——退出图 1_1 某商场商品管理主菜单 图 1_2. 编辑商品信息子菜单****************************** I|******************************| | 请输入选项编号( 0 —3) :|1 ——按品名查询2 ——按剩余数查询 3——返回0 ——退出请输入选项编号( 0 —4 ) 1——按原来顺序显示 2 ——按销售额高底显示 3 ——按毛利高底显示 4 ——返回 0——退出图 1_3 查询商品信息子菜单图 1_4 显示商品信息子菜单****************************** ************************************************************************************************************************实训题目2:音像图书租借管理系统功能要求:(1)创建音像图书库。
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
实验五数组一,实验目的:1,掌握一维数组和二维数组的定义,赋值和输入输出的方法.2,掌握字符数组和字符串函数的使用.3,掌握与数组有关的算法(特别是排序算法).二,实验准备:1,复习数组的基本知识.2,复习字符串数组的特点和常用的字符串处理函数.3,源程序.三,实验步骤及内容:1,编程求两个3*3二维数组的和:#include "stdio.h"main(){ int i,j,s=0,k=0,w=0;int a[3][3]={{1,2,3},{1,2,3},{1,2,3}},b[3][3]={{4,5,6},{4,5,6},{4,5,6}}; for(i=0;i<3;i++)for(j=0;j<3;j++){s=s+a[i][j];k=k+b[i][j];}w=s+k;printf("%d\n",w);getch();}运行结果:2,编程计算3*3矩阵两条对角线元素之和:#include "stdio.h"main(){ int i,j,s=0,k=0,w=0;int a[3][3];for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<3;j++)if(i+j==2||i==j)k=k+a[i][j];printf("%d\n",k);getch();}运行结果:3,编写下列问题的源程序并上机调试运行.(1)用选择法对10个整数排序(10个整数用scanf函数输入).(习题6.2)#include "stdio.h"main (){int a[10];int i,j,k;printf("put 10 wordf:\n");for (i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for (j=0;j<9;j++)for( i=0;i<9-j;i++)if (a[i]>a[i+1]){k=a[i];a[i]=a[i+1];a[i+1]=k;}printf("min to max is:\n");for (i=0;i<10;i++)printf(" %d",a[i]);printf("\n");getch();}运行结果:(2) 找出一个二维数组的"鞍点",即该位置上的元素在该行上最大,在该列上最小.也可能没有鞍点.(习题6.8)此二维数组可以设定如下:9 80 205 4090 -60 96 1210 -3 101 89数组元素的值用赋初值方法在程序中指定.#include<stdio.h>main(){int a[3][4],b[3],c[3],d[3][4],k=0,l=0;int i,j;for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&d[i][j]);for(i=0;i<3;i++)for(j=0;j<4;j++,a[i][j]=d[i][j]);for(i=0,k=0;i<3;i++,k++)for(j=0;j<2;j++){if(a[i][j]>=a[i][j+1])b[k]=a[i][j+1]=a[i][j];elseb[k]=a[i][j+1];}for(j=0,l=0;j<5;j++,l++)for(i=0;i<4;i++){if(a[i][j]<=a[i+1][j])c[l]=a[i+1][j]=a[i][j];elsec[l]=a[i+1][j];}for(i=0,k=0;i<3;i++,k++)for(j=0,l=0;j<4;j++,l++)if(d[i][j]-b[k]==0){if(d[i][j]-c[l]==0)printf("d[%d][%d]=%d\n",i,j,d[i][j]);elseprintf("d[%d][%d]=%d isnot andi\n",i,j,d[i][j]);}}运行结果:(3)将两个字符串连接起来,不要用strcat函数.(习题6.13) #include "stdio.h"main (){char a[30]={"yao guo lei"} ,b[]={" class one"};int i,j=0;for(i=0;i<30;i++){if(a[i]=='\0')a[i]=b[j++];}printf("%s",a);(或者puts(a))getch();}运行结果:四,实验报告:1,源程序.2,错误原因及其修改记录.3,实验结果记录.4,实验体会.。
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。