哈尔滨工业大学C语言MOOC第12周编程题在线测试

合集下载

《C语言程序设计》第12章在线测试

《C语言程序设计》第12章在线测试

《C 语言程序设计》第12章在线测试《C 语言程序设计》第12章在线测试剩余时间: 54:28答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、若有说明语句“int a[10],*p=a;”,对数组元素的正确引用是:A 、a[p]B 、p[a]C 、p+2D 、*(p+2)2、在C 语言中,关于文件存取方式,:A 、只能顺序存取B 、只能随机存取(也称直接存取)C 、可以顺序存取,也可以随机存取D 、只能从文件开头存取3、已知定义“int x = 1, *p”,则合法的赋值表达式是( )。

A 、p = &xB 、p = xC 、*p = &xD 、*p = *x4、执行“char a[10]={"abcd"},*p =a;”后,*(p+4)的值是( )。

A 、字符ˊdˊB 、转义符ˊ\0ˊC 、常量"abcd"D 、不能确定5、若有int a[10],*p =a;,则( )。

A 、p++可以使p 指向下一个字节B 、p+=2 相当于p =sizeof(a)/10C 、p++可以使p 指向下一个元素,即a[1]的首地址D 、p+=2可以使p 指向下一个元素,即a[1]的首地址第二题、多项选择题(每题2分,5道题共10分) 1、C 语言中的文件分类是:A 、文本文件和数据文件B 、文本文件和二进制文件C 、数据文件和二进制文件D、顺序文件和随机文件2、已有char s[10][10]={0};int i=10;。

在下列表达式中,没有意义的表达式是:A、s[i][i]B、*(*(s+i)+i)C、*(&(s+i)+i)D、*(*(s+i-1)+i-1)3、若有int x=3,*px; float y=3,*py;,则正确的赋值表达式是 ( )。

哈尔滨工业大学C语言期末试卷(2007秋季人文学院笔试A卷)

哈尔滨工业大学C语言期末试卷(2007秋季人文学院笔试A卷)

哈尔滨工业大学C语言期末试卷(2007秋季人文学院笔试A卷) 一、填空题(共20分,每空2分)1.C语言中简单数据类型包括、、。

2.C语言中用_______表示逻辑值“假”,用________表示逻辑值“真”。

3. char *p[10];这条语句的含义是:__ ___ _ _ 。

4.设有语句“int a=3;”,执行语句“printf(”%d”,-a++ );”后,输出结果是 , 变量a的值是。

5. 如果在程序中定义静态变量和全局变量时,未明确指明其初始值,那么它们可以在程序编译阶段自动被初始化为。

6. 在C语言中,可以用定义一种新的数据类型。

二、选择题:(共16分,每题2分)1.在C语言中,函数的隐含存储类别是()。

A) auto B) static C) extern D) 无存储类别2.若用数组名作为函数调用时的实参,则实际上传递给形参的是()。

A.数组的首地址 B. 数组的第一个元素值C.数组中全部元素的值D. 数组元素的个数3.已知struct sk{int a;float b;}data,*p;若有p=&data,则对data中的成员a正确引用是()A. (*p).dataB.(*p).aC.p->data.aD. p.data.a4.在while(x)语句中的x与下面条件表达式等价的是:。

A. x!=0B. x==1C. x!=1D. x==05.二维数组a有m行n列,则在a[i][j]之前的元素个数为()。

A. j*n+iB. i*n+jC. i*n+j-1D. i*n+j+16.设有声明语句:int a=1,b=0;则执行以下语句后输出为:。

switch (a){case 1:switch (b){case 0: printf("**0**");break;case 1: printf("**1**");break;}case 2: printf("**2**");break;}A **0**B **0****2**C **0****1****2**D 有语法错误7.以下程序运行结果是()main(){char s[]=”Address”;printf(”%d\n”, strlen(s));}A) 7 B) 8C) 9 D) 108.以下不正确的描述是()A) 在函数外部定义的变量是全局变量B) 在函数内部定义的变量是局部变量C) 函数的形参是局部变量D) 局部变量不能与全局变量同名三、写出下列程序的运行结果。

