第二次C语言作业

合集下载

C语言 第2次作业

C语言 第2次作业

1 .C语言中规定函数的返回值的类型是由()。

A.return语句中的表达式类型所决定B.调用该函数时系统临时决定C.调用该函数时的主调用函数类型所决定D.在定义该函数时所指定的函数类型所决定参考答案:D2 .以下不能正确进行字符串赋初值的语句是____。

A.char str[5]="good“B.! char str[]=goodC.! char *str=goodD.! char str[5]={'g','o','o','d'}!参考答案:A3 .C语言中_______。

A.能使用do-while语句构成的循环B.do-while语句构成的循环必须用break语句才能退出C.do-while语句构成的循环,当while语句中的表达式为非零时结束循环D.do-while语句构成的循环,当while语句中的表达式值小于零时结束循环参考答案:A4 .以下选项中,与k=n++完全等价的表达式是_____。

A.k=n,n=n+1B.n=n+1,k=nC.k=++nD.k+=n+1参考答案:A5 .有定义语句:int b;char c[10]; ,则正确的输入语句是_____。

A.scanf("%d%s",&b,&c);B.scanf("%d%s",&b,c);C.scanf("%d%s",b,c);D.scanf("%d%s",b,&c);参考答案:B6 .若有定义:int aa[8];则以下表达式中不能代表数组元aa[1]的地址的是_____。

A.&aa[0]+1B.&aa[1]C.&aa[0]++D.aa+1参考答案:D7 .若i 、j 已定义为int 型,则以下程序段中语句printf( “%d ”,i*j); 的执行次数是_____。

C语言第一次和第二次作业答案

C语言第一次和第二次作业答案

第一章 C 语言概述1.1 单项选择题1.二进制语言是属于()①面向机器语言②面向问题语言③面向过程语言④面向汇编语言「解」人们研制了许许多多计算机程序设计语言,其中二进制语言直接来自计算机的指令系统,与具体计算机紧密相关,所以是一种面向机器语言。

面向问题语言是为了易于描述和求解某类特定领域的问题而专门设计的一种非过程语言。

面向过程语言是一种能方便描述算法过程的计算机程序设计语言。

有汇编语言,但没有面向汇编语言。

汇编语言也是一种面向机器的语言,与机器语言比较,汇编语言用有助于记忆的符号来代表二进制代码。

所以解答是①。

2.下列语言中不属于面向过程的语言是()①高级语言②低级语言③C 语言④PASCAL 语言「解」C 语言和PASCAL 等程序设计语言都是高级语言,它们用于描述复杂加工的处理过程,所以也称它们是面向过程语言。

低级语言是指机器语言和汇编语言,低级语言是面向机器的语言,而不是面向问题的语言。

所以解答是②。

3.下列字符中属于键盘符号的是()①\ ②\n ③\t ④\b「解」键盘符号是指键盘上有标记,并能在显示器上直接以其标记字样显示的字符。

有许多键盘上有标记的符号,它们不是用于直接显示的,键入这种字符用于表示特定的意义,如常用的回车符。

为了能让C 程序标记这种符号,程序采用转义字符的方式书写这种字符。

如'\n'、'\t' 、'\b'都不是键盘字符,在C 语言中,它们都得用转义字符来表达。

只有字符\才是键盘字符。

所以解答是①。

但在C程序中,反斜杠字符\已特别用作转义字符的引导符,它也得用转义字符的表达形式书写,将它写成‘\\’。

4.下列字符列中,不是用来表达转义字符是()①\\ ②\' ③074 ④\0「解」转义字符有三种书写形式:反斜杠字符后接上某个规定的字符;反斜杠字符后接上13 个八进制数字符;反斜社字符和字符X 之后接上1 至2 个十六进制数字符。

C语言第二次作业PTA

C语言第二次作业PTA

