当前位置:文档之家› C语言第三阶段作业

C语言第三阶段作业

C语言第三阶段作业
C语言第三阶段作业

第三阶段作业--客观题返回上一级

单选题(共20题,每题4分)

1 .在一个C源程序文件中,?若要定义一个只允许在该源文件中所有函数使用的变量,则该变量需要使用的存储类别是______。

A.extern

B.register

C.auto

D.static

参考答案:D

2 .要打开一个已存在的非空文件"file"用于修改,选择正确的语句____。

A.fp=fopen("file", "r");

B.fp=fopen("file", "a+");

C.fp=fopen("file", "w");

D.fp=fopen("file", "r+");

参考答案:D

3 .有以下程序,执行后输出得结果是_____。mian( ){ char *p[10]={“abc”, “aabdfg”, “dcdbe”, “abbd”, “cd”}; printf(“%d\n”,strlen(p[3]));}

A.2

B.3

C.4

D.5

参考答案:C

4 .若有以下定义和语句:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是____。

A.*p

B.a[10]

C.*a

D.a[p-a]

参考答案:B

5 .若有以下定义:char s[20]="programming",*ps=s;则不能代表字符o的表达式是____。

A.ps+2

B.s[2]

C.ps[2]

D.ps+=2,*ps

参考答案:A

6 .有如下说明int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是_____。

A.*p+9

B.*(p+8)

C.*P+=9

D.P+8

参考答案:B

7 .以下可作为函数fopen 中第一个参数的正确格式是______。

A.c:\user\file.txt

C."c:\\user\\file.txt"

D.c:user\file.txt

参考答案:C

8 .当调用函数时,实参是一个数组名,则向函数传递的是_____。

A.数组的长度

B.数组的首地址

C.数组每一个元素的地址

D.数组每个元素中的值

参考答案:B

9 .下列关于#include命令的叙述中,错误的是()。

A.一个#include命令中只能指定一个被包含文件

B.一个#include命令中可以指定多个被包含文件

C.一个被包含文件中又可以包含另一个被包含文件

D.#include命令中,文件名可以用双引号或尖括号括起来

参考答案:B

10 .在c语言中,函数的隐含存储类别是____。

A.auto

B.static

C.extern

D.无存储类别

参考答案:A

11 .在C语言中,形参的缺省存储类型是______。

A.auto

B.register

C.static

D.extern

参考答案:A

12 .已知:int **p;,则变量p是( )。

A.指向int的指针

B.指向指针的指针

C.int型变量

D.以上三种说法均是错误的

参考答案:B

13 .设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为_____。A.EOF

B.非0值

C.0

D.1

参考答案:D

14 .fwirte函数的一般调用形式是_____。

A.fwrite(buffer,count,size,fp);

C.fwrite(fp,count,size,buffer);

D.fwrite(buffer,size,count,fp);

参考答案:D

15 .以下叙述中正确的是_____。

A.全局变量的作用域一定比局部变量的作用域范围大

B.静态(static)类别变量的生存期贯穿于整个程序的运行期间

C.函数的形参都属于全局变量

D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值

参考答案:B

16 .若有定义:#define f(x) (x*x),则执行int y; y=f(4)/f(2+2);后y=_____。

A.2

B.4

C.8

D.16

参考答案:A

17 .已知结构体类型定义和变量说明,下面赋值语句中正确的是_____。struct complex { float re,im; }z;

A.re=10.0;

B.complex.re=10.0;

C.z→re=10.0;

D.z.re=10.0;

参考答案:D

18 .下列关于C语言数据文件的叙述中正确的是_____。

A.文件由ASCII码字符序列组成,C语言只能读写文本文件

B.文件由二进制数据序列组成,C语言只能读写二进制文件

C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件

D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件

参考答案:D

19 .要为读/写操作打开一个字符文件,其正确的打开方式为____。

A.wr

B.r+

C.rb+

D.rw

参考答案:B

20 .若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是_____。A.fopen("A:\user\abc.txt","r")

B.fopen("A:\\user\\abc.txt","r+")

C.fopen("A:\user\abc.txt","rb")

D.fopen("A:\\user\\abc.txt","w")

参考答案:B

判断题(共5题,每题4分)

1 .若定义#define f(x) (x*x),则执行int y; y=f(4)/f(2+2);后y=1。

参考答案:错

2 .变量的指针就是指向该变量指针变量的值。

对错

参考答案:对

3 .一个#include命令中可以指定多个被包含文件。

对错

参考答案:错

4 .在定义结构体变量时可以嵌套定义的。

对错

参考答案:对

5 .C语言中,函数的隐含存储类别是extern

对错

参考答案:对

单选题(共20题,每题4分)

1 .已知结构体类型定义和变量说明,下面赋值语句中正确的是_____。struct complex { float re,im; }z;

A.re=10.0;

B.complex.re=10.0;

C.z→re=10.0;

D.z.re=10.0;

参考答案:D

2 .在一个C源程序文件中,?若要定义一个只允许在该源文件中所有函数使用的变量,则该变量需要使用的存储类别是______。

A.extern

B.register

C.auto

D.static

参考答案:D

3 .fwirte函数的一般调用形式是_____。

A.fwrite(buffer,count,size,fp);

B.fwrite(fp,size,count,buffer);

C.fwrite(fp,count,size,buffer);

D.fwrite(buffer,size,count,fp);

参考答案:D

4 .如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为_______。

A.静态变量

B.动态变量

C.外部变量

D.内部变量

