北方民族大学c语言实验习题
(完整word版)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语言基础练习题(含答案)精编版
目录第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语言课程实训题目《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.学生学籍管理问题描述:已知程序要求管理的学生信息包括:学号,姓名,系别、班级,年龄,性别,入学时间。
C语言实验题及参考答案
实验一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个整数的和与平均值。
C语言程序设计实验六函数答案《西北民大电气学院》
实验六函数一,实验目的: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一样的位置处。
C语言实训题目.docx
实训题目 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)创建音像图书库。
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语言基础练习题(含答案)
B .在 C 语言程序中,要调用的函数必须在 main( ) 函数中定义
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,实验体会.。
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语言实验报告参考答HEN system office room [HEN 16H-HENS2AHENS8Q8-HENH1688]长沙理工大学2010C 语言实验报告参考答案实验一熟悉c 语言程序开发环境及数据描述四、程序淸单1. 编写程序实现在屏幕上显示以下结果:The dress is longThe shoes are bigThe trousers are black答案:#include<>main(){printf (Z/The dress is longArT); printf (zz The shoes are big\rT); printf (zzThe trousers are black'n"); } 2. 改错题(将正确程序写在指定位置)正确的程序为:#include <>main(){printf (,z商品名称 printf CTCL 电视机 printf (”美的空调 printf ("SunRose 键盘 2.编写程序:&二150, b 二20, c 二45,编写求 a/b 、a/c (商)和 a%b 、 3%C (余数)的程序。
答案:#include<>main(){int a, b, c, x, y;d 二150;b 二 20;c=45;x=a/b;y=a/C;printf Ca/b 的商=%d\n", x);价格\『);¥7600\n z/):¥2000\n z ,);Y\n z/);printf ("a/c 的商=%d\n", y);x=a%b;y=a%c;printf Ca/b 的余数=%d\n", x);printf Ca/c 的余数=%d\rT,y);}4.设变量a的值为0, b的值为-10,编写程序:当a>b时,将b赋给C;当乳二b时,将8赋给C。
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程序是由()。
(完整word)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程序是由()。
程序设计语言实验指导书12版
《程序设计语言》实验指导书徐东燕编北方民族大学计算机科学与工程学院2012年9月目录实验一 C语言编程环境熟悉及简单程序的编写(验证型实验,2学时) (3)实验二分支结构程序设计(设计型实验,2学时) (6)实验三循环结构程序设计(设计型实验,2学时) (8)实验四函数程序设计(设计型实验,2学时) (10)实验五数组程序设计((设计型实验,2学时) (12)实验六指针程序设计(设计型实验,2学时) (14)实验七结构体程序设计(设计型实验,2学时) (15)实验八程序结构与递归函数(综合性实验,2学时) (16)实验九指针进阶及综合程序设计(综合型实验,2学时) (17)实验十文件的程序设计(设计型实验,2学时) (18)参考文献 (20)课程编号:11101203 课程类别:专业基础课适用专业:计算机科学与技术、软件工程、网络工程、信管专业课程总学时:76 实验课学时:20开设实验项目数:10实验一C语言编程环境熟悉及简单程序的编写(验证型实验,2学时)一、实验目的与要求实验环境1.熟悉Cfree开发环境或Visual C++ 6.0的使用环境;2.掌握Cfree开发环境或Visual C++ 6.0环境下建立C程序的步骤;3.掌握C程序在Cfree开发环境或Visual C++ 6.0环境下的编辑、调试和运行的步骤、方法;4.理解C程序的一般结构;5.理解并掌握程序的顺序结构程序设计;6.在Cfree开发环境或Visual C++ 6.0环境下编写并运行基本的C程序;7.理解程序调试思想,能修改简单的C语法错误;8.掌握算术、赋值表达式,输入输入语句和简单数据处理方法。
二、实验环境1.微机每人一台,要求PⅢ以上处理器。
2.windows2000/xp操作系统。
3.Cfree开发环境或或Visual C++ 6.0开发环境。
三、实验预习与准备1.计算机基本操作练习。
2.Cfree开发环境或Visual C++ 6.0软件使用预习。
C语言实验与习题
C 语言实验与习题张洪礼 陈琦 臧怀沛 主编 余梅生 高翔 主审蔡淑兰 副主编前1 / 137言本书是针对计算机专业及非计算机专业的本科生、专科生及函授生的需要提供的 C 语言 上机指导教材。
前面十个实验涉及的是 C 语言的基础内容,要求学生必须熟练掌握。
后面七 个综合性实验能提高学生对较复杂问题的分析及程序设计能力。
另外每个实验后面都有习题, 主要目的是进一步巩固所学的知识。
在本教材的第三、四部分给出了 turbo C 的常用函数表和 错误信息表,目的是方便学生编程并查阅所需要函数并尽快找出错误的根源。
矚慫润厲钐瘗睞枥。
实验内容中有的给出了参考程序 (主要是前面几个实验) , 更多的需要学生自己编写程序, 所以要求学生必须在每次实验前认真预习本次实验内容,编写好程序方能参加实验。
聞創沟燴鐺險爱氇。
编 者 2000.5.目录第一部分 第二部分 实验一 实验二Turbo C 集成编译环境 C 语言实验4页熟悉 C 语言运行环境(预备实验) 21 页 数据描述与基本操作2 / 13724 页实验三 实验四 实验五 实验六 实验七 实验七 实验八 实验九 实验十 综合实验一 综合实验二 综合实验三 综合实验四 综合实验五 综合实验六 综合实验七 第三部分 第四部分程序分支 循环控制 数组的使用 函数的使用 指针(一) 指针(二) 结构体与共同体 位运算 文件 统计学生成绩 求矩阵鞍点 文件应用 分类与索引 对分法求非线性方程的根 求解雅瑟夫问题 求皇后问题 常用函数表 错误信息30 页 37 页 43 页 53 页 62 页 69 页 73 页 80 页 81 页 86 页 87 页 88 页 90 页 92 页 94 页 96 页 98 页 133 页第一部分Turbo C 集成编译环境Turbo C 集成编译环境是一个集程序编辑、编译、连接、调试为一体的 C 程序开发软件, 它具有速度快、效率高、功能强、使用方便等优点。
北民大c语言练习题
百度文库- 让每个人平等地提升自我!1.数据类型a.输入一个小数点后有多位数字的小数,实现将其保留三位小数,并输出;(3.14159 →3.142,10.123456 →10.123)b.输入一个4位整数,求其得各位数字的平方和;(1234 → 1+4+9+16=30).c.定义字符型变量ch,写出六种给ch赋值字符’A’的代码;d.编写程序输出26组大小写字母;(AaBbCc……….XxYyZz)e.定义浮点型变量f1、f2,为f1赋值10的-30次,为f2赋值10的30次f.定义一个单精度浮点型变量f和一个双精度浮点型变量d,为f和d都赋值3.14159265358979323846264338327950288,输出f和d得值,要求保留20位小数,观察输出结果;g.输入华氏温度求摄氏温度。
转换公式为c=5/9(f-32),输出结果取两位小数。
2.分支结构a.输入三角形得三个边的边长,以此判断能否组成三角形,是什么形状的三角形;(等边三角形、等腰三角形、直角三角形、等腰直角三角形、一般三角形)b.输入一个年份值,判断是否为闰年;c.输入a、b、c三个整型变量,分别使用if语句和条件运算符求出三个数的最大值和最小值;d.输入任意实数,求出其所对应的函数值(调用数学函数库)。
z=e的x次幂(x>10)z=log(x+3) (x>-3)z=sin(x)/((cos(x)+4)e.输入一个成绩,输出此成绩对应的级别;(优、良、中、及格、不及格),要求分别使用if语句和switch语句;f.判断一个字符是否为字母或者数字;g.使用条件运算符实现让c等于a、b中较大的,d等于a、b中较小的,e等于a的绝对值。
h.读入一元二次方程的三个系数,a,b,c,求出各种情况下方程的根,无解或输入数据不正确输出提示信息3.循环结构a.编写程序实现1+2+3+4+......+n,n由用户输入;b.修改程序1,实现1+3+5+7+9+......2*n-1;c.修改程序1,实现2+4+6+8+10+......2*n;d.修改程序2,实现1+1/3+1/5+1/7+......1/(2*n-1);e.修改程序4,实现1-1/3+1/5-1/7+......1/(2*n-1);f.编程实现1*2*3*4*5*.....n;g.编程实现输入n,判断n是不是质数;h.求sum=d+dd+ddd+……+dd...d(n个d),其中d为1-9的数字,d和n输入。
2022年北方民族大学公共课《C语言》科目期末试卷A(有答案)
2022年北方民族大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。
2、C语言源程序的基本单位是________3、在C语言源程序中,一个变量代表【】。
4、在C语言中,用“\”开头的字符序列称为转义字符。
转义字符“\n”的功能是_______;转义字符“\r”的功能是_______。
5、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。
6、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(k=0;k<10;k++,m++)scanf("%d",_______);7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
9、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。
#include <stdio.h>int main(){int a,b;float x,y;char cl,c2;scanf("a=%d b=%d",&.a,&.b);scanf("x=%f y=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}10、下面程序段的运行结果是_______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6. 二维数组 a. 建立一个 5 行 5 列的二维数组,提示用户输入数组的值,分别按 照先行后列和先列后行的顺序输入相同值; 将数组显示到屏幕上, 按矩阵显示;观察两种读入顺序的不同; b. 求出二维数组的主对角线之和、副对角线之和; c. 求出数组的上三角的平均值和下三角的平均值; d. 求出矩阵的周边元素之和; e. 判断矩阵是不是上三角矩阵;判断矩阵是不是下三角矩阵; f. 将矩阵转置,输出转置后的矩阵; g. 建立一个二维数组,将九九乘法表保存到数组中并且输出出来; h. 建立一个二维数组,数组的第一行保存 26 个小写字母,第二行保 存 26 个大写字母; i. 建立二维数组 a[4][3],并为数组输入值,求出数组每行的最大值保 存到数组 b[4]中,求出数组每列的最大值,并保存到数组 c[3]中;
p. 在屏幕上输出以下图形,要求使用循环嵌套实现 1. * * * * * * * * * * * * * * * * * * * * * * * * * 4. 2. * * * * * * * * * * * * * * * 3. 5. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 6. * * * * * * * * * * * * * * * * * * * * * * * * * * * *
所指串中的某个字符相同; 若存在相同,什么也不做,若不同, 则将其插在串的最后。 l. 编 写 函 数 int func(int n) , 函 数 返 回 值 为
sum=1+1+2+1+2+3+1+2+3+4+...+1+2+3+4+...+n m. 编写函数 int func(int a[],int n,int b),将 b 插入到一个已按 降序排好的数组 a 中,a 中现在有 n 个元素,要求插入后的数组 仍然是降序的; n. 请编写函数 void fun(char *str),对字符串,按降序排列。例 如:原来的字符串为 CEAedcab,排序后输出为 edcbaECA。 o. 请编写函数 void fun(char *s,char *t) ,将 s 所指字符串的 正序和反序进行连接,形成一个新串放在 t 所指的数组中。例如: 当 s 串为"ABCD"时,则 t 串的内容应为"ABCDDCBA"。 p.
7. 字符串 a. 输入一个字符串,以回车作为结束标志,并将字符串输出出来; b. 输入一个字符串,再输入一个字符,统计该字符在字符串中出现 的次数; c. 输入一个字符串,统计字符串中字母、数字、空格出现的字数; ; d. 输入一个字符串,再输入一个字符,然后将该字符在字符串出现 的第一个删除掉,输出删除后的字符串; e. 输入一个字符串,再提示用户输入两个整型值 n、m,要求将字符 串第 n 个字符开始,删除 m 个字符,输出删除后的字符串; f. 输入一个字符串,再提示用户输入一个字符 x,和一个整型值 n, 要求 n 小于字符串的长度,将 x 插入到下标为 n 的位置,输出插 入后的字符串; g. 提示用户输入两个字符串保存到字符数组 str1 和 str2 中,再输入 一个整型值 n,将 str2 代表的字符串插入到 str1 中下标为 n 的位 置,输出插入后的字符串; h. 输入一个字符串,将字符串逆序,输出逆序后的字符串; i. 已有两个字符串,分别保存在字符数组 str1[80]和 str2[3]中,统计 在 str1 保存的字符串中 str2 保存的字符串出现了多少次; (str2 中 的字符串长度为 2) j. 输入一个字符串,以回车作为结束标志,然后将字符串中的字符 排序 (依照 ASCII 码的大小由低到高) , 并将排序后的字符串输出
出来;
8. 指针和函数 a. 编 写 函 数 实 现 void func(int a,int b,int c,int *pmax,int *pmin,float *pavg) ,求出 a,b,c 的最大值和最小值、平均值通过指针返回; b. 编写函数 void swap(int *x , int *y) 交换想 x 和 y 指向变量的值; c. 编写函数 int aSum(int *a ,int n) 求出 a 所指向数组的前 n 项的和; d. 编写函数 void cpyStr(char *stra,char *strb) ,将字符串 strb 复制给 stra 所指向的空间; e. 编写函数 void catStr(char *stra,char *strb), 将字符串 strb 连接到 stra 所指向的字符串的后面; f. 编写函数 int cmpStr(char *stra,char *strb),将字符串 strb 和 stra 进 行比较; g. 编写函数 void insert(char *stra,char ch,int n),将将字符 ch 插入到 字符串 stra 中第 n 个位置; h. 编写函数 int lenStr(char s[]),求字符串的长度; i. 编写函数 int findCh(char *str , char ch),找出字符 ch 在字符串 str 中出现的第一个位置;编写函数 void func(char *str),将 str 所指向字符串中的所有大写字母全变成小写字母; j. 编写函数 int func(char *str),将字符串中所有的数字字符删除掉, 并将新生成的字符串的长度作为返回值;比如 “abc123xyz” 过 滤后 “abcxyz”返回值为 6 k. 编写函数 void findCh(char *str , char ch),判断字符 ch 是否与 str
***** ******* ***** *** *
5. 一维数组 a. 建立一个整型数组,在定义数组的时候为数组初始化任意 10 数 字,体会初始化的用法; a) 建立一个长度为 10 的一维整型数组,提示用户为数组输入数 据; b) 求出数组的最大值、平均值; b. 将数组分别使用选择排序法和冒泡排序法排序,并输出排序后的 数组; c. 建立一个字符数组, 将 26 个小写字母保存到数组中, 并逆序输出; d. 用数组保存 fibonacci 数列的前 20 项;
bu 会
பைடு நூலகம்bu 会
g 使用条件运算符实现让 c 等于 a、b 中较大的,d 等于 a、b 中较小 的,e 等于 a 的绝对值。 h 读入一元二次方程的三个系数,a,b,c,求出各种情况下方程的根, 无解或输入数据不正确输出提示信息
不会
3. 循环结构 a. 编写程序实现 1+2+3+4+......+n,n 由用户输入; b. 修改程序 1,实现 1+3+5+7+9+......2*n-1; c. 修改程序 1,实现 2+4+6+8+10+......2*n; d. 修改程序 2,实现 1+1/3+1/5+1/7+......1/(2*n-1); e. 修改程序 4,实现 1-1/3+1/5-1/7+......1/(2*n-1); f. 编程实现 1*2*3*4*5*.....n; g. 编程实现 输入 n,判断 n 是不是质数; h. 求 sum=d+dd+ddd+ …… +dd...d(n 个 d) ,其中 d 为 1-9 的数字, d 和 n 输入。 i. 用一元五角钱兑换人民币 5 分、2 分和 1 分的硬币(要求每种至 少有一个)共 100 枚,请输出每种具体的兑换方案以及共有多少 种方案。 j. 编程输出下三角式的九九乘法表. k. 输出斐波那契数列的前 20 项,该数列的前两项都是 1,以后各项 是前两项之和。 l. 实现 1!+2!+3!.....+n!,n 由用户输入; m. 实现 1+(1+2)+(1+2+3)+(1+2+3+4)+.....+(1+2+3+4...+n) , n 由用户输入; n. 求 1 到 100 之间的偶数之积; o. 输入 n 和 m,求出他们的最大公约数和最小公倍数;
2. 分支结构 a. 输入三角形得三个边的边长,以此判断能否组成三角形,是什么 形状的三角形; (等边三角形、等腰三角形、直角三角形、等腰直 角三角形、一般三角形) b. 输入一个年份值,判断是否为闰年; c. 输入 a、b、c 三个整型变量,分别使用 if 语句和条件运算符求出 三个数的最大值和最小值; d. 输入任意实数,求出其所对应的函数值(调用数学函数库) 。 z=e 的 x 次幂(x>10) z=log(x+3) (x>-3) z=sin(x)/((cos(x)+4) e. 输入一个成绩,输出此成绩对应的级别; (优、良、中、及格、不 及格) ,要求分别使用 if 语句和 switch 语句; f.判断一个字符是否为字母或者数字;
4. 函数调用 a. 编写一个函数,返回一个整数的绝对值.; b. 编写一个函数,判断一个整数是否为素数,如果是则返回 1,否 则返回 0.; c. 编写一个函数,找出一个大于给定整数且紧随这个整数的素数。 d. 通过调用素数函数,实现求出 1000 以内所有素数的和; e. 通过调用素数函数,验证哥德巴赫猜想在 10000 以内有效; f. 编写一个函数,求一个整型数的各位数字的立方和; g. 编写函数 fun 计算并返回分段函数的值: x^2+x+6 x<0 且 x≠-3 0≤x<10 且 x≠2 及 x≠3
9. 算法补充 a. 有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 4 报数) ,凡报到 4 的人退出圈子,问最后留下的是原来第几号的那 位。 (建议用链表实现) b. 读入一个英文文本行,将其中每个单词的第一个字母改成大写, 然后输出此文本行 (这里的“单词”是指由空格隔开的字符串) 。 例如:若输入:“i am a student to take the examination.”, 则应输出:“I Am A Student To Take The Examination.”。 c. 有 n 个整数,使其前面各数顺序向后移 m 个位置,最后 m 个数变 成最前面的 m 个数。 d. 给定 n 个实数,输出平均值,并统计在平均值以下(含平均值) 的实数个数。 e. 将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5 f. 打印出杨辉三角形(要求打印出 10 行) g. 求广义菲玻那契级数的第 n 项。 广义菲玻那契级数的前 n 项为:1, 1,1,3,5,9,17,31,…… h. 例如:若 n = 15,则应输出:The value is: 2209。 i. 在字符串 str 中找出 ASCii 码值最大的字符,将其放在第一个位 置上,并将该字符的原字符向后顺序移动。例如:调用 fun 函数 之前给字 符串输入:ABCDeFGH,调用后 字符串中的内容 为: eABCDFGH。