哈工大C语言程序设计精髓MOOC慕课12周编程题答案

哈工大C语言程序设计精髓MOOC慕课12周编程题答案

"/*下面代码的功能是将百分制成绩转换为5分制成绩,具体功能是:如果用户输入的是非法字符或者不在合理区间内的数据(例如输入的是a,或者102,或-45等),则程序输出Input error!,并允许用户重新输入,直到输入合法数据为止,并将其转换为5分制输出。

目前程序存在错误,请将其修改正确。

并按照下面给出的运行示例检查程序。

*/#include<>#include <> int main() {char score[100];int flag = 0, i, s;char grade;printf("“Please input score:\n"");while (1){flag=0;scanf('"'%s'"', score);for (i = 0; i < strlen(score); i ++){if (score[i] >= 101 && score[i] <= 191){ continue;} else { flag = 1; break;}}s = atoi(score);if (s < 0 || s > 100 || flag == 1){printf("“Input error!\n""); printf(""Please input score:\n""); continue;}else( break;}}s = atoi(score);if (s >= 90) {grade = 'A';} else if (s >= 80) {grade = 'B';} else if (s >= 70) {grade = 'C';} else if (s >= 60) {grade = 'D';} else {grade = 'E';} printf("“grade: %c\n HH, grade);return 0;}""#include<>#include<>int main(){int n,a,i,j;double p=0,q=0;printf("“Input a,n:\n"");scanf( ""%d,%d"",&a,&n);for(i = 1;i< = n;i + +){for(j=0,p=0;j<i;j + +){ p=p+a*pow(10,j);} q=p+q;}printf('"'sum=%.0f\n'"',q);return 0;}""/*n块砖(27<n<=77 ), 36人搬,男搬4,女搬3,两个小孩抬一块砖,要求一次搬完,问男人、女人和小孩各需多少人?请用穷举法编程求解n的值要求从键盘输入。

哈工大 C语言实验报告(答案)

哈工大 C语言实验报告(答案)

实验1简单C 程序设计2、将下列由程序流程图描述的算法,转换为C 源代码并填写到图1-3b 框中,然后输入计算机并运行后并分析其运行结果(本小题2分)。

图1-3a 程序流程图图1-3bC 源程序3、项目编程(本小题12分)(1)请向计算机输入a,b,c 三个值,经过程序处理后,要求输出其中最大的一个。

/*C 语言源代码*/main(){}项目要求:①画出程序流程图;②根据流程图编写程序图1-4a 程序流程图图1-4b C 源程序(2)请向计算机输入a,b,c 三个值,经过程序处理后,要求按值从小到大输出。

项目要求:①画出程序流程图;②根据流程图编写程序/*输出最大值*/main(){}项目提示:①可采用if结构;②a,b,c由scanf函数输入程序流程图/*将a,b,c三个值由小到大输出*/main(){}1-5a程序流程图图1-5b C源程序(3)编程实现打印下列由字母组成的树形。

说明:本项目编程的知识点是让学生对双重循环语句结构的理解,清楚双重循环的特点(即当外循环变量中的值变化一次时,则内循环变量中的值要变化若干次)。

提示:可用外循环变量代表行数;内循环变量代表需打印字符的个数。

难点:①字符个数是按奇数变化递增②左右边界字符打印的位置图1-6a字母A-G组成的树形/*打印图形*/main(){}图1-6b C源程序(4)设计报选体育科目统计程序设某学校在新生入学时,需报选体育选修科目。

体育科目包括:篮球、排球、体操、兵乓球和网球。

请为某班级(30人)统计报选各体育科目人数。

项目要求:①画出程序流程图;②根据流程图编写源程序项目提示:可采用switch与for结构程序流程图C语言源代码main(){}图1-7a程序流程图图1-7b C 源程序实验2数组与排序五、项目编程(本题12分,每小题4分)1、将下列一组数读入到a 数组中,然后从a数组中找出其中最大的元素并与第一个数互换;然后从a数组中找出最小的元素并与最后一个数互换,而其余元素的位置不变。