5 .在c语言中,函数的隐含存储类别是____。

A.auto

B.static

C.extern

D.无存储类别

参考答案:A

6 .下列关于C语言数据文件的叙述中正确的是_____。

A.文件由ASCII码字符序列组成,C语言只能读写文本文件

B.文件由二进制数据序列组成,C语言只能读写二进制文件

C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件

D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件

参考答案:D

7 .下列叙述中错误的是______。

A.主函数中定义的变量在整个程序中都是有效的

B.在其它函数中定义的变量在主函数中也不能使用

C.形式参数也是局部变量

D.复合语句中定义的变量只在该复合语句中有效

参考答案:A

8 .下列关于#include命令的叙述中,错误的是()。

A.一个#include命令中只能指定一个被包含文件

B.一个#include命令中可以指定多个被包含文件

C.一个被包含文件中又可以包含另一个被包含文件

D.#include命令中,文件名可以用双引号或尖括号括起来

参考答案:B

9 .有以下程序,执行后输出得结果是_____。mian( ){ char *p[10]={“abc”, “aabdfg”, “dcdbe”, “abbd”, “cd”}; printf(“%d\n”,strlen(p[3]));}

A.2

B.3

C.4

D.5

参考答案:C

10 .已知:int **p;,则变量p是( )。

A.指向int的指针

B.指向指针的指针

C.int型变量

D.以上三种说法均是错误的

参考答案:B

11 .要打开一个已存在的非空文件"file"用于修改,选择正确的语句____。

A.fp=fopen("file", "r");

B.fp=fopen("file", "a+");

C.fp=fopen("file", "w");

12 .当调用函数时,实参是一个数组名,则向函数传递的是_____。

A.数组的长度

B.数组的首地址

C.数组每一个元素的地址

D.数组每个元素中的值

参考答案:B

13 .在C语言中,形参的缺省存储类型是______。

A.auto

B.register

C.static

D.extern

参考答案:A

14 .若有以下定义和语句:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是____。A.*p

B.a[10]

C.*a

D.a[p-a]

参考答案:B

15 .若有定义:#define f(x) (x*x),则执行int y; y=f(4)/f(2+2);后y=_____。

A.2

B.4

C.8

D.16

参考答案:A

16 .已知:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+2 ;则值为3 的表达式是______。

A.*(p++)

B.*p++

C.*++p

D.++*p

参考答案:B

17 .设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为_____。A.EOF

B.非0值

C.0

D.1

参考答案:D

18 .以下可作为函数fopen 中第一个参数的正确格式是______。

A.c:\user\file.txt

B."c:\user\file.txt"

C."c:\\user\\file.txt"

19 .有以下语句,下面描述中正确的是_____。typedef struct S { int g; char h;} T; A.可用S定义结构体变量

B.可用T定义结构体变量

C.S是struct类型的变量

D.T是struct S类型的变量

参考答案:D

20 .要为读/写操作打开一个字符文件,其正确的打开方式为____。

A.wr

B.r+

C.rb+

D.rw

参考答案:B

判断题(共5题,每题4分)

1 .已知char ch[]=“good!!!”;则字符数组ch的长度是7。

对错

参考答案:错

2 .若定义#define f(x) (x*x),则执行int y; y=f(4)/f(2+2);后y=1。

对错

参考答案:错

3 .C语言中,函数的隐含存储类别是extern

对错

参考答案:对

4 .一个#include命令中可以指定多个被包含文件。

对错

参考答案:错

5 .变量的指针就是指向该变量指针变量的值。

对错

参考答案:对

判断题(共5题,每题4分)

1 .在定义结构体变量时可以嵌套定义的。

对错

参考答案:对

2 .C语言中,函数的隐含存储类别是extern

对错

参考答案:对

3 .已知:int **p;,则变量p是指向指针的指针。

对错

4 .free函数只能释放malloc()函数分配的存储空间。对错

参考答案:错

5 .一个#include命令中可以指定多个被包含文件。对错

参考答案:错

第六次作业

习题九 一、选择题 9-1.C语言程序由函数组成。它的。 A.主函数必须在其它函数之前,函数内可以嵌套定义函数 B.主函数可以在其它函数之后,函数内不可以嵌套定义函数 C.主函数必须在其它函数之前,函数内不可以嵌套定义函数 D.主函数必须在其它函数之后,函数内可以嵌套定义函数 9-2.一个C语言程序的基本组成单位是。 A.主程序B.子程序C.函数D.过程 9-3.以下说法中正确的是。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 9-4.已知函数abc的定义为: void abc ( ) { ....... } ?则函数定义中void的含义是。 A.执行函数abc后,函数没有返回值B.执行函数abc后,函数不再返回??C.执行函数abc后,可以返回任意类型D.以上三个答案全是错误的 9-5.在以下对C语言的描述中,正确的是。 A.在C语言中调用函数时,只能将实参的值传递给形参,形参的值不能传递给实参B.C语言函数既可以嵌套定义又可以递归调用 C.函数必须有返回值,否则不能使用函数 D.C语言程序中有调用关系的所有函数都必须放在同一源程序文件中 9-6.以下叙述中错误的是。 A.在C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值 B.在C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容 C.在C语言中,外部变量的隐含类别是自动存储类别 D.在C语言中,函数形参的存储类型是自动(auto)类型的变量 9-7.说明语句"static int i=10;"中"i=10"的含义是。 A.只说明了一个静态变量B.与"auto i=10;"在功能上等价 C.将变量i初始化为10 D.将变量i赋值为10 9-8.C语言中的函数。