x=x/16; j++; i=j; if(x>0) f(x, p); *(p+(i-j))=q; j--; } 4-7 递归计算 P 函数
(15 分)
本题要求实现下列函数 P(n,x)P(n,x)的计算,其函数定义如下:
函数接口定义:
double P( int n, double x );
其中 n 是用户传入的非负整数,x 是双精度浮点数。函数 P 返回 P(n,x)P(nຫໍສະໝຸດ x)函数的相裁判测试程序样例:
#include <stdio.h>
int getTreasure(int *pBucket, int x, int y);
int main(){ int bucket,total; bucket = total = 0; scanf("%d",&total); for (int i=0; i<total; i++) { int x,y; x = y = 0; scanf("%d%d", &x, &y); int flag = getTreasure(&bucket, x, y);
输入样例:
Hello World!
输出样例:
!dlroW olleH
void f( char *p )
{
// p 指向字符串头部
char *s=p;
// q 指向字符串尾部
char *q = s ;
while(*q)
q++;
q -- ;
// 交换并移动指针,直到 p 和 q 交叉
while(q > s)
注意:财宝数量、坐标 x、坐标 y 都是 int 类型范围内的非负整数,在同一个位置可以 重复寻找并获得财宝。

C语言 课后作业题

C语言 课后作业题

C语言作业题【输出形式】用户在下一行显示输出结果【样例输入】3.47【样例输出】3【样例说明】与输入值3.47接近的整数为3和4,3.47比3.5小,舍掉小数部分,结果为3。

【评分标准】结果完全正确得20分,每个测试点4分。

提交程序名为:c0104.c。

当前编程题:第一次作业--- 计算空格换行个数5. 【问题描述】编写一程序,分别计算所输入的字符串中空格,换行符的个数。

【输入形式】输入可以是键盘上的任意字符。

【输出形式】分别输出空格,换行符的个数,输出的结果一行显示,数字之间以空格格开。

【输入样例】bb ss pp=fz【输出样例】2 1【样例说明】字符b与s之间有一个空格,s与p之间有一个空格,p与f之间有一个换行。

【评分标准】结果完全正确得20分,每个测试点4分。

提交程序名为:c0105.c。

当前编程题:第一次作业--- 整数组合(选做题)6. 【问题描述】假设unsigned short类型占16位,x、y、z都是short类型。

编写一程序,从键盘输入x,y 的值(十进制形式),然后将x的高8位作为z的高8位,y的高8位作为z的低8位,最后输出z的值(十进制形式)。

【输入形式】以十进制形式输入x和y的值,以空格隔开。

【输出形式】以十进制形式在新的一行上输出z值。

【输入样例】840 2177【输出样例】776【样例说明】840的二进制形式为:0000 0011 0100 10002177的二进制形式为:0000 1000 1000 0001将840的高8位作为结果的高8位,2177的高8位作为结果的低8位,所以结果为:0000 0011 0000 1000,即十进制形式为:776【评分标准】结果完全正确得20分,每个测试点4分。

提交程序名为:c0106.c。

当前编程题:第二次作业--- 数字排序1. 【问题描述】编写一个程序,将输入的三个数从小到大排列出来。

【输入形式】用户在第一行输入三个数字,每个数字用空格分开。

国家开放大学C语言程序设计A第二次形考任务及答案

国家开放大学C语言程序设计A第二次形考任务及答案

一、选择题共20分,每小题2分当处理特定问题时的循环次数已知时,通常采用的语句是;a. forb. whilec. do-whiled. switch题目2在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成的语句是;a. forb. ifc. dod. while题目3for语句能够被改写成的语句是;a. 复合b. ifc. switchd. while题目4下面循环语句执行结束后输出的i值为;forint i=0; i<n; i++ ifi>n/2 {cout<<i<<endl; break;}a. n/2b. n/2+1c. n/2-1d. n-1题目5在下面循环语句中,内层循环体S语句的执行总次数为; forint i=0; i<n; i++forint j=i; j<n; j++ S;a. n2b. n+1/2c. nn-1/2d. nn+1/2题目6在下面的do循环语句中,其循环体被执行的次数为; int i=0; do i++; whileii<10;a. 4b. 3c. 5d. 2题目7在下面的一维数组定义中,有语法错误的选项是;a. int a={1,2,3};b. int a10={0};c. int a;d. int a5;题目8在下面的二维数组定义中,语法正确的选项是;a. int a5;b. int a5;c. int a3={{1,3,5},{2}};d. int a10;题目9假定一个二维数组的定义语句为“int a34={{3,4},{2,8,6}};”,则元素a11的值为;a. 2b. 4c. 6d. 8题目10假定一个二维数组的定义语句为“int a34={{3,4},{2,8,6}};”,则元素a21的值为;a. 0b. 4c. 8d. 6二、判断题共20分,每小题1分;叙述正确则回答“是”,否则回答“否”题目11在执行“typedef int DataType;”语句后,标识符DataType与保留字int具有完全相同的含义和作用; 对题目12在switch语句中,每个case和冒号之间的表达式只能是常量; 对题目13为了结束本层循环类语句或switch语句的执行过程,在语句体中需要使用break语句; 对题目14在程序中执行到break语句时,将结束所在函数的执行过程,返回到调用该函数的位置;错题目15在程序执行完成任一个函数调用后,将结束整个程序的执行过程,返回到操作系统或C语言集成开发环境界面窗口; 错题目16假定一维数组的定义为“char a8;”,则该数组所含元素的个数大于8; 错题目17假定二维数组的定义为“int a35;”,则该数组所占存储空间的字节数为60; 对题目18假定二维数组的定义为“char aMN;”,则该数组所含元素的个数为M+N;错题目19假定二维数组的定义为“double aMN;”,则每个数组元素的行下标取值范围在0~M-1之间; 对题目20假定二维数组的定义为“double aMN;”,则每个数组元素的列下标取值范围在0~N之间;错题目21存储一个空字符串需要占用0个字节的存储空间; 错题目22使用“typedef char BB1050;”语句定义标识符BB为含有10行50列的二维字符数组类型; 对题目23存储字符'a'需要占用1个字节的存储空间; 对题目24空字符串的长度为1; 错题目25字符串"a:\\xxk\\数据"的长度为13; 错题目26为了存储一个长度为n的字符串,所使用的字符数组的长度至少为n+1; 对题目27strcmp函数用于进行两个字符串之间的比较; 对题目28strcpy函数用于把一个字符串拷贝到另一个字符数组空间中; 对题目29一个二维字符数组a1020能够最多存储9个字符串; 错题目30一个二维字符数组a1020能够存储的每个字符串的长度不超过20; 错三、填空题:写出下列每个程序运行后的输出结果共40分,每小题4分题目31include<stdio.h>void main{int x=5;switch2x-3 {case 4: printf"%d ",x;case 7: printf"%d ",2x+1;case 10: printf"%d ",3x-1; break;default: printf"%s","default\n";}}11 14题目32include<stdio.h>void main {int i,s=0;fori=1;i<=5;i++ s+=ii;printf"s=%d\n",s;}s=55题目33include<stdio.h>void main {int i, s1=0, s2=0;fori=0;i<10;i++ifi%2 s1+=i; else s2+=i;printf"%d %d\n",s1,s2;}25 20题目34include<stdio.h>void main {int n=6,y=1;whilen y=n--;printf"y=%d\n",y;}y=720题目35include<stdio.h>const int M=20;void main{int i,c2,c3,c5;c2=c3=c5=0;fori=1; i<=M; i++ {ifi%2==0 c2++;ifi%3==0 c3++;ifi%5==0 c5++;}printf"%d %d %d\n",c2,c3,c5;}10 6 4题目36include<stdio.h>void main{int i,s;fori=1,s=0;i<10;i++ {ifi%3==0 continue;s+=i;}printf"%d\n",s;}27题目37include<stdio.h>void main {int a8={12,39,26,41,55,63,72,40};int i, i1=0, i2=0;fori=0;i<8;i++ifai%2==1 i1++; else i2++;printf"%d %d\n",i1,i2;}4 4题目38include<stdio.h>int a10={4,5,6,15,20,13,12,7,8,9};void main{int i,s4=0;fori=0; i<10; i++ {switchai%4 {case 0: s0+=ai;break;case 1: s1+=ai;break;case 2: s2+=ai;break;default: s3+=ai;break;}}fori=0; i<4; i++ printf"%d ",si;}44 27 6 22题目39include<stdio.h>void main {char a="abcdbfbgacd";int i1=0, i2=0, i=0;whileai {ifai=='a' i1++;ifai=='b' i2++;i++;}printf"%d %d %d\n",i1,i2,i;}2 3 11题目40include<stdio.h>void main {int a34={{1,2,7,8},{5,6,10,6},{9,12,3,4}};int m=a00;int i,j;fori=0; i<3; i++forj=0; j<4; j++ifaij>m m=aij;printf"%d\n",m;}12四、简答题:根据下列每个题目要求编写程序共20分,每小题4分题目41编写一个函数,函数头格式为“double Meandouble aMN,int m,int n”,要求返回二维数组amn 中所有元素的平均值,假定在计算过程中采用变量v存放平均值;double Meandouble aMN,int m,int n{int i,j;double v=0.0;fori=0; i<m; i++forj=0; j<n; j++ v+=aij;v/=mn;return v;}题目42编写一个递归函数“int FFint a, int n”,求出数组a中所有n个元素之积并返回;include<stdio.h>int FFint a , int n{int mul=1;ifn==1mul=a0;else mul=an-1FFa,n-1;return mul;}/void main{int a6={1,2,3,4,5,6};printf"%d\n",FFa,6;}/题目43编写一个主函数,利用while循环,求出并显示满足不等式1+1/2+1/3+……+1/n>5的最小n 值;include<stdio.h>void main{int i=0; double s=0; //或int i=1; double s=1;whiles<5 s+=double1/++i;printf"n=%d\n",i;}题目44编写一个主函数,求出满足不等式22+42+...+n2<1000的最大n值,假定分别用i和s作为取偶数值和累加值的变量,并限定使用do循环编程;include<stdio.h>void main{int i=0; //用i作为依次取值偶数的变量int s=0; //用s作为累加变量do {i+=2;s+=ii;}whiles<1000;printf"n=%d\n",i-2;}题目45编写一个主函数,计算并输出12+22+...+n2值,其中n值由键盘输入;include<stdio.h>void main{int i; //用i作为计数循环变量int s=0; //用s作为累加变量int n;printf"输入一个自然数: ";scanf"%d",&n;fori=1; i<=n; i++ s+=ii;printf"s=%d\n",s;}。

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

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

第一次上机作业(2021):要求:独立完成,上机调试通事后上交作业提交邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)以附件形式将每次作业的所有程序源程序紧缩打包后提交,紧缩文件命名格式同上。

程序必需采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。

例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。

例:输入17输出The square root of is3.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature:The corresponding Celsius temperature is4. 计算旅途时刻输入二个整数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说:他乱说。

已知三个人说的是实话,一个人说的是谎话。

此刻要依照这些信息,找出做了好事的人。

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

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

第1次客观题作业一、单选题(共30题,每题3分)1 .下面表示正确的是__A___。

A.C语言中的逗号是一种运算符B.在C语言中,一行只能有一个语句C.C中的变量不区分大小写D.c中的关键字可以做为变量名2 .字符型常量在内存中存放的是__A____代码值。

A.ASCII B.二进制C.十进制D.八进制3 .以下不正确的C语言标识符是(C )。

A.AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D____。

A.&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是___A___。

A.% B./ C.< D.!6 . C语言程序的基本单位是__C_____。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___B____程序。

A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+19 .下列(A )不属于结构化程序设计的循环结构。

A.For B.While C.if-else D.do-while10 .以下叙述中错误的是__A___。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。

A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。

for (i=3;i>0;i--) for (j=0;j<=4;j++){...}A.12 B.15 C.16 D.2013 .下列选项中,合法的C语言关键字是_D___。

2020年中国石油大学北京网络学院 C语言程序设计-第二次在线作业 参考答案

2020年中国石油大学北京网络学院 C语言程序设计-第二次在线作业 参考答案

中国石油大学北京网络学院
C语言程序设计-第二次在线作业
参考答案
1.(
2.5分)以下关于数组的描述正确的是()。

A、A. 数组的大小是固定的,但可以有不同的类型的数组元素。

B、B. 数组的大小是可变的,但所有数组元素的类型必须相同。

C、C. 数组的大小是固定的,但所有数组元素的类型必须相同。

D、D. 数组的大小是可变的,但可以有不同的类型的数组元素。

我的答案:C 此题得分:2.5分
2.(2.5分)在定义int a[10];之后,对a的引用正确的是()。

A、A.a[10]
B、B.a[6.3]
C、C.a(6)
D、D.a[10-10]
我的答案:D 此题得分:2.5分
3.(2.5分)以下能正确定义数组并正确赋初值的语句是()。

A、A. int n=5,b[n][n];
B、B. int a[1][2]={{1},{3}};
C、C. int c[2][]={{1,2},{3,4}}
D、D. int a[3][2]={{1,2},{3,4}}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二次课作业:
习题2-1
题码:章节:简单的C程序设计考查点:字符变量输入、输出函数的正确使用、ASIIC码的理解难度:1 编写一程序P710.C实现以下功能
输入一个小写英文字母,首先输出它及其ASCII码,然后输出其对应的大写字母及其ASCII码。

编程可用素材:
printf("Input a lowercase letter: ")...、printf("\n...(...)...。

程序的运行效果应类似地如图1所示,图1中的y是从键盘输入的内容。

图1 程序运行效果示例
习题2-2
题码:章节:简单的C程序设计考查点:数据类型选择,表达式计算、基本输入/输出难度:1
编写一程序P711.C实现以下功能
用scanf输入圆半径r,圆柱高h,求圆周长C1(=2πr)、圆面积S(=πr2)、圆柱体积V(=πr2h)。

(注意:本题中规定圆周率取值为3.14)
程序的运行效果应类似地如图1所示,图1中的r=1.3,h=5是从键盘输入的内容。

图1 程序运行效果示例
习题2-3
题码:章节:程序的控制结构考查点:数据类型的正确定义,基本输入输出函数的正确使用,分支结构的掌握难度:1 编写一程序P723.C实现以下功能
输入三角形的三边长a、b、c(边长可以是小数),求三角形面积area,并输出。

如果输入的三边构不成三角形,应给出“data error”的信息提示。

注:根据“海伦-秦九韶”公式,area=√p(p-a)(p-b)(p-c),其中p=(a+b+c)/2。

编程可用素材:
printf("\nplease input triange sides:")...、printf("\ndata error\n")...、printf("\narea=...\n"...。

程序的运行效果应类似地如图1和图2所示,图1中的3,4,5和图2中的3,4,8是从键盘输入的内容。

图1 程序运行效果示例图2 程序运行效果示例
习题2-4
题码:章节:简单的C程序设计考查点:数据类型的正确定义,运算符及表达式的应用的掌握,基本输入输出难度:1 编写一程序P736.C实现以下功能
从键盘上输入一个四位整数,计算各个位上的数字之和。

编程可用素材:printf("Input a number with 4-digit: ")...、printf("sum=...\n"...。

程序的运行效果应类似地如图1所示,图1中的1234是从键盘输入的内容。

图1 程序运行效果示例
1 / 1。

相关文档
最新文档