12级试题

12级试题

3、执行下列程序段的输出结果是【 3 】。

#include <stdio.h> #include <string.h>void main(){ char *p1="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2));printf("%s",str); }A )xyzabcABCB )zabcABC C )yzabcABCD )xyabcABC 4、对一维数组 a 的正确说明是【 4 】。

A )int a(10);B )int n=10,a[n];C )int n;D )#define SIZE 10 scanf("%d",&n); int a[SIZE]; int a[n];5、计算符号函数,以下正确的程序段是【 5 】。

A )if(x<0)y=-1; else if(x=0) y=0; else y=-1;B )if(x>=0) if(x>0)y=1; else y=0; else y=-1;C )y=-1; if(x!=0) if(x>0) y=1; else y=0;D )y=0; if(x>=0) if(x>0)y=1; else y=-1;6、有以下定义和语句:#include <stdio.h>struct student{ int age;int num;} stu[3]={{1001,20},{1002,19},{1003,21}};void main(){ struct student *p;p=stu;...}则不正确的引用是【 6 】。

A)(p++)->num B)p++ C)(*p).num D)p=&stu.age二、阅读程序,写出程序的运行结果(每题4分,共24分)1、下列程序输出结果为【 1 】。

哈工大C语言试题

哈工大C语言试题

哈尔滨工业大学(威海)2008/2009秋季学期C 语言程序设计 笔试试题(A 卷)题号 一二三四五六笔试(70%) 平时 (30%) 总分分数试卷说明: 1. 卷面总分100分,取卷面成绩的70%计入总分;2. 选择题、填空题与写运行结果题必须在答题卡内答题;3. 答题时禁止拆开试卷钉,背面即为草稿纸;4. 答题时间105分钟。

一、单项选择题(本题16分,每小题2分)题号 1 2 3 4 5 6 7 8 答案CDCDCCDB1. C 语言源程序文件经过C 编译程序编译连接之后生成一个后缀为______的文件。

A) .c B) .obj C) .exe D) .cpp 2. 表达式 !(x>0||y>0) 等价于_____。

A) !x>0||!y>0 B) !(x>0)||!(y>0) C)!x>0&&!y>0 D) !(x>0)&&!(y>0) 3. 已知函数的调用形式:fread(buffer, size, count, fp); 其中buffer 代表的 是( )。

A) 一个整型变量,代表要读入的数据项总数 B) 一个文件指针,指向要读入的文件C) 一个指针,指向要存放读入数据的地址 D) 一个存储区,存放要读入的数据项 4. 以下不能正确定义二维数组的选项是A) int a[2][2]={{1},{2}}; B) int a[][2]={1,2,3,4};C) int a[2][2]={{1},2,3}; D) int a[2][]={{1,2},{3,4}}; 5. 以下程序的输出结果是 _____。

main() {char ch[3][5]={"AAAA","BBB","CC"};printf("\"%s\"\n",ch[1]);}A) \"AAAA\" B) \"BBB\" C) "BBB" D) "AAAA"号学 名 姓教研室主任签字: 注意行为规范 遵守考试纪律6. 对y在[3,23]和[100,200]范围内为真的确表达式为_____。

2022.12全国青少年软件编程(C语言)等级考试试卷(二级)

2022.12全国青少年软件编程(C语言)等级考试试卷(二级)

1.数组逆序重放将一个数组中的值按逆序重新存放。

例如,原来的顺序为8,6,5,4,1。

要求改为1,4,5,6,8。

输入输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔。

输出输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。

样例输入样例输出2.最长最短单词输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。

单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。

试输出第1个最长的单词和第1个最短单词。

输入一行句子。

输出两行输出:第1行,第一个最长的单词。

第2行,第一个最短的单词。

样例输入样例输出3.计算鞍点给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。

鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。

例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8 )。

11 3 5 6 912 4 7 8 1010 5 6 9 118 6 4 7 215 10 11 20 25输入输入包含一个5行5列的矩阵输出如果存在鞍点,输出鞍点所在的行、列及其值,如果不存在,输出"not found"样例输入样例输出4.病人排队病人登记看病,编写一个程序,将登记的病人按照以下原则排出看病的先后顺序:1. 老年人(年龄 >= 60岁)比非老年人优先看病。

2. 老年人按年龄从大到小的顺序看病,年龄相同的按登记的先后顺序排序。

3. 非老年人按登记的先后顺序看病。

输入第1行,输入一个小于100的正整数,表示病人的个数;后面按照病人登记的先后顺序,每行输入一个病人的信息,包括:一个长度小于10的字符串表示病人的ID(每个病人的ID各不相同且只含数字和字母),一个整数表示病人的年龄,中间用单个空格隔开。

输出按排好的看病顺序输出病人的ID,每行一个。

哈工大c语言 练习题

哈工大c语言 练习题

求用户输入的两个数的商,程序运行时,以如下格式输入数据:Input two integers:4 2↙请改正程序中的错误,使它能得出正确的结果。

#include <>main(){int a, b, c;printf("Input two integers:");scanf("%d,%d", &a, &b);c = a\b;printf("The quotient of a and b is :%d", c);}# include <>int main (){int a,b,c;printf ("Input two integers:");scanf ("%d %d",&a,&b);c=a/b;printf ("The quotient of a and b is :%d\n",c);return 0;}使用const常量定义圆周率pi=,编程从键盘输入圆的半径r,计算并输出圆的周长和面积。

输出的数据保留两位小数点。

输入格式要求:"%lf"提示信息:"Input r:"输出格式要求:"printf WITHOUT width or precision specifications:\n""circumference = %f, area = %f\n""printf WITH width and precision specifications:\n""circumference = %, area = %\n"程序运行示例如下:Input r:printf WITHOUT width or precision specifications:circumference = , area =printf WITH width and precision specifications:circumference = , area =#include <>int main(){const double PI=;double r;printf("Input r:");scanf("%lf", &r);printf("printf WITHOUT width or precision specifications:\n");printf("circumference = %f, area = %f\n",2*PI*r,PI*r*r);printf("printf WITH width and precision specifications:\n");printf("circumference = %, area = %\n",2*PI*r,PI*r*r);return 0;}写一个程序,将接收的华氏温度转换为对应的摄氏温度。

哈尔滨工业大学C语言MOOC第12周编程题在线测试