C语言实训作业1

《C语言通识教育》实训指导书 (第一次) (2学时) 何天成 2016年月日

前言 C 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要环节,因此要求学生做一定数量的上机实验。本指导书可增强同学上机实验的针对性。整个教学和实验中,采用VC++6.0 作为实验环境,强调学生切实培养动手实践能力,掌握调试程序的方法,通过调试理解C语言程序运行的过程以及C 语言的语法规则,为后续的课程设计,计算机等级考试及其他应用做好充分的准备。 本实验指导书通过大量的实例,循序渐进地引导学生做好各章的实验。共计约14次实训课,其中每一讲内容分1、2两次上课。每个实验内容结构如下: (1)实验学时 (2)实验目的 (2)预习要求 (4)实验内容 (5)实验注意事项 (6)思考题 其中思考题属于扩展应用部分,学生可以根据自己的学习情况选择完成。 在实验之前,要求学生对实验作好预习工作。在实验中,学生根据实验指导中的内容进行验证与总结,然后再去完成实验内容中安排的任务。一般要求准备好相关代码,实验课中最好以调试和讨论为主。 实验结束后,应及时先以电子版的形式填写实验报告,然后再以A4纸打印。第3次实训课上交前2次实训报告,要求源程序要以标准格式打印实验报告上都必须粘贴上每个程序的运行结果截图,并在每个程序的输出截图中添加上自己的姓名/学号/专业等信息,以表示程序执行结果确是自己调试,而不是copy 别人的运行结果。通报告具体内容可根据实验内容和实验要求进行增删。实验报告一般要求包含:(1)实验题目 (2)设计思路或算法分析 (3)流程图 (4)程序源代码 (5)程序运行结果及分析

C语言上机操作实验二

2009——2010(1)C语言程序设计实验 1.从键盘输入一个正整数,若是偶数打印“even”,否则打印“odd”。文件 名为myf21.c 2.从键盘输入两个正整数m,n,判断m能否被n整除,若能输出m和n,否则 打印“NO”。文件名为myf22.c 3.将两个两位数的正整数a、的b合并形成一个整数放在c中。合并的方式是: 将a数的十位和个位数依次放在c数的千位和十位上, b数的十位和个位数依次放在c数的百位和个位上。例如,当输入45,12时,输出 c=4152。文件名为myf23.c 4.输入两个整数153和257,判断是否为“水仙花数”,所谓“水仙花数”是指 一个3位数,其各位数字立方和等于该数本身。若是输出该数,否则输出“NO”。 文件名为myf24.c 5.现编程实现:购买某商品时应付多少款?该商品的单价为12.6元,若购买这 一商品3件以上打8折,3件(包括3件)以下不打折。文件名为myf25.c 6.【动动脑子】若给定三个整型变量a,b,c,现求三个整数的最大值。算法思 想:引入变量max存放最大值,先求前二位数的最大值存放于变量 max中,再求该变量与第三数的最大值,仍存放于该变量中。最后输出该变量。文件名为myf26.c 7.【小游戏】给小学生出一道加法题,做对着输出“Goog!”,否则输出“Try hard!”。算法思想:随机产生一个被加数和一个加数,显示一道加法题,等待学生输入结果,判断其结果是否正确,若正确输出输出“Goog!”,否则输出“Try hard!”。文件名为myf27.c 班级:金属0901/2、冶金0901/2、电信工程0901/2、电子商务0901

c语言作业

提交作业规范: (1)你的每次作业的cpp文件放在文件夹中,文件夹命名:学号+姓名+(第几次),(例如:“2014218899张三(第二次)“) (2)上传到文件夹:偶春生\班级。千万别传错。 注意: (1)每做完一题,请用“file”下的“close workspace”关闭工作区,再重新开始做下一题。(2)如果不能联网,请改网关地址:252或253 (3)开机进入“basis” 第一次上机题目: (1)从键盘上输入四个整数,计算并输出四个数的平均值。 (2)输入球的半径,计算并输出球的体积和表面积。 (3)输入一个三位正整数,分别输出该数的个位、十位和百位。(提示:用%运算符提取数字,如123%10=3,用/运算符移除已提取的数字,如123/10 = 12) (4)请测试++、--、关系和逻辑运算符。 第二次上机题目: (1)平面上有一园C:(x-3)2+(y-4)2= 25;输入点P(x,y)的坐标值,判断P点在园C内(包括园上)还是园C外。 (2)输入一英文字符,如果是大写字符,请输出:“您输入的是大写字符。”,如果是小写字符,请输出:“您输入的是小写字符。”, (3)某人某天开始“三天打鱼,两天晒网”,问该人在以后的第n天是打鱼还是晒网?(4)输入火车的出发时间和到站时间,计算火车的运行时间。(出发时间和到站时间用四位整数表示,如1230表示12点30分,假设火车不跨天运行。) (5)从键盘上输入三个整数,分别存放在变量num1, num2, num3中,编写程序对这三个数进行排序,使得num1 <=num2<=num3。 第三次上机题目: (1)输入十个数,分别计算出其中正数、负数的和。 (2)输出1—100内能被3整除或个位数是3的数。 (3)打印出大写英文字母,每行最多输出十个。 (4)输入十个数,求出其中的最小值。 (5)求出e的值,e = 1+1+1/2!+1/3!+…+1/n! (n取10) 第四次上机题目: (1)输出100—1000之间的质数。 (2)任意输入一个数,输出这个数的所有因子。(如输入12,输出1,2,3,4,6,12) (3)输出1-100间的同构数,所谓同构数是指一个数出现在这个数平方的右侧(如6和25均为同构数)。 (4)求x2+y2=2009的整数解。(提示,x,y的范围在[1,45]之间,用双重循环枚举求解)(5)用嵌套循环打印如下图形:

