武汉理工大学C语言试卷_(上)
- 格式:pdf
- 大小:164.82 KB
- 文档页数:21
C语言程序设计(本科)在线作业及期末考试复习题注:找到所考试题直接看该试题所有题目和答案即可。
查找按键:Ctrl+F 超越高度一、单选( 每题参考分值2.5分)1、若有以下类型说明,则叙述答案的是()。
typedef union {char name[10]; int age; }ustu,*umy;A. umy是指向共用体类型ustu的指针类型名B. ustu是一个共用体类型名C. umy是一个共用体类型名D. age是共用体类型ustu的成员正确答案:【C】2、以下程序的运行结果是()。
func(int a,int b){int c;c=(a>b)?(a-b):(a+b);return(c); }main(){ int x=7,y=3;printf("%d\n",func(x,y)); }A. 3B. 4C. 7D. 10正确答案:【B】3、若有定义:enum day{sun,mon, tue, wed, thu, fri, sat} ; ,则枚举常量sun、mon的值分别为()。
A. 0 1B. 7 1C. 1 2D. 7 0正确答案:【A】4、在C语言中,运算符″=″和″==″的功能分别是()A. 赋值运算和关系运算B. 关系运算和赋值运算C. 都是关系运算D. 都是赋值运算正确答案:【B】5、A. 1 2B. 2 3C. 3 3D. 3 4正确答案:【D】6、设有int p,q;以下不正确的语句是()A. p *=3;B. p/=q;C. p+=3D. p&&=q正确答案:【D】7、若有下面定义,能打印出字母'L'的语句是()。
struct class{ char name[8];int age;};struct class s[12]={"Zheng",16,"Lin",18,"Yang",19,"Guo",20};A. printf("%c\n",s[1].name[0]);B. printf("%c\n",s[2].name[0]);C. printf("%c\n",s[1].name);D. printf("%c\n",s[2].name);正确答案:【A】8、若有定义:int *p,k=4; p=&k;以下均代表地址的是()。
单选题 1.(A) 包含1个字符(B) 包含2个字符 (C) 包含3个字符(D) 是非法表示C 难度:较易 分值:1.02.(A)108 (B) 18 (C) 12 (D)2A 难度:较易 分值:1.03.(A)5 18 7 16 9 12 (B)15 18 17 16 19 12 (C)15 8 17 6 19 2 (D)5 8 76 9 2A难度:较易分值:1.04.(A) -1 (B) 2 (C) 1 (D) 0D难度:较易分值:1.05.(A) 2 (B) 3 (C) 6 (D) 7D难度:较易分值:1.06.(A) S是一个结构体类型名(B) p是一个结构体类型名(C) p是指向结构体类型S的指针类型名(D) no是结构体类型S的成员B难度:较易分值:1.0 7.(A)(B)(C)(D)B难度:较易分值:1.0 8.(A)(B)(C)(D)B难度:较易分值:1.09.(A)(B)(C)(D)D难度:较易分值:1.010.(A) 0 (B) 3 (C) 4 (D) 无限C难度:较易分值:1.0 11.(A)(B)(C)(D)C难度:较易分值:2.0 12.(A)(B)(C)(D)B难度:较易分值:2.0 13. 对二维数组的正确定义是()(A)(B)(C)(D)C难度:较易分值:2.0 14.(A)(B)(C)(D)C难度:较易分值:2.015.(A) 11 (B) 10 (C) 9 (D) 8B难度:较易分值:2.016. 以下叙述正确的是()(A) 宏名必须用大写的英文字母表示(B) 宏定义不仅是符号替换,也可以赋值(C) 宏替换是在程序编译时完成的,不占用程序运行时间(D) 引用带参数的宏时,实际参数与宏定义中的形式参数类型应一致B难度:较易分值:2.017. 以下属于C语言保留字的是()(A) fopen (B) include (C) get (D) unsignedD难度:较易分值:2.0 18. 在循环语句的循环体中,break语句的作用是()。
湖北省计算机技能高考c语言试题及答案在湖北省计算机技能高考中,C语言试题是考生们必须面对的一部分。
掌握C语言对于计算机专业学生来说至关重要,因此这份试题对于检验考生的C语言水平有着重要意义。
以下是湖北省计算机技能高考C语言试题及答案,供同学们参考学习。
试题一:```c#include <stdio.h>int main(){int i, sum;sum = 0;for(i = 1; i <= 100; i++){sum += i;}printf("The sum of numbers from 1 to 100 is: %d\n", sum);return 0;}```试题一要求计算从1到100的所有整数的和并打印输出。
答案如上所示,通过for循环累加实现,结果为5050。
试题二:```c#include <stdio.h>int main(){int number;printf("Enter a number: ");scanf("%d", &number);if(number % 2 == 0){printf("%d is an even number.\n", number);}else{printf("%d is an odd number.\n", number);}return 0;}```试题二要求输入一个整数,判断该整数是奇数还是偶数,并相应地打印输出结果。
答案如上所示,通过判断输入的整数除以2的余数是否为0来实现,如果余数为0,则为偶数;否则为奇数。
试题三:```c#include <stdio.h>int main(){int number, i;int factorial = 1;printf("Enter a positive integer: ");scanf("%d", &number);for(i = 1; i <= number; i++){factorial *= i;}printf("The factorial of %d is: %d\n", number, factorial);return 0;}```试题三要求输入一个正整数,计算其阶乘并打印输出结果。
湖北省计算机技能高考c语言试题及答案一、选择题(每题2分,共40分)1. C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. defD. void答案:D2. 在C语言中,以下哪个选项不是合法的变量名?A. _myVarB. 2ndVariableC. variable_nameD. int答案:D3. 下列关于C语言数组的描述中,正确的是:A. 数组的大小在定义后可以改变B. 数组可以存储不同类型的数据C. 数组的索引从1开始D. 数组在定义时必须初始化答案:C4. C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str[] = {"Hello"};D. char str[] = {H, e, l, l, o};答案:A6. C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. size()D. count()答案:A7. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. open()C. create()D. file_open()答案:A8. C语言中,以下哪个关键字用于定义一个结构体?A. structB. classC. unionD. typedef答案:A9. 在C语言中,以下哪个选项是合法的指针声明?A. int *p;B. int *p = 0;C. int *p = 10;D. int *p = "Hello";答案:A10. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. #define PI = 3.14159;答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以将一个字符变量转换为一个整数。
武汉理⼯C语⾔试题⼀、选择题1.Turbo C2.0中,若定义float a,则变量a在内存中分配的字节数是(B )。
A. 2B. 4C. 8D.162.不合法的字符常量是( B )。
A.‘\t’B.“A”C. ‘a’D. ‘\x32’3.Turbo C 2.0中,unsigned型数据的取值范围是( C )A.-215∽(215-1)B.-231∽(231-1)C.0∽(216-1)D.0∽(232-1)4.若int k=7,x=12;则能使值为3的表达式是(D)。
A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5D. (x%=k)-(k%=5)5.若有语句scanf(“%d,%d,%d”,&a,&b,&c);则在执⾏时输⼊正确的形式是(B )。
A.1↙2↙3↙B.1,2,3↙C.1 2 3↙D.1,2 3↙6.执⾏下列程序段时输出结果是(B)。
unsigned int a=65535;printf(“%d”,a);A.65535 B.-1 C.-32767 D.17.若有a=12,表达式a*=2+5的值是(D )。
A.7 B.17 C.29 D.848.若x≥0时,y=1,x<0时,y=-1,下⾯错误的程序段是( D )。
A.if (x>=0) y=1; B.y=-1;if (x<0) y= -1; if (x>=0) y= 1;C.if (x>=0) y=1; D.if (x>=0) y=1;else y= -1; y= -1;9.有int a=0xfffd;若以% d格式输出,则正确答案是( C )。
A.-1 B. -2 C. -3 D. -410. 要执⾏for(表1;表2;表3)循环,要求必须是( D )。
A. 表1的值为0B. 表1的值为⾮0C. 表2的值为0D. 表2的值为⾮0 11.下⾯不是逻辑运算符的是( A )。
实验二 选择结构的程序设计1.编程计算下面的分段函数。
4x-8 -1≤x <0y= 3x 2+10x-1 0≤x <18x 3-3x 2+2x-1 1≤x <2 (1)事先编好程序和流程图。
要求用if 语句结构实现,注意数据类型和输入提示语句。
#include <stdio.h> main ( ) {float x,y;printf ("input x:\n"); scanf ("%f",&x); if (x>=-1&&x<2) {if (x>=-1&&x<0)y=4*x-8;else if (x>=0&&x<1)y=3*x*x+10*x-1;elsey=8*x*x*x-3*x*x+2*x-1;printf("y=%10.2f",y); } elseprintf ("DATA ERROR!"); }(2)将程序运行六遍,分别从键盘上输入-1,-0.5,0,0.5,1,1.5这六个数,记录下运行结果并核对结果的正确性。
(3)再将程序运行二遍,分别从键盘上输入-3.5和2二个数,记录下运行结果并核对结果的正确性。
键盘的输入 分析结果 运行结果 调试说明键盘输入-1 键盘输入-0.5 键盘输入0 键盘输入0.5 键盘输入1 键盘输入1.5键盘的输入观察到的运行结果程序的错误之处和调试④修改程序,使之能正确处理任何数据。
当输入数据大于等于2或小于-1时,通知用户“Data Error ”,程序结束。
4.水果店有苹果,一级5.50元/kg ,二级4.20元/kg ,三级3.00元 /kg ,四级2.50/kg ,输入苹果的等级、数量以及顾客的付款数,显示出苹果的等级、数量、应付款数以及找给顾客的钱数。
(1)事先编好程序,分别用if 语句和用switch 语句结构实现,要求程序能正确处理任何数据。
单选题1. C语言中,若缺省定义函数返回值类型,则该函数默认返回值类型是()。
(A) void (B) long (C) int (D) double难度:较易分值:1.0 C2. 下面叙述错误的是()。
(A) C源程序可由一个或多个函数组成(B)(C)(D) 注释说明部分只能位于C源程序的最前面难度:较易分值:1.0 D3. 下面叙述错误的是()。
(A)(B)(C) 预处理命令行必须以分号结束(D) C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率难度:较易分值:1.0 D4. ()语句符合C语言语法。
(A)(B)(C)(D)难度:较易分值:1.0 B5. C语言中,数组名作为函数调用的实参时,下面叙述正确的是()。
(A) 传递给形参的是数组元素的个数(B) 传递给形参的是数组第一个元素的值(C) 传递给形参的是数组中全部元素的值(D) 形参数组中各元素值的改变会使实参数组相应元素的值同时发生变化难度:较易分值:1.0 D6.(A)(B)(C)(D)难度:较易分值:1.0 A7. 下面关于字符数组的叙述中,错误的是()。
(A)(B)(C)(D)难度:较易分值:1.0 A8. 下面叙述正确的是()(A) 每行最多只能写两条语句(B) 程序中必需含有自定义函数(C)(D)难度:较易分值:1.0 D9. 以下叙述中正确的是()。
(A)(B)(C)(D)难度:较易分值:1.0 A10. ()是关于C语言数据类型的正确叙述。
(A) 变量必须先定义后使用 (B) 不允许使用空类型 (C) 枚举类型不是基本类型 (D) 数组并不是构造类型难度:较易分值:1.0 A11. ()为正确的用户标识符。
(A)(B)(C)(D)难度:较易分值:2.0 D12. C语言的下列运算符中,优先级最高的运算符是()。
(A)(B)(C)(D)难度:较易分值:2.0 A13.(A) 16, 8 (B) 8, 8 (C) 16, 16 (D) 8, 16难度:较易分值:2.0 A14. 不能对二维数组a进行正确初始化的语句是()。
《C语言程序设计》实验报告
实验课程名称C语言程序设计
开课学院计算机科学与技术学院指导教师姓名
学生姓名X X
学生专业班级信息管理与信息系统1101班2012—2013学年第1学期
实验一顺序结构的程序设计
题目一:
程序代码:
题目二:
程序代码:
实验二:选择结构的程序设计题目一:
程序代码:
运行结果:
题目二
程序代码:
运行结果:
实验三循环结构的程序设计题目一
程序代码:
运行结果:
题目二:程序代码:
运行结果:
实验四数据和指针应用的程序设计题目一
程序代码:
运行结果:
运行结果:
程序代码:
运行结果:
实验五函数应用的程序设计程序代码:
运行结果:
程序代码:
运行结果:。
注:在Visual C++ 6.0编译环境中亲自调试通过,但不保证在Turbo C 中通过。
实验二 选择结构的程序设计(题目当初没抄下来,这是根据程序整理的)1.编程实现分段函数⎪⎩⎪⎨⎧<≤-+-<≤-+<≤--=2112381011030184242x x x x x x x x x y#include<stdio.h> main() { float x,y; printf("Please input x:"); scanf("%f",&x); if (x<-1||x>=2) printf("Data Error\n"); else { if (x>=-1&&x<0) y=4*x-8; if (x>=0&&x<1) y=3*x*x+10*x-1; if (x>=1&&x<2) y=8*x*x*x*x-3*x*x+2*x-1; printf("\ny=%f\n",y); } } 2. 苹果有三个等级,一级5.50元/斤,二级3.00元/斤,三级2.50元/斤。
编写程序,输入苹果的等级,购买的数量和所付的钱数,输出等级,购买的数量、应付钱数和找零。
#include<stdio.h> main() { int level; double weight,pay,money,charge; printf("Please input the level:"); scanf("%d",&level); printf("Please input the weight you want:"); scanf("%lf",&weight); printf("Please input the money you pay:"); scanf("%lf",&pay); if (level<1||level>4||weight<0) printf("Data Error\n"); else{ if (level==1) money=weight*5.50; else if (level==2) money=weight*4.20; else if (level==3) money=weight*3.00; else if (level==4) money=weight*2.50; charge=pay-money; printf("\nLevel:%d\nweight:%g\n",level,weight); printf("money:%g\ncharge:%g\n\n",money,charge); } }实验三循环结构1.编程计算1!+2!+3!+4!+5!●分别用单层循环和双层循环实现●考虑∑∑==201101iiii!和!#include<stdio.h>main(){int i,x;double j,k,sum;printf("Please input a number:");scanf("%d",&x);//用单层循环for(sum=0,j=1,i=1;i<=x;i++){j*=i;sum+=j;}printf("The result is %lf\n",sum);//用双层循环for(sum=0,i=1;i<=x;i++){for(k=1,j=1;j<=i;j++) k*=j;sum+=k;}printf("The result is %lf\n",sum);}2.共20个评委给选手评分,去掉1个最高分,去掉1个最低分,其余18名评委的平均分即选手最终得分#include <stdio.h>main(){double score,min,max,avg=0;int i;//下面是为了输入第一个数printf("Please input 20 scores...\n");printf("Score 1: ");scanf("%lf",&score);min=score;max=score;avg+=score;// 下面为了输入剩余19个数for(i=2;i<=20;i++){do{printf("Score %d: ",i);scanf("%lf",&score);}while(score<0);if(score>max) max=score;avg+=score;}avg=avg-min-max;avg/=18;printf("\nThe average score is %lf:\n",avg);}实验四数组和指针的应用1.定义一个有10元素的一位数组count,从键盘上输入8个整数,将其按从大到小的顺序排列,并将排序后的数组输出(1)数组方法#include<stdio.h>main(){int count[10],t,i,j;printf("Please input 8 numbers:\n");for(i=0;i<8;i++)scanf("%d",&count[i]);for(i=0;i<8;i++)for(j=i+1;j<8;j++)if (count[i]<count[j]){t=count[i];count[i]=count[j];count[j]=t;}printf("The sorted array is as follows:\n");for (i=0;i<8;i++)printf("%d ",count[i]);}(2)指针方法#include<stdio.h>main(){int count[10],t,i,j,*p=count;printf("Please input 8 numbers:\n");for(i=0;i<8;i++)scanf("%d",&p[i]);for(i=0;i<8;i++)for(j=i+1;j<8;j++)if (*(p+i)<*(p+j)){t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;}printf("The sorted array is as follows:\n");for (i=0;i<8;i++)printf("%d ",count[i]);}2.输入2个字符串,将二者连接并输出,再将连接后的字符串反向排列并输出,并求连接后字符串的长度#include<stdio.h>#include<string.h>main(){int i,len;char a1[51],a2[26],t[51];printf("Please input 2 strings:\n");gets(a1);gets(a2);strcat(a1,a2);printf("The joint string is: %s",a1);len=strlen(a1);printf("\nThe length of the linked string is: %d\n",len);for(i=0;i<len;i++)t[i]=a1[len-i-1];t[len]=0;strcpy(a1,t);printf("The reversed string is: %s\n",a1);}实验五函数应用的程序设计1.要求是:编写一函数,统计字符串中字母、数字、空格和其他字符的个数在主函数中输入字符串并输出统计结果值传送:#include<stdio.h>void fun(char a,int *b){if(a>='A'&&a<='Z'||a>='a'&&a<='z')b[0]++;else if(a>='0'&&a<='9')b[1]++;else if(a==32)b[2]++;else b[3]++;}main(){char a[50];int b[4],i,j,k;for(i=0;i<3;i++){for(j=0;j<4;j++)b[j]=0;printf("\nPlease input a string:\n");gets(a);k=0;while(a[k]!=0){fun(a[k],b);k++;}printf("The string have %d letters, %d numbers, %d spaces, %d other chars\n",b[0],b[1],b[2],b[3]);}}地址传递:#include<stdio.h>void fun(char *a,int *b){int i=0;while(a[i] != 0){if(a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z')b[0]++;else if((a[i]>='0')&&(a[i]<='9'))b[1]++;elseif(a[i]==32)b[2]++;else b[3]++;i++;}}main(){char a[50];int b[4],i,j;for(i=0;i<3;i++){for(j=0;j<4;j++)b[j]=0;printf("\nPlease input a string:\n");gets(a);fun(a,b);printf("\nThe string have %d letters, %d numbers, %d spaces, %d other chars",b[0],b[1],b[2],b[3]);}}。
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线………
…
a)0~180个,每个字0.57元;
b)180~400个,超过180的部分,每个字0.65元;
c)>400个,超过400的部分,每个字0.95元;
1.从键盘输入若干字母,将小写字母变成其后的第四个字母, a-->e,b-->f,……,v-->z,w-->a……大写
字母则先变成小写字母再处理。
如:输入aBdEgWz ,则输出efhikad。
2.在主函数中定义一个二维数组s[20][3]来存放一个班级中20名学生的英语、高数和C语言3门课的考
试成绩(假设成绩都是整型),输入全部3门课的成绩,完成以下功能:
(1)求出该班各门课的平均成绩存入一个一维数组a[3]并输出。
(2)定义一个pass( )函数,统计3门课都通过(≥60)的学生的人数,并输出他们3门课的成绩。
武汉理工大学C语言期末试题武汉理工大学考试试卷B卷)2010 ~2011 学年 2 学期 C语言程序设计课程闭卷一、单项选择题(每题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将所选代码填写在下面表格中的对应位置。
错选、多选或未选均无分。
1.以下叙述不正确的是______。
A.在C程序中,注释说明只能位于一条语句的后面。
B.一个C源程序可由一个或多个函数组成。
C.一个C源程序必须包含一个main函数。
D.C程序的基本组成单位是函数。
2.以下选项中,______是合法的C语言字符常量。
A. ″A″B.′ \x43 ′C.′ ab ′D.′ \084 ′3.以下不是合法的C语言赋值语句为______。
A.++a;B.n=(m=(p=0));C.a=b==c;D.k=a+b=1;4.设在C语言中,一个int型数据在内存中占用2个字节,则unsignedint型数据的取值范围为______。
A.0~255B.0~32767C.0~65535D.0~21474836475.已知字符′ b ′的ASCII码为98,语句printf(″ %d, %c″, ′ b ′, ′ b ′ + 1);的输出结果为______。
A.98,bB.语句不合法C.98,99D.98,c6.执行语句for(i=1;i++<4;);后,变量i的值是______。
A.3B.4C.5D.不定7.若有声明int a[3][4];,则对a数组元素的非法引用是。
A. a[0][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4]8.在C语言程序中,数组名做函数调用的实参时,传递给形参的是。
A.数组第一个元素的值 B.数组的首地址C.数组全部元素的值 D.数组元素的个数9.设有数组定义: char array [ ]="China"; 则数组 array所占的存储空间为。
一、单项选择题(共20道小题,共100.0分)1.A.B.C.D.知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.02.A.B.C.D.知识点: 第一章学生答案: [D;]得分: [5] 试题分值: 5.03.A. 4B. 3C. 6D. 5知识点: 第一章学生答案: [D;]得分: [5] 试题分值: 5.04. 下面叙述正确的是()。
A. 程序中必须包含有输入语句B. 变量按所定义的类型存放数据C.D. 每行只能写一条语句知识点: 第一章学生答案: [B;]得分: [5] 试题分值: 5.05. 构成C源程序的基本单位是()A. 语句B. 变量C. 运算符D. 函数知识点: 第一章学生答案: [D;]得分: [5] 试题分值: 5.06. C语言函数体由()括起来。
A.B.C.D.知识点: 第一章学生答案: [C;]得分: [5] 试题分值: 5.07.A. 67,DB. C,DC. C,68D. 67,68知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.08.A.B.C.D.知识点: 第一章学生答案: [C;]得分: [5] 试题分值: 5.0 9. ()是正确的叙述。
A.B.C.D.知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.010.A.B.C.D.知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.011.A.B.C.D.知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.012.A.B.C.D.知识点: 第一章学生答案: [D;]得分: [5] 试题分值: 5.013. 以下说法中正确的是()A. 字符型变量可以存放字符串B. 递归调用是指函数调用自己C. 所有的外部函数只能在本文件中被调用D. 在循环体中break语句和continue语句的作用都是结束循环知识点: 第一章学生答案: [B;]得分: [5] 试题分值: 5.014.A.B.C.D.知识点: 第一章学生答案: [A;]得分: [5] 试题分值: 5.015. 在函数调用时,以下说法正确的是()A. 函数调用后必须带回返回值B. 实际参数和形式参数可以同名C. 函数间的数据传递不可以使用全局变量D. 主调函数和被调函数总是在同一个文件里知识点: 第一章学生答案: [B;]得分: [5] 试题分值: 5.016.A.B.C.D.知识点: 第一章学生答案: [B;]得分: [5] 试题分值: 5.017. ()是关于C语言数据类型的正确叙述。
武汉理工大学继续教育本科专业c语言程序设计。
单选题1。
(一)包含1个字符(二)包含2个字符(三)包含3个字符(四)是非法的,以表示难度:更容易得分:1.02。
(一)108(二)18(三)12(四)2困难:更容易得分:1.03。
(a)5 18 7 16 9 12(b)15 18 17 16 19 12(c)15 8 17 6 19 2(d)5 8 7 6 9 2a困难:更容易得分:1.04。
(一)-容易得分:1.02。
(一)108(二)18(三)12(四)2困难:更容易得分:1.03。
(a)5 18 7 16 9 12(b)15 18 17 16 19 12(c)15 8 17 6 19 2(d)5 8 7 6 9 2a困难:更容易得分:1.04。
更简单的分数:1.05。
(一)2(二)3(三)6(四)7难度:更容易得分:1.06。
S是结构类型名,p是结构类型名,p是指向结构类型的指针类型名,不,是结构类型的成员,难点:更容易得分:1.07。
困难:更容易得分:1.08。
困难:1.09。
困难:更容易得分:1.010。
(一)0(二)3(三)4(四)无限C难度:更容易得分:1.011。
困难:更容易得分:2.012。
困难:更容易得分:2.013。
二维数组的正确定义是()(a) (b) (c) (d) c困难:更容易得分:2.014。
困难:更容易得分:2.015。
难度:更容易得分:2.016。
以下陈述是正确的()(a)宏名称必须用大写英文字母表示(B)宏定义不仅是符号替换,而且是赋值(c)宏替换在程序编译时完成,不占用程序运行时间(d)当引用带参数的宏时,宏定义中的实际参数和形式参数类型应与难度(B)一致:更容易得分:2.017。
下列保留字在C中是()(a) fopen (b)包括(c) get (d) unsigned 困难:2.018。
在循环语句的循环体中,break语句的功能是()。
(a)在break 语句之后继续执行循环体的语句,(b)提前结束循环,然后执行循环后的语句,(c)结束当前循环,(d)暂停程序运行,以及(c)困难: 更容易得分:2.019。
全国大学生c语言设计大赛初赛试题及答案全国大学生C语言设计大赛初赛试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A3. C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. /答案:B4. 下列哪个选项是正确的C语言注释?A. // 这是一条注释B. /* 这是一条注释 */C. /* 这是一条注释D. // 这是一条注释答案:A5. 在C语言中,以下哪个选项表示一个无限循环?A. for(;;)B. while(1)C. do{}while(0)D. all of the above答案:D6. C语言中,以下哪个函数用于打开文件?A. fopen()B. fclose()C. freopen()D. remove()答案:A7. 以下哪个选项是C语言中的布尔类型?A. intB. floatC. charD. bool答案:D8. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable_2D. all of the above答案:C10. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strcmp()D. strlen()答案:A二、填空题(每题2分,共20分)1. 在C语言中,字符型数据在内存中的存储形式是______。
答案:ASCII码2. C语言中,用于定义一个整型数组的关键字是______。
2022年武昌理工学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。
5、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。
5x7+3x6-4x5+2x1+x3-6x2+x+106、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。
7、下面程序段中循环体的执行次数是_______。
a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);8、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。
9、设有以下宏定义:#define WIDTH 80#define LENGTH WIDTH+40则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。
10、下面程序段的运行结果是_______。
char*s1="AbcdEf", *s2="aB";int t;s1++;t=(strcmp(s1,s2)>0);printf("%d\n",t);二、选择题11、下面4个选项中,是C语言关键字的选项是( )。
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………武汉理工大学考试试卷(A卷)2012 ~2013 学年2 学期计算机程序设计基础(C语言)课程闭卷一、选择题(本题20分,每小题1分)则表达式(b=2, a=5, b++, a+b)的值是()2. 设int a=7; float x=2.5, y=4.7;, 则表达式x+3%(int)(x+y)/4的值是()A. 2.75B. 3.5C. 2.5D. 0.03. 设char cl; , 则cl为小写英文字母字符的正确表达式为()A. ’a’<=c1<=’z’B. (cl>=’a’)&&(cl<=’z’)C. (cl>=a)&&(c1<=z)D. (’a’<=c1)| |(’z’>=c1)4. 一维数组a的正确说明语句为()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. 已知字符’A’的ASCII码值是65,且char cl=’A’, c2=’D’;则执行语句printf(″%d,%d\n″,cl,c2-2);后的输出结果是()A. A, DB. A, BC. 65, 68D. 65, 666. 正确的条件语句为()A. if((a=b;)>0)t=a;B. if((a=b)>0)then t=a;C. if(a>b)t=a;D. if(a<b={a++;b++});7. 若有下列程序段:int x=l, y=2;x=x+y;y=x-y;x=x-y;则执行后x和y的值分别为()A. 1和2B. 2和2C. 2和1D. 1和117.…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………。
一、单选(共计100分,每题2.5分)1、若已定义int a=11; 执行以下语句后的输出结果是()。
printf("a=%d,a=%o,a=%x\n",a,a,a) ;A. a=11, a=11, a=bB. a=11, a=13, a=bC. a=11, a=13, a=cD. a=11, a=12, a=132、A.B.C.D.3、以下程序运行后,文件test.txt的内容是()。
#include <stdio.h> main() { FILE *fp; char str[][10]={"first","second"}; fp = fopen("test.txt", "w"); if(fp!=NULL) fprintf(fp,"%s",str[0]); fclose(fp); fp = fopen("test.txt", "w"); if(fp!=NULL) fprintf(fp,"%s",str[1]); fclose(fp); }A. firstB. secondC. first secondD. second first4、若有以下定义:struct node { int data; struct node *next; } struct node *head,*p; 已建立如下图所示的链表: p ↓┌──┬──┐┌──┬──┐┌──┬──┐head →│data│next┼→│data│next┼→... →│data│NULL│└──┴──┘└──┴──┘└──┴──┘能删除指针p所指向结点的程序段是()。
A. p = p->next; head->next=p->next; free(p);B. free(p); p = p->next; head->next=p->next;C. head->next = p->next; free(p);D. free(p); head->next = p->next;5、若有定义:int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a; ,则()表达式是错误的。
武汉理工大学《C语言程序设计》期末考试试卷(A卷)(2011级各专业)一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是。
A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是A、ABCB、abcC、a_bcD、ab。
c3、一个C语言程序是由。
A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性"等5个特性,对另外4个特性的描述中错误的是A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是。
A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR〉表示回车),x的值是 .#include<stdio.h>main(){int x;float y;scanf(”=%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b;float x,则正确的赋值语句是 .A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是 .#include〈stdio.h>{ int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是。
#include〈stdio。
h>main(){ char c1='A',c2='Y';printf("%d,%d\n”,c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是 .A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。
三.判断改错(对打“√”,错打“×”并改正或说明错误原因,每小题2分,共10分)
1.若有int x=1;float y; 则执行y=(float)x;x=(float)x;后,变量x和y所具有的值的类型、大小一样。
错,类型不一致
2.char str1[ ]={‘H’,’o’,’w’, ‘ ’,’a’, ‘r’,’e’, ‘ ‘,’y’,’o’, ‘u’ }; s数组有12个元素,且s[11]为’\0’。
错,s数组有11个元素,且s[10]为’u’,s[11]不确定。
3.若有float b[3][4];则相应的键盘输入语句应写为:
for(i=0;i<3;i++) for(j=0;j<4;j++) scanf(“%f”,&b[0][4*i+j]);,
即用数组元素偏移量表示法。
对
4.将unsigned int型赋值予long型变量时,Turbo C采用算术符号扩展。
错,Turbo C采用逻辑扩展
5.while语句中的表达式只能是关系表达式或者逻辑表达式。
错,可以是任意表达式
四.阅读下列各程序,写出其运行结果(共20分)运行时,输入你的姓氏的汉语拼音,结果是什么?#include "stdio.h"
#include "string.h"
main()
{ char t,a[20];
int i,j,s;
gets(a);
s=strlen(a);
printf("%s",a);
t=a[0];
for (i=1;i<s;i++)
t=t>a[i]?t : a[i];
printf("%c\n",t);
}
输出该汉语拼音并输出ASCII码值最大的字母
3. main()
{ int a[3][3]={1,3,5,9,7,2,4,6,8},i,j,m,mi,mj; m=a[0][0];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(m<a[i][j]){m=a[i][j];mi=i;mj=j;}
printf("a[%d][%d]=%d\n",mi,mj,a[mi][mj]); }
a[1][0]=9
5. #define N 9
main()
{ int i,s=0,a[N]={1,2,3,4,5,6,7,8,9};
for(i=0;i<6;i++)
s+=a[i];
printf("%f %d\n",s/2.0,s);
}
10.500000 21
2.任意给定20个各不相同的整数,编程完成以下
功能:(10分)
①计算平均值、找出最大值和最小值,并输出。
②按降序排序并输出。
2.main()
{ int a[20],i,j=0,max,min,t;
float aver;
scanf("%d",&a[0]);aver=a[0];
max=a[0];min=a[0];j=a[0];
for(i=1;i<20;i++)
{ scanf("%d",&a[i]);
aver+=a[i];
if(a[i]>max)max=a[i];
if(a[i]<min)min=a[i];
}
aver=aver/20;
printf("aver=%f max=%d min=%d\n",aver,max,min); for(i=0;i<19;i++)
for(j=i+1;j<20;j++)
if(a[i]<a[j]) {t=a[i];a[i]=a[j];a[j]=t;}
for(i=0;i<20;i++) printf(" %d ",a[i]);
}
3.long jc(int n) {
static long t=1;
t*=n+1;
return t;
}
main()
{
int i,t=1;
float sum=0;
for(i=1;i<=10;i++)
{ sum+=(float)i*t/ jc(i); t=-t;
}
printf(" %f ",sum);
}。