哈尔滨工业大学C语言MOOC第12周编程题在线测试
现在要评选最牛群主已知有3名最牛群主的候选人分别是tomjack和rose有不超过1000人参与投票最后要通过投票评选出一名最牛群主从键盘输入每位参与投票的人的投票结果即其投票的候选人的名字请你编程统计并输出每位候选人的得票数以及得票数最多的候选人的名字
第12周编程题在线测试
1计算时间差V2.0(4分)
4)西部奖学金:期末平均成绩高于85分(>85)的西部省份学生每人均可获得1000元;
5)班级贡献奖:班级评议成绩高于80分(>80)的学生干部每人均可获得850元;
只要符合上述条件就可获得相应的奖项,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。例如姚明的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。
Input time two: (hour,minute):5,21↙
3hour,48minute
输入提示:"Input time one:(hour,minute):"
"Input time two: (hour,minute):"
输入格式: "%d,%d"
输出格式:"%dhour,%dminute\n"
s = n;
while (n--)
{
stu[count].scholarship = 0;
printf("Input name:");
scanf("%s", &stu[count].name);
printf("Input final score:");
scanf("%d", &stu[count].finalScore);

2022年哈尔滨工业大学公共课《C语言》科目期末试卷B(有答案)

2022年哈尔滨工业大学公共课《C语言》科目期末试卷B(有答案)

2022年哈尔滨工业大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。

2、一个C语言源程序由若干函数组成,其中至少应含有一个________3、结构化程序由________、________ 、________ 3种基本结构组成。

4、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。

5x7+3x6-4x5+2x1+x3-6x2+x+105、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。

6、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。

7、下面程序段的运行结果是_______。

x=2;do{printf("*");x--;)while(!x==0);8、下面程序段将输出computer。

请填空。

char c[]="It is a computer";for(i=0;_______;i++){_______;printf("%c",c[j]);}9、下面程序段的运行结果是_______。

int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。

请填空。

(假设程序段中的所有变量均已正确说明。

)for(k=0;k<10;k++,m++)scanf("%d",_______);二、选择题11、下面4个选项中,是不合法的转义字符的选项是()A.'\"'B.'\1011 'C.'\0ll'D.'\abe'\\ '\' '\f' '\0ll'\xf' ' \a' '\]' 'xlf'12、下面4个选项中,是正确的数值常量或字符常量的选项是( )13、以下叙述正确的是A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误14、以下叙述不正确的是( )A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面15、在C语言中,一维数组的定义方式为:类型说明符数组名()。

哈尔滨工业大学材料力学编程题c语言程序

哈尔滨工业大学材料力学编程题c语言程序

材料力学上机课程作业:C语言编写1一个力作用下的任意截面的弯矩,挠度。

程序:#include <stdio.h>#include<math.h>double Mz,l,a,x,v,E,I,b,F;main(){printf("请输入长度l\n");scanf("%lf",&l);printf("请输入长度a\n");scanf("%lf",&a);printf("请输入弹性模量E\n");scanf("%lf",&E);printf("请输入极惯性矩I\n");scanf("%lf",&I);printf("请输入力F\n");scanf("%lf",&F);printf("请输入x\n");scanf("%lf",&x);b=l-a;if(x>0&&x<a){Mz=F*(l-a)*x/l;v=-F*b*x*(l*l-x*x-b*b)/(6*E*I*l);printf("Mz=%f\n",Mz);printf("v=%f\n",v);}else if(x>a&&x<l){Mz=F*a*(l-x)/l;v=-F*b*(l/b*pow(x-a,3)+(l*l-b*b)*x-x*x*x)/(6*E*I*l);printf("Mz=%f\n",Mz);printf("v=%f\n",v);}else{printf("數值溢出\n");}}运算结果:选取材料的L=1m,E=4.5GPa。

哈尔滨工程大学c语言

哈尔滨工程大学c语言

一、选择题1. 对一维数组a的正确说明是 D 。

A) int a(10); B) int n=10,a[n]; C) int n; D) #define SIZE 10scanf("%d",&n); int a[SIZE];int a[n];2. 能对二维数组a进行正确初始化的语句是B。

A) int a[2][]={{1,0,1},{5,3,2}}; B) int a[][3]={{1,2,3},{4,5,6}};C) int a[2][4]={{1,2,3},{4,5},{6}}; D)int a[][3]={{1,0,1},{1,2,3,4},{1,1}};3. 对两个数组a和b进行如下初始化char a[]="ABCDEF";char b[]={'A','B','C','D','E','F'};则以下叙述正确的是D。

A) a与b数组完全相同B) a与b长度相同C) a和b中都存放字符串D) a数组比b数组长度长4. 以下数组定义中不正确的是 D 。

A) int a[2][3]; B) int b[][3]={0,1,2,3,4,5};C) int c[100][100]={0}; D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}};5. 以下选项中,不能正确赋值的是 A 。