5-6次C语言上机作业

实验5 函数(1) 【实验题5-1】以下程序的功能:从键盘输入两个数,计算出他们的和,并将结果输出在屏幕上。调试运行程序,观察出现了什么错误,提出两种修改方案。 【实验题5-2】下程序的功能:输出3~1000之的间的素数。请选择合适的内容填入程序的空白处,并调试运行程序。

【实验题5-3】从键盘输入一个整数n,计算n^3,并将结果输出在屏幕上。要求计算n^3用函数实现。 【实验题5-4】从键盘输入一个整数n,计算2n+1与++n之和。要求计算两数之和用函数

实现。 注意写计算表达式的时候3*n之间的乘号不要丢掉,否则会提示:invalid suffix “n” on integer constant. 调用用户自定义函数是只写ifun=fun(n); 就可以了,不要在括号里加上int。Ifun=fun(int n) × 【实验题5-5】编写程序,计算Cmn=n!/(n-m)!m!。要求如下: 1)编写一个函数计算n!; 2)编写主函数,输入n和m, 调用第1)项中的函数完成计算; 3)输出并计算C58、C712的结果。

【实验题6-1】以下程序功能:用已知三角形三边,求三角形面积。但程序有错,请上机调试并改正错误。

【实验题6-2】以下程序运行的结果应该是a=14, b=15,temp=0。在程序空白处填写适当的编译预处理命令。 【实验题6-3】用for循环输出20个0~99之间的随机数。要求没输出五个随机数换一行。 【实验题6-4】从键盘输入一个字母,如果是大写字母就转换成小写字母输出;如果是小写字母就转换成大写字母输出。要求用库函数实现。

第六次c语言作业

第六次课作业 下次课默写交换排序、选择排序和冒泡排序。 习题6-1 题码:章节:数组考查点:一维数组的定义、引用及格式输出难度:2 编写一程序p717.C实现以下功能 输入10个整型数存入一维数组,输出值和下标都为奇数(数组第1个元素的下标为0)的元素及其个数。编程可用素材:printf("Input 10 integers.\n")...、printf("count=...\n"...、 printf("a[...]=...\n"...。 程序的运行效果应类似地如图1所示,图1中的2 45 34 56 78 12 41 55 86 37是从键盘输入的内容。 图1 程序运行效果示例 习题6-2 题码:章节:数组考查点:一维数组定义、输入和输出的掌握,对递推算法的掌握难度:2 编写一程序p725.C实现以下功能 利用数组,求斐波拉契数列的前n(n的范围为:3~20)项,并输出到屏幕上(数和数之间用字符'\t'隔开),斐波拉契公式:f(1)=1,f(2)=1,f(n)=f(n-1)+f(n-2) (n≥3)。编程可用素材:printf("input a data(3--20): ")...。 程序的运行效果应类似地如图1所示,图1中的11是从键盘输入的内容。 图1 程序运行效果示例 习题6-3 题码:章节:数组考查点:一维数组的应用难度:2 编写一程序p718.C实现以下功能 有一递推数列,满足f(0)=0,f(1)=1,f(2)=2, f(n+1)=2f(n)+f(n-1)f(n-2) (n>=2), 编写程序求f(n)的值(n由键盘输入,13>=n>=2)。编程可用素材:printf(“Input n (13>=n>=2): ”)...、printf(“\nf(...)=...\n”...。 程序的运行效果应类似地如图1所示,图1中的10是从键盘输入的内容。 图1 程序运行效果示例 习题6-4 题码:章节:数组考查点:键盘输入技巧的掌握和二维数组的应用,判断条件的设定难度:2 编写一程序p217.C实现以下功能 求任意的一个m×m矩阵的对角线上元素之和,m(2<=m<=20)及矩阵元素从键盘输入(只考虑int型,且不需考虑求和的结果可能超出int型能表示的范围)。编程可用素材:printf("Please input m: ")...、 printf("\nPlease input array:\n")...、printf("\nsum=...\n"...。 程序的运行效果应类似地如图1所示,图1中的5和 1 45 67 235 464 35 6 89 32342 8 347 9346 47 95 746 46 785 436 19434 634 3235 567 24 8465 25 是从键盘输入的内容。

C语言上机作业试题5套含答案

第一次上机作业(2014): 要求: ?独立完成,上机调试通过后上交 ?作业提交邮箱: ?邮件主题命名:班级学号姓名(第1次作业), 例如:电1301班2王鹏(第1次作业) ?以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。 ?程序必须采用缩进格式 1.大写字母转换成小写字母 从键盘输入一个大写英文字母,输出相应的小写字母。 例:输入G 输出g 2.求平方根 输入一个实数x,计算并输出其平方根(保留1 位小数)。 例:输入17 输出The square root of 17.0 is 4.1 3.温度转换 设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32) a)输入华氏温度(实型) b)输出的摄氏温度结果保留两位小数 例:Please input Fahrenheit temperature: 76.8 The corresponding Celsius temperature is 24.89 4. 计算旅途时间 输入二个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 (输入的有效的时间范围是0000 到2359,不需要考虑出发时间晚于到达时间的情况。) 例:输入712 1411 (出发时间是7:12,到达时间是14:11) 输出The train journey time is 6 hours 59 minutes. 5. 数字加密 输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。 例:输入1257 输出The encrypted number is 4601 思考题:你能否编程找出谁做的好事? 有四位同学中的一位做了好事,不留名,表扬信来了之后,校长问这四位是谁做的好事。 ?A说:不是我。 ?B说:是C。 ?C说:是D。 ?D说:他胡说。 已知三个人说的是真话,一个人说的是假话。现在要根据这些信息,找出做了好事的人。 第二次上机作业(2014): 要求: ?独立完成,程序必须采用缩进格式,上机调试通过后上交

C语言上机作业题及答案

实验一: 1、已知华氏温度,根据转换公式计算相应的摄氏温度。 摄氏温度= 5*(华氏温度-32)/9 2.任意输入一个有五位数字的正整数,逆序输出每一数位上的数字。 如: 输入 12345 输出 5 4 3 2 1 #include"stdio.h" main() { double t,T; printf ("已知华氏温度,根据转换公式计算相应的摄氏温度"); scanf ("%lf",&t); T=(5*(t-32)/9); printf ("摄氏温度=%lf",T); } #include"stdio.h" main() { int value,a,b,c,d,e,m,n,h; printf ("任意输入一个有五位数字的正整数,逆序输出每一数位上的数字"); scanf ("%d",&value); a=value/10000; m=value%10000; b=m/1000; n=m%1000; c=n/100; h=n%100; d=h/10; e=h%10; printf ("%d%d%d%d%d",e,d,c,b,a); } 实验二: 1.一个成年人的身高与其父母的身高密切相关,根据以下人体标准身高预测公式计算自己或某个同学的身高,并跟实际身高比较,给出结论是否符合该公式(误

差在3厘米范围内即视为相符)。 男性身高=(父亲身高+母亲身高)×1.08÷2(厘米) 女性身高=(父亲身高×0.923+母亲身高)÷2(厘米) 2.从键盘上输入税前收入,根据以下公式及规则,计算个人所得税税额并输出。应纳个人所得税税额=(税前收入—起征点额度)*适用税率—速算扣除数 其中,起征点额度是3500元,其他如下: 应纳税所得额税率速算扣除数 不超过1500元的部分 3% 0 超过1500元至4500元的部分 10% 105 超过4500元至9000元的部分 20% 555 超过9000元至35000元的部分 25% 1005 超过35000元至55000元的部分 30% 2755 超过55000元至80000元的部分 35% 5505 超过80000的部分 45% 13505 如:某人月收入5000元,则应纳个人所得税税额为(5000-3500)* 10% - 105 = 45元。 #include #include main() { float A,a,H,h,b; printf("父亲身高(厘米)\n"); scanf("%f",&A); printf("母亲身高(厘米)\n"); scanf("%f",&a); printf("孩子实际身高(厘米)\n"); scanf("%f",&H); printf("请选择孩子性别:女=0,男=1\n"); scanf("%f",&b); if(b) h=(A+a)*1.08/2; else h=(A*0.923+a)/2; if(fabs(H-h)<=3) printf("实际身高符合该公式\n"); else

