C语言题目(北航软件学院)

合集下载

15秋北航《C语言程序设计》在线作业试卷最新

15秋北航《C语言程序设计》在线作业试卷最新

15秋北航《C语言程序设计》在线作业一、单选题(共10 道试题,共40 分。

)V 1. 定义int x,y;执行y=(x=1,++x, x+2)语句后,y的值是( ).A. 1B. 2C. 7D. 4满分:4 分2. 当调用函数时,实参是一个数组名,则向函数传送的是( )A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值满分:4 分3. 表达式:10!=9的值是( )A. trueB. 非零值满分:4 分4. C语言中,长整型long数据在内存中的存储形式是( )。

A. ASCIIB. 原码C. 反码D. 补码满分:4 分5. 若有定义:int x; 要将x强制转换为双精度型,应该写成A. x(double)B. x(double)C. (double)xD. double(x)满分:4 分6. 设n=3;则执行++n语句后,n的值为_____。

()A. 5B. 4满分:4 分7. 下面程序的输出结果是__________. main() { int x=102,y=012; printf("%2d,%2d",x,y);}A. 10,01B. 02,12C. 102,10D. 02,10满分:4 分8. 以下叙述中错误的是A. 对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B. 数组名代表的是数组所占存储区的首地址,其值不可改变C. 当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D. 可以通过赋初值的方式确定数组元素的个数满分:4 分9. 下列程序的运行结果是__________. void fun(int *a, int *b) { int *k; k=a; a=b;A. 编译出错B. 6 3C. 3 6D. 0 0满分:4 分10. 在C语言中,不正确的int类型的常数是( )A. 0B. 32768C. 037D. 0xaf满分:4 分二、判断题(共15 道试题,共60 分。

北航大一上c语言第四五六七八次作业

北航大一上c语言第四五六七八次作业

3. 字母频率统计【问题描述】编写程序从标准输入中读入一段英文,统计其中小写字母出现次数,并以柱状图的形式显示其出现次数。

【输入形式】在标准输入上输入一段英文文章(可能有一行,也可能有多行),在新的一行的开头输入ctrl+z键表示结束。

【输出形式】在屏幕上依次输出表示每个小写字母出现次数的柱状图(以“*”字符表示柱状图,空白处用空格字符表示,某个小写字母出现多少次,就显示多少“*”字符;柱状图的高度以出现最多的字母次数为准),在最后一行依次输出26个小写字母。

【样例输入】The computing world has undergone arevolution since the publication ofThe C Programming Language in 1978.【样例输出】【样例说明】在输入的英文短文中,小写字母a出现了6次,所以其上输出了6个字符"*"。

出现次数最多的是字母n,所以柱状图的高度为9个字符。

字母j没有出现,所以其上都为空格字符。

【评分标准】该题要求输出柱状图表示的字母出现次数,共有5个测试点。

上传C语言文件名为bar.c。

【输入形式】从标准输入读取顶点坐标。

格式为:第一行是点的个数N(3≤N≤15),后面紧接着N 行,每行两个数字(由空格隔开),分别表示该点的X、Y坐标(0≤X,Y≤32767)。

所有点的坐标互不相同,且按顺时针次序给出。

输入数据确保该多边形是一个凸多边形。

【输出形式】向标准输出打印一个浮点数,是该多边形的面积。

该浮点数保留两位小数。

【输入样例】 43 330101 2【输出样例】5.00【样例说明】输入数据表示了如图所示的四边形。

其面积为5.00。

提示:求三角形面积可用海伦公式,求平方根可用<math.h>头文件中定义的sqrt函数。

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

提交程序名为:points.c。

北航《C语言程序设计》在线作业一

北航《C语言程序设计》在线作业一

7. 以下______是错误的转义字符。( )
A. \\'
B. '\'
C. '\81'
D. '\0'
8. 若有说明语句:int i,x[3][4];则以下关于x、*x、x[0]、&x[0][0]的正确描述是
A. x、*x、x[0]、&x[0][0]均表示元素x[0][0]的地址
A. while 语句的循环控制条件为真时结束循环。
B. do while 语句的循环控制条件为真时结束循环。
C. while 循环体中不允许是空语句。
D. do while 的循环体至少被执行一次.
14. 以下正确的函数原型为______。
A. void f( x, y ); B. Leabharlann ( int x; int y );
北航《C语言程序设计》在线作业一
一、单选题(共 15 道试题,共 60 分。)
1. 已知:int i=6,j;,则执行语句j=(++i)+(i++)后的j值是______。( )
A. 4
B. 14
C. 13
D. 15
2. 下列错误的语句是________。
A. int k,*p=&k; scanf(“%d”,&k);
A. ASCII
B. 原码
C. 反码
D. 补码
6. 以下函数原型说明正确的是________。
A. float add(int x, int y) ;
B. int add(int x;int y) ;
C. char add( x,y) ;

15秋北航《C语言程序设计》在线作业一答案

15秋北航《C语言程序设计》在线作业一答案

北航?语言程序设计?在线作业一单项选择题判断题一、单项选择题〔共 10 道试题,共 40 分。

〕1. 以下程序的输出结果是__________. min( ) { int [4][4]={{1,3,5},{2,4,6},{3,5,7}}; printf("%%%%n",[0][3],[1][2],[2][1],[3][0]); }. 0650. 1470. 5430. 输出值不定-----------------选择:2. 在语言中,形参的缺省存储类型是( ). uto. register. stti. extern-----------------选择:3. 当执行以下程序时,( )。

#inlue<stio.h> voi min() { int ; while(=5) printf("% ",--); }. 循环体将执行5次. 循环体将执行0次. 循环体将执行无限次. 系统会死机-----------------选择:4. 为了防止嵌套的条件分支语句的二义性,语言规定,程序中的else总是与()组成配对关系。

. 缩排位置相同的if. 在其之前末配对的if. 在其之前末配对的最近的if. 同一行上的if-----------------选择:5. 假设变量已正确说明为flot类型,要通过语句snf("%f %f %f ",&,&,&);给赋于10.0,赋予22.0,赋予33.0,不正确的输入形式是________.. 10<回车>22<回车> 33<回车>. 10.0,22.0,33.0<回车>22<回车> 33<回车>. 10.0<回车>22.0 33.0<回车>. 10 22<回车> 33<回车>-----------------选择:6. :int ,*p=&;,那么以下函数调用中错误的选项是______。

北航《C语言程序设计》答案

北航《C语言程序设计》答案

北航《C语言程序设计》在线作业一单选题判断题一、单选题(共15 道试题,共60 分。

)1. 以下叙述中正确的是A. 预处理命令行必须位于源文件的开头B. 在源文件的一行上可以有多条预处理命令C. 宏名必须用大写字母表示D. 宏替换不占用程序的运行时间正确答案:D2. 以下各选项企图说明一种新的类型名,其中正确的是A. typedef v1 int;B. typedef v2=int;C. typedef int v3;D. typedef v4: int;正确答案:C3. C语言对嵌套if语句的规定是:else总是与( )配对。

A. 其之前最近的ifB. 第一个ifC. 其之前最近且不带else的ifD. 缩进位置相同的if正确答案:C4. 已知:#define N 3; 执行语句i=N*3; 后,i=_______.A. 3B. 6C. 9D. 以上均不正确正确答案:C5. 以下选项中可作为C语言合法常量的是A. -8B. -080C. -8e1.0D. -80.0e正确答案:A6. 以下不正确的C语言标识符是_____。

A. ABCB. abcC. a_bcD. ab.c正确答案:D7. 数组int**a[3][4]占据多大空间B. 12C. 48D. 128正确答案:C8. 已知:int x,a,b;下列选项中错误的if语句是______。

()A. if(a=b) x++;B. if(a=<b) x++;C. if(a-b) x++;D. if(x) x++;正确答案:B9. 下列可以正确表示字符型常数的是______。

A. "a"B. …t…C. "n"D. 297正确答案:B10. 表达式:10!=9的值是( )A. trueB. 非零值C. 0D. 1正确答案:D11. 在C语言中,形参的缺省存储类型是( )A. autoB. registerC. staticD. extern正确答案:A12. 设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为_____。

15春北航《C语言程序设计》在线作业试卷三

15春北航《C语言程序设计》在线作业试卷三

15春北航《C语言程序设计》在线作业试卷三一、单选题(共10 道试题,共40 分。

)V 1. 已知:int a=5; 执行以下的程序段后输出结果为_______.Do { printf(“%dn”,a--); } while (!a);A. 5B. 4C. 陷入死循环D. 5 4 3 2 1满分:4 分2. 在C语言中,while语句中的条件为()时,结束该循环。

( )A. 0B. 1C. trueD. 非0满分:4 分3. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是()A. 2B. 3C. 4D. &a[0]+1满分:4 分4. 下面程序输出结果是__________. main( ) { chara[]="programming", b[]="language"; char *p1,*p2; int i; p1=a; p2=b; for(i=0;i<7;i++) if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i)); }A. gmB. rgC. orD. ga满分:4 分5. 判断char型变量c1是否为大写字母的正确表达式为( )A. ‘A‘<=c1<=‘Z‘B. (c1>=‘A‘)&&(c1<=‘Z‘)C. (c1>=A)&&(c1<=Z)D. (‘A‘>=c1)&&(‘Z‘<=c1)满分:4 分6. 以下程序的输出结果是__________. main( ) { int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%dn",a[0][3],a[1][2],a[2][1],a[3][0]); }A. 0650B. 1470C. 5430D. 输出值不定满分:4 分7. 以下正确的叙述是A. C语言的主函数是无参函数B. C语言的主函数最多允许有1个参数C. C语言的主函数最多允许有2个参数D. C语言的主函数可以有2个以上参数满分:4 分8. 以下有关宏替换的叙述错误的是( )A. 宏名必须用大写字母表示B. 宏替换不占用运行时间C. 宏名不具有类型D. 宏替换只是字符替换满分:4 分9. 数组int**a[3][4]占据多大空间A. 64B. 12C. 48D. 128满分:4 分10. 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a 的值是( )A. 0B. 8C. -12D. 10满分:4 分二、判断题(共15 道试题,共60 分。

北航在线作业C语言答案1

北航在线作业C语言答案1
第3题 十六进制数100转换成十进制数是:
A、1024
B、512
C、256
D、128
答案:C
第4题 C语言中的注释语句用什么标示?
A、/* */
B、//
C、;
D、#
答转换成十六进制数是:
A、64
B、63
C、100
D、144
答案:A
第6题 常数的书写格式决定了常数的类型和值,0x1011是:
A、8进制整型常量
B、字符常量
C、16进制整型常数
D、2进制整型常数
答案:C
第7题 C语言中函数的返回语句是___。
单项选择题
第1题 C语言从哪个函数开始执行?
A、main
B、begin
C、start
D、go
答案:A
第2题 常用的C语言输出函数是___。
A、scanf
B、print
C、printf
D、input
答案:C
正确
错误
答案:正确
第18题 long能表示的最小数是-2^31。
正确
错误
答案:正确
第19题 实型数据在内存中是以指数形式存储的。
正确
错误
答案:正确
第20题 每一个C程序都必须有一个main函数。
正确
正确
错误
答案:正确
第12题 实数只有十进制小数形式和指数形式两种。
正确
错误
答案:正确
第13题 字符数据只占一个字节,只能存放0~255范围内的整数。
正确
错误
答案:正确

北京航空航天大学《C语言程序设计》试卷

北京航空航天大学《C语言程序设计》试卷

北京航空航天大学《C语言程序设计》课程考试试卷注意事项: 1、本试卷满分100分;考试时间:90分钟;考试形式:开卷2、请将答案一律写在答题纸上,试卷上作答无效3、考试结束后,考生将试卷及答题纸一并交回4、请将条形码贴在答题纸的指定位置学习中心______________姓名____________学号____________一、单项选择题(本大题共10小题,每小题2分,共20分)1、设有定义语句“char s[]=”123”;”,则表达式“s[3]”的值是______。

()A.' 1' B.'3'C.'\0' D.存在语法错误2、凡是函数中未指定存储类别的局部变量,其隐含的存储类别为______。

()A.自动(auto) B.静态(static)C.外部(extern) D.寄存器(register)3、已知:char w; int x; float y; double z;,则表达式w*x+z-y结果的类型是______。

()A.float B.charC.int D.double4、当声明一个结构变量时,系统分配给它的内存是______。

()A.各成员所需内存量的总和B.结构中第一个成员所需内存量C.成员中占内存量最大者所需的容量D.结构中最后一个成员所需内存量5、C语言中的简单数据类型包括______。

()A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型6、合法的数组说明语句是______。

()A.int a[]="string";B.int a[]={0,1,2,3,4,5};C.char a="string";D.char a[5]={'0','1','2','3','4','5,};7、定义int i=1;,执行语句while(i++<5);后,i的值为______。

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

题目超级最小公倍数时间限制:8000 ms | 内存限制:16384 KB描述给2个正整数a,b(1<=a,b<=10100),求a和b的最小公倍数。

输入输入包含多组数据,每组数据一行,包含两个正整数a和b,中间以一个空格隔开。

输入以0 0结束。

输出每组数据输出一行,为a,b的最小公倍数。

样例输入123 321123456789 9876543210 0样例输出1316113548070123626141提示简单的打印时间限制:1000 ms | 内存限制:65535 KB描述打印形如以下的图案:X X X X XX O O O XX O X O XX O O O XX X X X X其规律为:这是一个正方行方阵。

可以看作是由一些正方形框组成的。

该方阵的中心为一个’X’。

然交替地用’O’组成的正方形框和’X’组成的正方形框围成。

注意每个’X’或’O’之间有一个空格间隔。

输入第一行为一个整数T,表示数据的组数。

每组一行,为一奇数n(0<n=<19),表示该正方方阵的边长。

输出对于每组测试数据输出指定的图案。

样例输入235样例输出O O OO X OO O OX X X X XX O O O XX O X O XX O O O XX X X X X简单的统计问题时间限制:1000 ms | 内存限制:65535 KB描述给定n个数,统计这n个数中有多少对数字其和大于某个给定的数m。

输入第一行为一个整数T,表示数据的组数。

对于每组测试数据:第一行两个整数n(n<=10000),m(m<=10^6) 分别表示数字的个数和给定的那个数。

第二行为n 个整数(范围:-10^5~10^5)。

输出对于每组测试数据输出一行,既问题的解。

样例输入23 53 4 23 23 4 -2样例输出21全排列时间限制:1000 ms | 内存限制:65535 KB描述升序输出1~n的全排列。

输入第一行为一个整数T,表示数据的组数。

以下每行表示每组测试数据,为一整数n(0<n<=8),表示全排列的元素为1至n。

输出升序输出1~n的全排列。

每种排列一行,每行内的数字之间用一个空格隔开。

样例输入223样例输出1 22 11 2 31 3 22 1 32 3 13 1 23 2 1大数加减法时间限制:1000 ms | 内存限制:65535 KB描述给定一个只包含大整数(十进制,位数不超过100位)和加减法的表达式,要求输出其计算结果。

输入第一行为一个整数T,表示数据的组数对于每组测试数据:第一行一个整数n(1<= n <=10)表示表达式中大数的个数接下来有2n-1 行格式如下:12345678910 ß第一个数+ ß符号-323299934 ß第二个数- ß符号10000 ß第三个数。

即大数有n行,每行之间一个操作符(-或者是+)输出对于每组测试数据输出一行,既表达式的值。

样例输入22-1--12100000000000000000000000000000000000+100000000000000000000000000000000000样例输出200000000000000000000000000000000000求一元三次方程的根时间限制:1000 ms | 内存限制:65535 KB描述求a x^3 + b x^2 + c x + d = 0 (a!=0)的实数根。

输入第一行为一个整数T,表示数据的组数。

每组数据占一行,包括4个空格分开的整数,分别对应a, b, c, d,。

输出对于每组测试数据,从小到大顺序输出方程的所有实数根,四舍五入到小数点后3位。

每个根占一行。

每组数据后面输出一个空行。

样例输入21 0 -2 09 8 7 6样例输出-1.4140.0001.414-0.873单词统计时间限制:1000 ms | 内存限制:65535 KB描述给定一段文章,每行不超过1000个字符,统计文章中每个单词出现的频率,忽略大小写差异。

注意:单词的不同形态看做是不同的单词,不考虑连字符,所有非大小写字母都视为只起到分割作用。

输入第一行为一个整数T,表示数据的组数。

对于每组数据以一个独占一行的句号('.')结束。

输出对于每组测试数据:第一行为一个整数n表示文章中出现的单词的总数;接下来n行按字母序从小到大输出文章中出现的单词(全部以大写字母表示)和出现的频数。

样例输入2Hello World!.Abc abc-cde aa1bb2cc3 aas’ (test)....样例输出2HELLO 1WORLD 17AA 1AAS 1ABC 2BB 1CC 1CDE 1TEST 1Hello World时间限制:1000 ms | 内存限制:65535 KB描述此题主要是为了对于大一新生熟悉和了解oj而设置。

提交代码在本网页的最下方,你可以看到一个提交窗口,把你写好的代码复制粘贴到上面,再按"提交"就可以把本道题的代码上传到服务器上,让服务器对你的代码进行检查,如果正确,系统将返回"accepted".好,介绍了这么多,下面请同学们完成一道题,题目的要求是:输出"Hello World",并回车。

如果你觉得此题有难度,请参考以下的代码:#include <iostream>using namespace std;int main(){cout << "Hello World" << endl;return 0;}请看懂之后,自己写一遍,不要用我的代码。

以上代码也是经过处理,直接复制提交将不能通过。

只有自己写一遍才行。

输入没有输入内容输出输出Hello World样例输入无样例输出Hello World提示关于判题系统判题是由机器自动完成的,所以程序输出内容必须严格正确,不能多一个空格或回车!更不用说打错一个字符了。

请试着将上面的正确代码改成以下内容并提交,比较系统的返回结果:#include <iostream>using namespace std;int main(){cout << "Hello World\n" << endl; /*中间多了一个空格*/return 0;}#include <iostream>using namespace std;int main(){cout << "Hello World \n" << endl; /*最后多了一个空格*/return 0;}#include <iostream>using namespace std;int main(){cout << "Hello world\n" << endl; /*World第一个字母W小写了*/return 0;}试过的同学可以看到,即使是一点点的小错,都可能造成整个程序的错误,所以要求同学有严谨的做题态度,哪怕是一点小错都可能造成程序错误。

相反数时间限制:1000 ms | 内存限制:65535 KB描述完成了第一题,对题目有大概的了解了吧?请容许我再强调一下一定要完全按照题目的输出要求来做,不能多一丁点儿内容。

练习输入这里的题目输入和输出都是通过标准输入和输出完成,你不需要进行任何文件操作。

实际上,出于安全考虑你也不允许进行任何文件操作。

下面,让我们读入一个整数,并把这个数的相反数输出。

如果你觉得此题有难度,请参考以下的代码:#include <iostream>using namespace std;int main(){int a;cin >> a;cout << -a << endl;return0;}请看懂之后,自己写一遍,不要用我的代码。

以上代码也是经过处理,直接复制提交将不能通过。

只有自己写一遍才行。

输入一个整数a输出这个整数的相反数样例输入1样例输出-1提示sample input的作用sample input只是给出一个输入的例子,系统在判断你的程序是否正确时,会用多组其它数据进行测试,所以说,程序输出内容和sample output一样并不代表是正确的,想想看下面的程序为什么错误?#include <iostream>using namespace std;int main(){int a;cin >> a;cout << '-' << a << endl;return 0;}Happy Birthday时间限制:1000 ms | 内存限制:65535 KB描述软件学院,是一个温馨的集体;软件学院,是一个融洽的集体;软件学院,是一个祥和的集体,软件学院是一个快乐的集体,(以下省略十万字)。

总之,在软件学院中,我们亲如一家。

2009年10月19日,是39211205杨婷同学的生日,让我们用程序写下对她的最最诚挚的祝福吧~输入无输出Happy \birthday/ Y ang TingWe will \always/ love you!!!(注意最后没有空格)样例输入无样例输出Happy \birthday/ Yang TingWe will \always/ love you!!!提示转义字符Is it invalid时间限制:1000 ms | 内存限制:65535 KB描述我们知道时间可以按照格式####年##月##日##时##分##秒来表示,如2009年10月19日13时1分2秒就是合法的时间和日期,但是有些时间和日期是不合法的,让我们找出那些不合法的时间和日期。

(这里我们考虑闰年而不考虑闰秒)输入输入的数据第1行有一个整数n,表示下面有n组数据(n<=100)。

下面的n行(第2 - n+1行),每行有6个整数,yr,month,day,hr,min,sec,分别表示年、月、日、时、分、秒。

我们保证yr >= 1且yr <= 10000输出输出数据共有n行,对于每组数据,如果它是合法的时间和日期,则输出"Accepted", 如果是它是非法的,则输出"Invalid".(输出不包括引号)样例输入22009 10 19 13 1 21990 2 29 25 68 15样例输出AcceptedInvalid提示1990年是不是闰年?A+B for Input-Output Practice时间限制:1000 ms | 内存限制:65535 KB描述Y our task is to Calculate a + b.输入The input will consist of a series of pairs of integers a and b, separated by a space, one pair of integers per line. Y ou can assume that there are less than 10000 pairs, and each pair as long as the result will fit into signed integer.输出For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input.样例输入1 510 20样例输出630提示while (cin >> a >> b){}关于输入输出输入初学者一般有个误区:如果题目包含多组测试数据,他们就会把输入的内容全部保存起来,然后再依次处理。

相关文档
最新文档