A) char s1[10];s1="Ctest"; B) char s2[]={'C', 't', 'e', 's', 't'};C) char s3[20]="Ctest"; D) char s4[]="Ctest\n"二、阅读程序写出结果1.#include<stdio.h>void main(){ char ch[7]={"12ab56"};int i,s=0;for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2)s=10*s+ch[i]-'0';printf("%d\n",s);}答案:12.#include<stdio.h>void main(){ int a[10]={1,2,2,3,4,3,4,5,1,5};int n=0,i,j,c,k;for(i=0;i<10-n;i++){ c=a[i];for(j=i+1;j<10-n;j++)if(a[j]==c){ n++;for(k=j;k<10-n;k++)a[k]=a[k+1];}}for(i=0;i<(10-n);i++)printf("%d",a[i]);}答案:123453.#include <stdio.h>void main(){ int i;char a[]="Time",b[]="Tom";for(i=0;a[i]!='\0'&&b[i]!='\0';i++)if(a[i]==b[i])if(a[i]>='a'&&a[i]<='z')printf("%c",a[i]-32);elseprintf("%c",a[i]+32);else printf("*");}答案:t*M4.#include<stdio.h>#define LEN 4void main(){ int j,c;static char n[2][LEN+1]={"8980","9198"}; for(j=LEN-1;j>=0;j--){c=n[0][j]+n[1][j]-2*'0';n[0][j]=c%10+'0';}for(j=0;j<=1;j++) puts(n[j]);}答案:7078 9198三、程序填空1.程序的功能是在a数组中查找与x值相同的元素的所在位置。

哈工大 C语言程序设计精髓 MOOC慕课 6-12周编程题参考答案