c语言第六次作业

第五题 #include int main () { int a[10][10],i,j,n; printf("Input n:"); scanf("%d",&n); printf("* "); for(j=1;j<=n;j++) { a[0][j]=j; printf("%d ",a[0][j]); } printf("\n"); for(i=1;i<=n;i++) { a[i][0]=i; printf("%d ",a[i][0]); for(j=1;j<=i;j++) { a[i][j]=a[i][0]*a[0][j]; printf("%d ",a[i][j]); } printf("\n"); } return 0; } 第二题 #include int main(void) { int a[12]={31,0,31,30,31,30,31,31,30,31,30,31};

int year,month,day,sum=0,i; printf("Input year,month,day:"); scanf("%d%d%d",&year,&month,&day); if(year%4==0&&year%100!=0||year%400==0) a[1]=29; else a[1]=28; for(i=0;i int main () { int n,i,j,a[6][6],index1,index2,index3,max; printf("Input n:"); scanf("%d",&n); printf("Input arry:"); for(i=0;i=max)

C语言作业2

期待的输出时间限制内存限制#include main() { int a,b,c,q,e,f,g,h,i,j,k,m,n,p,x,y,z; scanf("%1d",&a); scanf("%1d%1d%1d%1d%1d",&b,&c,&q,&e,&f); scanf("%1d%1d%1d%1d%1d",&g,&h,&i,&j,&k); x=a+c+e+g+i+k; y=b+q+f+h+j;

n=m-1; z=n%10; p=9-z; printf("%d\n",p); } H2:数制转换(选作) 成绩: 5 / 折扣: 0.8 我们通常使用的都是十进制的数字,但其实在生活中也经常会使用其它进制。 这个题目会给你两个不同的数字,它们不属于同一进制,要求你计算出当它们分别处于何种进制之中时,两个数字相等。譬如12 和 5 ,在十进制下它们是不等的,但若12 使用 3 进制而5 使用六进制或十进制时,它们的值就是相等的。因此只要选择合适的进制,12 和5 就可以是相等的。 程序的输入是两个数字M 和N( 其十进制的值不超过1000000000) ,它们的进制在2~36 之间。对于十以下的数字,用0~9 表示,而十以上的数字,则使用大写的A~Z 表示。 求出分别在2~36 哪种进制下M 和N 相等。若相等则输出相应的进制,若不等则输出错误信息。当然了,对于多种可能成立的情况,找出符合要求的进制最小的一组就行了。信息的格式见测试用例。 测试输入期待的输出 制 #include"string.h" #include"stdio.h"

{ char a[N],b[N],d[N],e[N],d0[N]; int i,j,o,r,g,h,w,t,l,k,max1,max2; double p[N],q[N]={0},u[N],v[N]={0},c[N],f[N],m,n; for(i=0;i='\x30') c[i]=b[i]-'0'; if(b[i]<='\x5A'&&b[i]>='\x41') c[i]=b[i]-'7'; } for(i=0;i='\x30') f[i]=e[i]-'0'; if(e[i]<='\x5A'&&e[i]>='\x41') f[i]=e[i]-'7'; } max1=c[0]; for(i=1;i

c语言第六次作业解析

第六次作业:指针 (以下题目如无特殊声明,请使用指针技术实现,尽量不要使用数组作为形参,也尽量避免使用数组下标引用数组元素) 1.数组元素循环移位 有n个整数,使前面的各整数顺序向后移动m个位置,后面的m个整数则变成最前面的m个数。写一函数实现以上功能。 在主函数中输入n及n个整数,输入m (m void main() { void inv(int *p,int n,int m); int n,m,a[20],*p; printf("please input n="); scanf("%d",&n); printf("please input %d numbers:",n); p=a; while(p

2. 矩阵元素的排序 将一个5×5的整数型矩阵中各元素重新排序。排序规则为,矩阵元素按照从左到右,从上到下的顺序依次递增,即 4,41,10,14,03,02,01,00,0.......a a a a a a a a ≤≤≤≤≤≤≤。 要求编写一个函数实现上述排序功能。 在主函数中输入该矩阵,调用编写的上述函数,然后输出排序后的矩阵。 #include void main() { void inv(int (*x)[5]); int i,j,a[5][5]; int (*p)[5]; printf("please input an 5*5 array:\n"); p=a; for(i=0;i<5;i++) for(j=0;j<5;j++) scanf("%d",*(p+i)+j); inv(p); printf("the new array:\n"); for(i=0;i<5;i++) { for(j=0;j<5;j++) printf("%4d",*(*(p+i)+j)); putchar('\n'); }

扬州大学C语言上机作业1-9整理

答案仅供参考 实验一 4.设计main函数实现从键盘上输入两个整型变量a、b的值,交换它们的值并输出。#include void main() { int a,b,c; printf("enter first integer : "); scanf("%d",&a); printf("enter second integer : "); scanf("%d",&b); c=a; a=b; b=c; printf("%d,%d\n",a,b); getch(); } 5.设计main函数实现从键盘上输入两个整型变量a、b的值,并将b的值加入到a中,输出a的值。 #include void main() { int a,b,c; printf("enter first integer : "); scanf("%d",&a); printf("enter second integer : "); scanf("%d",&b); c=a+b; a=c; printf("a=%d,b=%d\n",a,b); getch(); } 6.从键盘输入整数x的值,根据公式y=x3+3x2+x-10求y的值,输出x和y的值。 #include void main() { int x,y; printf("enter first integer : "); scanf("%d",&x); y=x*x*x+3*x*x+x-10;

printf("x=%d,y=%d\n",x,y); getch(); } 实验二 1.编写程序,从键盘上输入一个整数(例如560)表示分钟,将其换算成用小时和分钟表示,然后输出至屏幕。 #include void main() { int a,b,hour,min; printf("enter first integer : "); scanf("%d",&a); b=60; hour=a/b; min=a%b; printf("hour=%d,min=%d\n",hour,min); getch(); } 2.编写程序,输入两个整数(例如1500和350),求出它们的商和余数并进行输出。 #include void main() { int a,b,c,d; a=1500,b=350; c=a/b; d=a%b; printf("%d,%d",c,d); getch(); } 3.编写程序,读入3个整数给分别变量a,b,c,然后将a,b,c的值输出到屏幕,再交换它们中的数值,把a中原来的值给b,把b中原来的值赋给c,把c中原来的值赋给a,然后再次输出a,b,c的值到屏幕。 #include void main() { int a,b,c,d; printf("enter first integer : "); scanf("%d",&a);

C语言作业2

H1:计算通用产品代码(UPC)的校验位(选作) 许多年来,货物生产商都会把超市售卖的每件商品上放置一个条码。这种被称为通用产品代码(Universal Product Code,缩写UPC)的条码可以识别生产商和产品。超市可以通过扫描产品上的条码来确定支付此项商品的费用。每一个条码由十二位数字构成,通常这些数字会显示在条码下面。例如,包装为26盎司的Morton牌碘化盐所用条码下的数字是:0 24600 01003 0 第一个数字表示商品的种类(0表示大部分的食品杂货,2表示需要称量的货品,3表示药品或和健康相关的商品,而5表示优惠券)。接下来的一组五位数字用来识别生产商。而第二组五位数字则用来区分产品类型(其中包括包装尺寸)。最后一位数字是“校验位”,它可以帮助鉴别先前数字中的错误。如果条码扫描出现错误,那么前十一位数字和最后一位数字可能会不一致,而超市扫描机也会拒绝整个条码。 下面是一种计算校验位的方法:首先把第一位、第三位、第五位、第七位、第九位和第十一位数字相加。然后把第二位、第四位、第六位、第八位和第十位数字相加。接着把第一次加法结果乘以3后再加上第二次加法的结果。随后,再把上述结果减去1。减法后的结果除以10取余数。最后,用9减去上一步骤中得到的余数。现在以Morton碘盐为例,第一组数字的加法是0+4+0+0+0+3=7,而第二组数字的加法是2+6+0+1+0=9。把第一组加法值乘以3后再加上第二组加法值得到的结果是30。再减去1,结果变为29。再把这个值除以10取余数为9。9在减去余数结果9,最终值为0 输入 每次输入三行数据,第一行是UPC的第一位数字,第二行是UPC的第一组五位数字,第三行是UPC的第二组五位数字。 输出 UPC的校验位 页脚内容1

C语言上机作业

《程序设计基础—C程序实验》 说明: 实验1和实验2均为电子实验报告,后面8个实验是纸制实验报告。 实验1 计算机基本操作 实验目的 ⑴熟悉计算机,能够正确进行开、关机操作。 ⑵熟悉键盘,掌握键盘上所有字符的输入,掌握正确的指法,能够进行中、英文切换。 ⑶理解操作系统概念,掌握Windows XP的基本操作,能够利用“控制面板”进行一些参数的设置。 ⑷知道“回收站”的功能,学会有关文件、文件夹的基本操作。 ⑸学会在计算机上搜索或查找相关的文件或文件夹,掌握通配符的使用。 实验内容 ⑴熟悉上机实验的计算机,熟悉键盘,学会中、英文输入方式的转换。 ⑵学会用正确的指法进行输入,知道键盘上所有字符的输入。 ⑶利用“控制面板”修改系统时间、桌面背景、鼠标属性。 ⑷在桌面上新建一个文件夹,该文件夹以学生自己的名字+班级+学号的后3位命名。 ⑸用文本方式或Word文档,写一段字数不少于300字的自我介绍,以1.doc命名并保存到上述文件夹中。 ⑹将上述文件夹复制到ftp://10.10.9.222上。

实验2 常用软件的基本操作 实验目的 ⑴了解Word功能,掌握Word的基本操作,包括页眉/页脚的设置、分栏、页面设置、添加底纹等。 ⑵学会文件的保存与打开、打印预览、段落的间隔、首字符位置改变等,能够在Word中插入图片、表格、艺术字、特殊符号等。 ⑶了解Excel的功能,掌握Excel的基本操作,包括单元格属性的设置、数字的几种填充形式、单元格的合并与恢复、边框的设置等。 ⑷掌握Excel的基本公式的使用,能够用公式进行基本计算。掌握Excel中的图形制作方法,能够根据表格做出图形。 实验内容 ⑴将ftp上自己文件夹中的1.doc文件复制到桌面上,然后做如下处理: ①将标题“自我介绍”居中; ②将文章中第二段的内容进行分栏,要求中间有分割线; ③插入一个4行4列的表格,内容为学号、姓名、某门课的成绩; ④任意插入一张图片; ⑤在文章中的任意位置加底纹。 将做好的文档以2.doc命名并保存。 ⑵用Excel建立如下表格: 学生的总成绩 学号姓名语文数学英语计算机总分平均分 09001 张辉78 90 80 92 09003 万明84 87 83 90 09004 杜芳鸣91 80 78 95 09006 徐好芳87 85 80 85 09007 江珍80 67 78 70 09008 王豪78 73 85 80 09009 王小盟75 89 94 88 09010 胡甜甜82 93 88 95 09012 卫晓88 97 65 72 并对表格进行如下操作: ①利用公式计算学生的总分、平均分; ②将表中所有的数据选择居中; ③利用该表格中的姓名和计算机的成绩做簇状图形。 将做好的Excel表以2.xls命名并保存。 将本次实验的两个文件上传到ftp上自己的文件夹中。

川大c语言第一次作业

1.运行如下程序,并改正错误。 /*Hello,World!的变形程序*/ #include int main( ) { printf("________________\n| Hello, |\n| World! |\n(\\(\\ /\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n(^?^)/\no_(\")(\")\n ");\\这里连成一排的 return 0; } 结果如下 2.用printf函数输出如下字符串:"abc\t123\r456\nabc\b123\\45",并分析输出结果。 " 解释: \t代表水平制表,每8个字符为一个输出区,所以首先是abc 123 \r代表将光标放回到行首,打出456将刚才的abc覆盖,现在是456 123 \n是换行 \b是退格,所以打出第二排的abc后退格成ab再打印成ab123, \\即代表\, 所以结果如上图。 3.将2147483648,(short)32768,-1用printf函数输出为十进制、八进制和十六进制形式, 并分析输出结果。 由于2147483648是2^31,所以转换为二进制是100000……0000(31个0),对于32bit的电

脑,ing最大是2^31-1,所以2^31好像是被认为成了最小值了,即-2^31 然后,又二进制转化为8进制,3位3位的变,转16进制则4位4位的变,结果如下 对于(short)32668,还是先转换为二进制111 111 110 011 100,转化为8进制是77634,111 1111 1001 1100转化为16进制是7f9c,结果如下 对于-1,转化为二进制是2^31-1,即为11111……11111(32个1),转化为8进制时,\o代表的是无符号的8进制数,32%3=2,所以第一位是3,后面是7,结果是37777777777, 由于32%4=0,所以是8个f,结果如下图 4.写程序把一个4位整数(比如qbsg)转换成另一个形式(sqgb)。 #include int main(int argc, char *argv[]) { int a,q,b,s,g,px ; printf("请输入一个正的4位数"); scanf("%d",&a); q=a/1000; b=(a-q*1000)/100; s=(a-q*1000-b*100)/10; g=(a-q*1000-b*100-s*10); px=1000*s+100*q+10*g+b; printf("转换结果是:%d",px);

福建师范大学C语言第一次作业及答案

编写程序: 1.定义一个Point类来处理三维点points(x,y,z).该类有一默认的constructor,一copy constructor, 一negate()成员函数将point的x,y和z值各乘-1, 一norm()成员函数返回该点到原点(0,0,0)的距离,一个print()成员函数显示x,y,和z的值。 #include #include using namespace std; class Point{ private: double x,y,z; double distance; public: Point(double newX,double newY,double newZ){ x=newX;y=newY;z=newZ; distance=sqrt(x*x+y*y+z*z); } Point(Point &p){ x=p.x;y=p.y;z=p.z; distance=p.distance; } void negate(){ x*=-1;y*=-1;z*=-1; } double norm(){ return distance; } void print(){ cout<<"x="<

C语言第7次作业

单选题: 1、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为________。 A.a < > 0 B.!a C.a=0 D.a!=0 学生答案: C 参考答案: D 2、若变量都已经说明,则以下程序段输出为( ) a=10;b=50;c=30; if (a > b) a=b; b=c;c=a; printf("a=%db=%dc=%d\n",a,b,c); A.a=10 b=50 c=10 B.a=10 b=30 c=10 C.a=50 b=30 c=10 D.a=50 b=30 c=50 学生答案: C 参考答案: B 3、以下程序的输出结果是 main() { int a= -1,b=1; if((++a < 0)&& ! (b-- < =0)) printf("%d %d\n",a,b); else printf("%d %d\n",b,a); } A.-1 1 B.0 1 C.1 0 D.0 0 学生答案: B 参考答案: C 4、若执行下面的程序从键盘输入3和4,则输出是_______ main() { int a,b,s; scanf("%d%d",&a,&b); s=a; if (a < b) s=b; s=s*s; printf("%d\n",s); } A.14

B.16 C.18 D.20 学生答案: C 参考答案: B 5、下面的程序是______ main() { int x=3,y=0,z=0; if (x==y+z) printf("****"); else printf("####"); } A.有语法错误不能过通过编译 B.输出**** C.可能通过编译,但是不能通过连接,因而不能运行 D.输出#### 学生答案: C 参考答案: D 6、请读程序: main() { float x,y; scanf("%f",&x); if(x < 0.0) y=0.0 else if((x < 5.0)&&(x!=2.0)) y=1.0/(x+2.0); else if( x < 10.0) y=1.0/x; else y=10.0; printf("%f\n",y); } 若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是 A.0.000000 B.0.250000 C.0.500000 D.1.000000 学生答案: B 参考答案: C 7、执行下面语句后的输出为( ) int i= -1; if (i < =0)printf("****\n") else printf("%%%%\n") A.**** B.%%%% C.%%%%C D.有语法错,不能执行 学生答案: B

7~8次C语言上机作业

实验7 数组(1) 【实验题7-1】此程序的功能:给数组元素赋值并进行输出。但程序中有错误,请查找原因,并调试程序以实现程序功能。 【实验题7-2】以下程序的功能:求整型数组中元素的最大值及其下标。请选择合适的内容填入程序中空白处。 【实验题7-3】以下程序的功能:把整型数组里的元素按逆序进行排序并输出。请选择合适的内容填入程序中空白处。 【实验题7-4】编写一个程序,定义一个有五个元素的一维数组,从键盘对该数组的元素进行赋值后再显示在屏幕上。 【实验题7-5】编写程序对整型数组iA的各元素进行从大到小排序。 【实验题7-6】在数组iA和数组iB中分别存放了na和nb个由小到大的有序数。编写程序,完成把两个数组中的元素按从小到大的顺序归并存放在数组iC中。 【实验题7-7】假设数组iA中的元素按由小到大的顺序存放。编写程序把数组iA中相同的元素删除至一个,然后按照每行六个元素的形式输出数组iA中的各个元素值。 【实验题7-8】在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素为该二维数组的一个鞍点。编写程序要求从键盘输入一个二维数组,当鞍点存在时,把鞍点找出来。 #include #define M 3 #define N 4 int main(){ int a[M][N],i,j,k; printf("\n请输入二维数组的数据:\n"); for(i=0;i for(j=0;j scanf("%d",&a[i][j]); for(i=0;i for(j=0;j

printf("M",a[i][j]); printf("\n"); } for(i=0;i k=0; for(j=1;j if(a[i][j]>a[i][k]) k=j; for(j=0;j if(a[j][k] break; if(j==M) printf("%d,%d,%d\n",a[i][k],i,k); } return 0; } 上面这个题代码运行不了,可又找不到问题所在,头疼!!! 实验8 数组(2) 【实验题8-1】此程序的功能:过滤字符数组中数字并进行输出。但程序中有错误,请查找原因,并调试程序以实现程序功能。 【实验题8-2】此程序的功能:统计字符数组中出现字符“s”的次数,并进行输出。但程序中有错误,请查找原因,并调试程序以实现程序功能。 【实验题8-3】以下程序的功能:连续输入一批“#”结束的字符串,遇“##”则全部结束,统计并输出每个字符串的有效长度。请选择适当的内容填入空白处。 【实验题8-4】

相关主题
文本预览
相关文档 最新文档