哈工大 C语言程序设计精髓 MOOC慕课 6-12周编程题参考答案
}
printf(""\nTotal=%d\n"",s+b);
return 0;
}"
8.3"/*
一辆卡车违犯交通规则,撞人后逃跑。现场有三人目击事件,但都没记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是位数学家,他说:四位的车号刚好是一个整数的平方。现在请根据以上线索帮助警方找出车号以便尽快破案。
#include <stdio.h>
int main(){
int i,j,k,m,tk,tm;
for (i=0;i<=9;i++){
for (j=0;j<=9;j++){
for (m=31;m<100;m++){
k = 1000*i + 100*i + 10*j + j;
if (i!=j && m*m==k){
}
else if (s >= 70)
{
grade = 'C';
}
else if (s >= 60)
{
grade = 'D';
}
else
{
grade = 'E';
}
printf(""grade: %c\n"", grade);
return 0;
}"
6.2"#include<stdio.h>
#include<math.h>
men=7,women=7,children=22

哈理工C语言试题

哈理工C语言试题

哈尔滨理工大学Array 2007-2008学年第一学期考试试题A卷考试科目:结构化程序设计C 考试时间:120分钟试卷总分100分一、选择题1. 2. 3. 4. 5.6. 7. 8. 9. 10.11. 12. 13. 14. 15.16. 17. 18. 19. 20.二、填空题1.2.3.4.5.6.7.8.三、阅读程序,写出运行结果1. 2.3. 4.5. 6.四、程序设计1.2.3.哈尔滨理工大学2007-2008学年第一学期考试试题A 卷答案填在答题卡上一、选择题(在每个小题四个备选答案中选出一个正确答案)(本大题共20小题,每小题1分,总计20分)1.若有程序段:int i=2,j;j=i++;printf(“%d,%d”,++i,j);该程序段的输出结果是______[A] 3,2 [B] 4,3 [C] 3,3 [D] 4,22.double x,y;表达式x=1,y=x+3/2的值是______[A] 1 [B] 2 [C] 2.0 [D] 2.53.若变量已正确定义并赋值,表达式______不符合C语言语法。

[A] a*b/c;[B] 3.14%2[C] 2, b [D] a/b/c4.对于以下的变量定义,表达式_____不符合C语言语法。

struct node { int len;char *pk;} x = {2, "right"}, *p = &x;[A] p->pk[B] *p.pk [C] *p->pk [D] *x.pk5.有如下程序int func(int a,int b){ return(a+b);}main(){ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r);}该程序的输出的结果是_____[A] 12 [B] 13 [C] 14 [D] 156.若在定义语句int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是______[A]scanf(“%d”,a,b,c) [B]scanf(“%d%d%d”,a,b,c) [C] scanf(“%d”,p) [D] scanf(“%d”,&p) 7.若变量已正确定义,有以下程序段i=0;do printf(“%d”,i); while(i++);printf(“%d\n”,i);[A]0,0 [B]0,1 [C]1,1 [D]程序进入无限循环8.若有定义语句:int a[2][3],*p[3];则以下语句中正确的是________[A]p=a [B]p[0]=a [C]p[0]=&a[1][2] [D]p[1]=&a系:软件学院软件工程出题教师郭红、张淑丽、王春英系主任:9.有以下程序段int k=0while(k=1)k++;while 循环执行的次数是______[A]无限次[B]有语法错,不能执行[C]一次也不执行[D]执行1次10.在C语言中,共用体类型变量在程序运行期间_______[A] 所有成员一直驻留在内存中[B] 只有一个成员驻留在内存中[C] 部分成员驻留在内存中[D] 没有成员驻留在内存中11.下面程序段的运行结果是:long fun( int n){ long s;if(n= =1 || n= =2) s=2;else s=n-fun(n-1);return s;}main(){ printf(“%ld\n”, fun(3)); }[A]1 [B]2 [C] 3 [D] 412.设有定义:int a=1,b=2,c=4;则以下选项中值为0的表达式是_____[A] (!a= =1)&&(!b= =0) [B] (a<b)&&!c||1 [C] a&&b [D] a|| (b+b)&&(c-a) 13.若t为double类型,则表达式:t=1,t+5,t++的值是______[A]1 [B]6.0 [C] 2.0 [D] 1.014.设变量定义为“int x, *p=&x;”,则&*p相当于_____。

《C语言程序设计》第12章在线测试

《C语言程序设计》第12章在线测试

《C语言程序设计》第12章在线测试A BC D、设有定义“”,则下列语句中,使A BC DC语句中,后跟指针变量名,表示该指针变量的A BC D、执行“char a[10]”后,*(p+4)A BC D、若有int a[10],*pA指向下一个字节B10C指向下一个元素,即a[1]D素,即B、*(*(s+i)+i)C、*(&(s+i)+i)D、*(*(s+i-1)+i-1)2、若有int x,*px=&x; float y, *pf=&y;char c,*pc=&c;,下列正确的为()。

A、px=(int *)pf;B、pc=(int *)px;C、px=(int *)pc;D、pf=(int *)px;E、pf=(float *)pc;3、若有int *px; float *pf;char *pc;,下列关于指针的正确描述为()。

A、px与pf存储单元长度一样。

B、px与pc存储单元长度一样。

C、pc与pf存储单元长度一样。

D、px、pc与pf三个变量的存储单元长度都一样。

E、px、pc与pf三个变量的存储单元长度互不相同。

4、若有int x=3,*px; float y=3,*py;,则正确的赋值表达式是 ( )。

A、px=&xB、py=&xC、px=&yD、py=&y5、设有定义语句“struct {int a;float b;char c;}abc,*p;”,则对结构体成员a的引用可以是( )。

A、abc.aB、abc->a正确错误、函数中的形参若为指针,则调用时对应位置上的实参不能是数组名。

正确错误与p一样。

正确错误、单目运算符“正确错误、共用体变量的存储单元长度是最长分量的存储长度。

正确错误1、错,2错,3对,4错,5对。

c语言程序设计第12章在线测试

c语言程序设计第12章在线测试

《C语言程序设计》第12章在线测试《C语言程序设计》第12章在线测试剩余时间:51:21答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、若执行fopen函数时发生错误,则函数的返回值是()A、地址值B、0C、1D、EOF2、设有定义“int a=3,b,*p=&a;”,则下列语句中,使b不为3的语句是:A、b=*&a;B、b=*p;C、b=a;D、b=*a;3、已知定义“int x = 1, *p”,则合法的赋值表达式是( )。

A、p = &xB、p = xC、*p = &xD、*p = *x4、执行“char a[10]={"abcd"},*p=a;”后,*(p+4)的值是( )。

A、字符ˊdˊB、转义符ˊ\0ˊC、常量"abcd"D、不能确定5、若有int a[10],*p=a;,则( )。

A、p++可以使p指向下一个字节B、p+=2 相当于p=sizeof(a)/10D、p+=2可以使p指向下一个元素,即a[1]的首地C、p++可以使p指向下一个元素,即a[1]的首地址址第二题、多项选择题(每题2分,5道题共10分)1、C语言中的文件分类是:A、文本文件和数据文件B、文本文件和二进制文件C、数据文件和二进制文件D、顺序文件和随机文件2、已有定义char s[10],*p=s;。

在下列表达式中,正确的表达式是:A、p=s+5B、s=p+sC、*p=s[0]D、s[2]=p[4]3、若有int *px; float *pf;char *pc;,下列关于指针的正确描述为()。

A、px与pf存储单元长度一样。

B、px与pc存储单元长度一样。

C、pc与pf存储单元长度一样。

哈尔滨工业大学C语言2016年MOOC在线测试3-12周答案

哈尔滨工业大学C语言2016年MOOC在线测试3-12周答案

本答案仅供参考第3周1计算两个数的平方和(3分)题目内容:从键盘读入两个实数,编程计算并输出它们的平方和,要求使用数学函数pow(x,y)计算平方值,输出结果保留2位小数。

提示:使用数学函数需要在程序中加入编译预处理命令#include <math.h>以下为程序的运行结果示例:please input x and y:1.2,3.4↙result=13.00输入格式: "%f,%f"输出格式:输入提示信息:"Please input x and y:\n"输出格式:"Result=%.2f\n"为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。

时间限制:500ms内存限制:32000kb#include <stdio.h> <math.h>int main(){float x,y,S,D;printf("Please input x and y:\n");scanf("%f,%f",&x,&y);S = pow(x,2);D = pow(y,2);printf("Result=%.2f\n",S+D);return 0;}2逆序数的拆分计算(3分)题目内容:从键盘输入一个4位数的整数,编程计算并输出它的逆序数(忽略整数前的正负号)。

例如,输入-1234,忽略负号,由1234分离出其千位1、百位2、十位3、个位4,然后计算4*1000+3*100+2*10+1 = 4321,并输出4321。

再将得到的逆序数4321拆分为两个2位数的正整数43和21,计算并输出拆分后的两个数的平方和的结果。

以下是程序的运行结果示例:Input x:-1234↙y=4321a=43,b=21result=2290输入格式: "%d"输出格式:输入提示信息:"Input x:\n"逆序数输出格式:"y=%d\n"逆序数拆分后的输出格式:"a=%d,b=%d\n"平方和的输出格式:"result=%d\n"为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。

哈工大C语言实验题

哈工大C语言实验题

哈工大C语言实验题Q308.(10分)第5章实验2:体型判断。

医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。

体指数计算公式是:t = w /(h*h)其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。

根据给定的体指数t计算公式,可判断你的体重属于何种类型:当 t<18 时,为低体重;当18≤t<25 时,为正常体重;当25≤t<27 时,为超重体重;当t≥27 时,为肥胖。

****输入提示信息格式:"Please enter h,w:\n"****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入)****输出数据格式要求:当 t<18 时,输出:"Lower weight!\n"当18≤t<25 时,输出:"Standard weight!\n"当25≤t<27 时,输出:"Higher weight!\n"当t≥27 时,输出:"Too fat!\n"#include#includemain(){float t,w,h;printf("Please enter h,w:\n"); scanf("%f,%f",&h,&w);t = w/(h*h);if(t<18)printf("Lower weight!\n");else if(t>=18&&t<25)printf("Standard weight!\n");else if(t>=25&&t<27)printf("Higher weight!\n");elseprintf("T oo fat!\n");return 0;}Q586.(10分)编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天?(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除;规定3~5月为春季,6~8月为夏季,9~11月为秋季,1、2和12月为冬季)。

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