南京工程学院C语言试卷3
南京工程学院2022年电子知识竞赛试题
南京工程学院2022年电子知识竞赛试题单项选择题(本部分共有15道小题,每小题2分,满分为30分)您的班级姓名(例如自动化181张三): [填空题] *_________________________________1、以下选项中合法的标识符是()。
[单选题] *A.o115(正确答案)B.0118C.1.5e1.5D.115L2、C 语言时隔五年后再次荣登最流行编程语言榜单第一名。
通过调查得出结论,C 语言再次受欢迎的原因竟然是因为疫情,虽然这听起来愚蠢但确实是事实,嵌入式语言 C 和 C++ 被用于医疗设备中的幅度因为疫情而增加。
c语言在如今的科技领域已经被广泛运用,他的设计者是() [单选题] *A.丹尼斯·里奇B.詹姆斯·高斯林C.吉多·范罗苏姆(正确答案)D.肯·汤普逊3、设有int i,j; 则下列程序段的循环体 for(i=5;i;i--) for(j=0;j<4;j++) ;执行次数是() [单选题] *A.5B.4C.20(正确答案)D.无限次4 有以下程序 #include〈stdio.h〉…………… #include〈string.h〉……………………………main( )………….………………………………… { char str[][20]={"One World" , "One*Dream!"}, *p=str[1];……………….. printf("%d,", strlen(p)); printf("%s\n",p); } [单选题] *A.10,One*Dream!;(正确答案)B. 9, One*Dream!C.9, One*WorldD. 10, One*World5、在闭合电路中,电源端电压随负载的增大而()。
[单选题] *A. 减小(正确答案)B. 增大C. 不变D. 不确定6、空心线圈的自感系数与()有关 [单选题] *A.通过线圈电流的方向B.周围环境温度C. 线圈的结构(正确答案)D. 通过线圈电流的时间长短7、如图所示含理想变压器电路,S是电导的单位图1-1-5则ab端的等效电阻为() [单选题] *A.1/2 Ω(正确答案)B.2/3 ΩC.1/8 ΩD.1 Ω8、图1-1-6所示电路中,us=100+60cos(ωt+30°)+20cos(3ωt+30°)V,ωL1=3Ω,1/(ωC1)=27Ω,ωL2=1/(ωC2)=6Ω,R=10Ω,图1-1-6 则R消耗的功率P为()W [单选题] * A.1180B.1020C.200D.1000(正确答案)9. 某个处于放大状态的电路,当输入电压为10mV ,输出电压为6.5V,输入电压为15mV 时,输出电压为7V (以上均为直流电压),它的电压增益为() [单选题] *A. 700B. 650C. 100(正确答案)D. -10010.温度升高后,在纯半导体中,其电子、空穴变化为() [单选题] *A. 自由电子和空穴数目都增多,且增量相同(正确答案)B. 空穴增多,自由电子数目不变C. 自由电子增多,空穴数目不变D. 自由电子和空穴数目都不变11.检修某台无使用说明书的电子设备时,测得三极管各电极对地电压数据为VB=-0.2V,VC=-5V, VE=0, 则该三极管为() [单选题] *A.NPN 型,锗管B.PNP型,锗管(正确答案)C.NPN型,硅管D.PNP型,硅管12.有二只半导体三极管,A管子的β=200,IcEo=240μA,B管子的β=100,IcEo =20μA其他参数一样,则管子的好坏为() [单选题] *A. 均一样B. A管好C. B管好(正确答案)D. 无法判别13、逻辑函数L(A,B,C)=(A+B)(B+C)(A+C)的最简与或表达式为() [单选题] *A.(A+C)B+ACB. AB+(B+A)C. A(B+C)+BCD. AB+BC+AC(正确答案)14.同步计数器和异步计数器比较,同步计数器的最显著优点是() [单选题] *A.工作速度高B.触发器利用率高C.电路简单(正确答案)D.不受时钟CP控制15.N个触发器可以构成能寄存多少位二进制数码的寄存器?() [单选题] *A.N-1B.N(正确答案)C.N+1D.2N二、多项选择题(本部分共有10道小题,每小题3分,满分为30分)16以下叙述中正确的是(). *A.一个C源程序可由一个或多个函数组成(正确答案)B.一个C源程序必须包含一个main()函数(正确答案)C.C源程序的基本组成单位是函数(正确答案)D.在C源程序中,注释说明只能位于一条语句的最后17.以下不合法的赋值语句是(). *A.x=y=100(正确答案)B.d--;C.x+y;(正确答案)D.c=int(a+b);(正确答案)18.复杂电路中求多个支路电流所用的方法有(). *A.支路电流法(正确答案)B.戴维南定理C.节点电压法(正确答案)D.叠加原理(正确答案)19.磁场中与磁介质的磁导率有关的物理量是()。
C语言上机题库百科园第3章!南信大
第三章1.为表示关系x≥y≥z,应使用的表达式是A.(x>=y)&&(y>=z)B.(x>=y>=z)C.(x>=y)AND(y>=z)D.(x>=y)&(y>=z)2.有以下程序main(){ int i;for(i=0; i<3; i++)switch(i){ case 1: printf("%d", i);case 2: printf("%d", i);default : printf("%d", i);}}执行后输出结果是3.对 for(表达式1; ;表达式3) 可理解为()。
(表达式1;1;表达式3)(表达式1;0;表达式3)(表达式1;表达式1;表达式3)(表达式1;表达式3;表达式3)4.若i为整型变量,则以下循环执行次数是()。
for(i=2;i==0;) printf("%d",i--);次次C.无限次次5.有以下程序段int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是______。
的值等于12345并且n的值大于等于3的值不等于12345并且n的值小于3的值不等于12345或者n的值小于3的值等于12345或者n的值大于等于36.有以下程序段int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);以下描述中正确的是()。
循环中,根据情况可以省略 whileB.由于 do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句循环由do开始,用while结束,在 while(表达式)后面不能写分号D.在 do-while 循环体中,一定要有能使 while 后面表达式的值变为零("假")的操作7.执行语句 for(i=1;i++<4;); 后变量 i 的值是()。
C语言程序设计试题及答案
2001~2002学年“C语言程序设计基础”试卷试题一、单项选择题(每小题 2 分,共20 分)1.C 语言程序的三种基本结构是顺序结构、选择结构和______结构。
A、循环B、递归C、转移D、嵌套2.若x是单精度实型变量,表达式(x = 10/4) 的值是_____ 。
A、2.5B、2.0C、3D、 23. 表达式!x 等价于_____。
A、x==0B、x==1C、x != 0D、x != 14.若变量已正确定义且k 的值是4,计算表达式( j = k--) 后,_____。
A、j=3, k=3B、j=3, k=4C、j=4, k=4D、j=4, k=35. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为_____。
A、算术运算、赋值运算、关系运算B、关系运算、赋值运算、算术运算C、算术运算、关系运算、赋值运算D、关系运算、算术运算、赋值运算6.C语言中,形参的缺省的存储类说明是______。
A、autoB、staticC、registerD、extern7.下列语句定义pf为指向float类型变量f的指针,_____是正确的。
A、float f, *pf = f;B、float f, *pf = &f;C、float *pf = &f, f;D、float f, pf = f;8.表达式sizeof(“key”) 的值是______。
A、1B、2C、3D、49.将程序prog.c编译后运行:prog –nla hello world 则*(*(argv+2)) 是______。
A、’p’B、‘-‘C、‘h’D、‘w’10.若a是整型变量,表达式~(a ^ ~a ) 等价于______。
A、~aB、1C、0D、2试题二、填空题(每小题 3 分,共24 分)1.写出语句printf ("%d, %o, %x", 0x12, 12, 012); 的输出结果。
三级C语言100题上机考试题库
全国计算机等级考试三级C语言程序设计南开100题上机考试题库【终极无错版】【注:三级除PC技术考汇编外,其它均考C语言,其上机题库是一样的】【这是最经典的04版,我仔细比照了所谓的06版题库及08版上机模拟软件中的题,其实都是04版的。
09年笔试大纲有变动,但是机试题库应该不会换,因为再编个南开100题〔库〕没有必要,也很累,还不能保证正确性〔起码要经过多番验证才能投入使用〕。
参加09年三级考试的朋友请放心使用。
就算变动也不过是把改一下个别数组名、把“升序排列〞改为“降序排列〞、把“从小到大〞改为“从大到小〞等,所以请大家消除疑虑,放心使用】资料收集整理:(以后该网站将发布〔收集和原创〕计算机二三级资源、电脑常见问题的解决视频教程、网络相关问题文章,如果你遇到了电脑、网络方面的问题可以到这来查找视频和图文教程或咨询,也欢送高手来此帮助他人解决问题)下载地址:〔有自带VC++的上机系统下载〕题目前带★号的是在2004年4月份考试被考生们所确定了的上机题。
题目前带☆号的是在2004年9月份考试被考生们所确定了的上机题。
05年后抽到的题没作标识。
题目中所提示的“无忧id xx〞指的是2004年上半年版无忧模拟系统中的固定抽题序号题目中所提示的“捷成id xx〞指的是2004年上半年版捷成模拟系统中的固定抽题序号********************************题目1〔无忧id 14、id 27(提供isP()函数;捷成id 23题)请编写一个函数jsValue(int m,int k,intxx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。
最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件中。
局部源程序存在文件中。
例如:假设输入17 5 那么应输出:19,23,29,31,37。
请勿改动主函数main()和写函数writeDat()的内容。
C语言上机题库百科园第优选章南信大
第三章1.为表示关系x≥y≥z,应使用的表达式是A.(x>=y)&&(y>=z)B.(x>=y>=z)C.(x>=y)AND(y>=z)D.(x>=y)&(y>=z)2.有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}执行后输出结果是3.对for(表达式1;;表达式3)可理解为()。
(表达式1;1;表达式3)(表达式1;0;表达式3)(表达式1;表达式1;表达式3)(表达式1;表达式3;表达式3)4.若i为整型变量,则以下循环执行次数是()。
for(i=2;i==0;)printf("%d",i--);次次C.无限次次5.有以下程序段intn=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是______。
的值等于12345并且n的值大于等于3的值不等于12345并且n的值小于3的值不等于12345或者n的值小于3的值等于12345或者n的值大于等于36.有以下程序段intn=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);以下描述中正确的是()。
循环中,根据情况可以省略whileB.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句循环由do开始,用while结束,在while(表达式)后面不能写分号D.在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作7.执行语句for(i=1;i++<4;);后变量i的值是()。
C语言上机题库百科园第4章!南信大!
第四章单选有以下程序,程序运行后的输出结果是( )#include<stdio.h>int fun (int x,int y){ if (x!=y) return ((x+y)/2);else return (x);}int main(){ int a=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c))); return 0;}A.12B.6C。
3 D。
8有以下程序,程序运行的输出结果( ) #include <stdio.h>int f(int x);int main(){int n=1,m;m=f(f(f(n))); printf(“%d\n”,m);return 0 ;}int f(int x){return x*2;}A.8B.4C.1D.2有以下程序,程序执行后变量w中的值是( ) #include<stdio。
h>int funl(double a){return a*=a;}int fun2(double x,double y){double a=0,b=0;a=funl(x);b=funl(y);return (int)(a+b);}int main(){double w;w=fun2(1.1,2.0);……}A。
5。
21 B。
0.0 C。
5。
0 D.5有以下程序,程序运行后的输出结果是()#include<stdio。
h〉int fun(){ static int x=1;x*=2;return x;}int main(){int i,s=1;for(i=1;i〈=3;i++) s*=fun();printf(”%d\n”,s);}A。
10 B。
64 C。
0 D。
30有以下程序,程序运行后的输出结果是( )#include<stdio。
h>int f(int x,int y){return ((y-x)*x);}int main(){int a=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf(”%d\n",d);}A.10 B。
大学《C语言》试题及参考答案
(2)编写程序输出1-1000之间能够被5整除的所有整数,并求出这些整数的和输出。
(3) 从键盘输入10个正的整数,找出其中的素数输出。
答: #include#includeint f(int x){int i;for(i=2;i<=sqrt(x);i++)if(x%i==0) return 0;return 1}void main(){int a[10],i,n=0,j,t;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if( f(a[i]) n++;else a[i]=0;for(i=0;i<9;i++)for(j=0;j<9-i;j++)if( a[j]<A[J+1] ) {t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("共有%d个素数,它们是:",n);(4)编写程序打印下列图案答:#include "stdio.h"void main() {for (int i = 0;i <= 4;i++) {for (int j = 0;j <= i;j++) { printf("*");}printf("\n");}}(5)写一个函数计算一个字符串的长度,再写一个测试函数测试其功能。
不允许使用strlen函数答:#include "stdio.h"void convert(char *str){for (int i = 0; str[i] != '\0'; i++) {if (str[i] >= 'A' && str[i] <= 'Z') {str[i] = str[i] - 'A' + 'a';}}}int main(){char str[20] = "aZcdABxDEF123";convert(str);printf("%s\n", str);return 0;}(6)从键盘上任意输入50个整数存放在a数组中,找出a数组中所有偶数存放在数组b 中,并对b数组的值按降序排列。
南京工程学院C语言试卷3
一、单项选择题(共20小题;每小题1分,共20分)
1、下列常量不合法的是()。
A.1.5E-2 B.‘BASIC’C.0x12 D.“\\good”
2、下列变量名中不合法的是()。
A.iCount B.Stu_NO C.INT D.vc++
3、设变量已正确定义并赋值,以下正确的表达式是()。
A.b=7++ B.x=3,++y C.a=7%3.0 D.x=y+1=2
C.int arr[3][3]={0}; D.int arr[2][3]={1,2,3,4,5,6,7,8};
15、若有定义语句:char s[]="hello\0theworld";,则strlen(s)的值是()。
A.5 B.6 C.14 D.15
16、有定义int i=88,j=99,*p,*q;p=&i;q=&j; p=q;则printf("%d %d",*p,*q)结果是()。
A. c1^c2B. c1&c2 C.~c2D. c1|c2
13、若有以下定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是()。
A.m[i] B.m[2*2] C.m[m[0]] D.m[m[i]]
14、以下对二维数组arr的定义正确的是()。
A.int arr[5][]={1,2,3}; B.int arr[][1]={{1,2,3},{4,5,6}};
A.88 88 B.88 99 C.99 99 D.99 88
17、已知有定义int a[8]={0},*p=a;,则不能表示a[1]元素的值的是()。
C语言程序设计-试题集及答案
单项选择题 (002)阅读程序题 (018)程序填空题 (039)编写程序题 (070)一、单项选择题导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。
本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。
在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。
对于掌握不准的问题,应该通过上机实验来检验。
【1.1】以下不正确的C语言标识符是____。
A) int B) a_1_2 C) ab1exe D) _x【1.2】以下是正确的C语言标识符是____。
A) #define B) _123C) %d D) \n【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。
••• A) print B) i\am C) Pxq D) str_l••• _3d one_half My->book Cpp••• oodbs tart$it line# pow••• aBc 3pai His.age while【1.4】下面各选项组中,均是C语言关键字的组是。
A) auto,enum,include B) switch,typedef,continueC) signed,union,scanf D) if,struct,type【1.5】下列不属于C语言关键字的是。
A) default B) register C) enum D) external【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始B) 程序文件的最后C) 它所调用的函数的前面D) 程序文件的任何位置【1.7】下列关于C语言的叙述错误的是____A) 大写字母和小写字母的意义相同B) 不同类型的变量可以在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D) 同一个运算符号在不同的场合可以有不同的含义【1.8】在C语言中,错误的int类型的常数是。
三级上级南开100题
全国计算机等级考试三级C 语言上机100题2005年9月最新修订版由木易修订发布于欣宇排版上传于啄木论坛几点说明:1、题目标题号前用“☆”显示的是2005年4月份根据各大论坛考生反聩的题号集中而来,题号前加“★”为2005年9月上机考试题,此类标明,仅供参考。
2、每种题目,只用一种解题方法,蓝色加粗部分为解题答案,此种方法容易理解,不易出错,适合初学者。
3、特别说明:所有解法均上机验证通过。
**********************************☆题目1请编写一个函数jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数m 且紧靠m 的k 个素数存入数组xx 传回。
最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件out.dat 中。
部分源程序存在文件prog1.c 中。
例如:若输入17 5 则应输出:19,23,29,31,37。
请勿改动主函数main()和写函数writeDat()的内容。
#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;`}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:"); scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i; FILE *rf,*wf; rf=fopen("in.dat","r"); wf=fopen("out.dat","w");for(i=0;i<10;i++){ fscanf(rf,"%d %d",&m,&n); num(m,n,xx); for(m=0;m<n;m++)fprintf(wf,"%d",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}********************************* ☆题目2已知数据文件IN.DA T 中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt ,并把这些四位数按从大到小的顺序存入数组b 中。
大学C语言考试题库(含答案)
单项选择==================================================题号:1482执行以下程序段后,输出结果和a的值是()。
int a=10; printf("%d",a++);A、11 和 10B、11 和 11C、10 和 11D、10 和 10答案:C题号:2100已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号:5055相同结构体类型的变量之间,可以()。
A、比较大小B、地址相同C、赋值D、相加答案:C题号:3217int a[10];合法的数组元素的最小下标值为()。
A、1B、0C、10D、9答案:B题号:45能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是A、a>=0 | a<=10B、a>=10 or a<=0C、a>=10 && a<=0D、a>=10 || a<=0答案:D题号:157main(){int x=1,a=0,b=0;switch (x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( )A、2,2B、2,1C、1,1D、1,0答案:B题号:4784设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。
A、不确定B、doubleC、intD、float答案:B题号:1647以下程序中,while循环的循环次数是______main(){int i=0;while(i<10){if(i<1) continue;if(i==5) break;i++;}}A、死循环,不能确定次数B、6C、4D、1答案:A题号:191若有说明语句:char c='\72';则变量c()。
C语言练习题4
一、单项选择题(共20小题;每小题1分,共20分)
1、一个C语言程序由()组成。
A.子程序B.过程C.函数D.主程序
2、若以下选项中的变量已正确定义,则正确的赋值语句是()。
A.x1=26.8%3 B.1+2=x2 C.x3=0x12 D.x4=1+2=3;
3、以下符合C语言语法的实型常量是()。
A.1.2E0.5 B.3.14159E C.E15 D.0.5E-3
4、以下不能正确表示代数式2ab/(cd) 的C语言表达式是()。
A.2*a*b/c/d B.a*b/c/d*2 C.a/c/d*b*2 D.2*a*b/c*d
5、设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()。
A.k++ B.k+=1 C.++k D.k+1
6、若有以下函数首部int fun(double x[10],int *n)则下面针对此函数声明语句中正确
的是()。
A.int fun(double x,int *n); B.int fun(double ,int);
C.int fun(double*x,int n); D.int fun(double *,int*);
7、若i为整型变量,则以下循环体执行次数是()。
for(i=2;i==0;) printf("%d",i--);
A.无限次 B. 0次 C. 1次 D. 2次
南京工程学院试卷共8 页第2 页
南京工程学院试卷共8页第6 页。
南工程c++考试试卷
一、选择题1、C++语言相对于C语言的最根本的变化是( )。
A、增加了一些新的运算符B、允许函数重载,并允许设置缺省参数C、规定函数说明符必须用原型D、引进了类和对象的概念2、对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是( )。
A、公有类型B、私有类型C、保护类型D、友元类型3、如有类声明:class Myclass { int data; };则Myclass类的成员data是( )。
A、公有数据成员B、公有成员函数C、私有数据成员D、私有成员函数4、在下面的函数声明中,( )是“void BC(int a,int b)”的重载函数。
A、int BC(int a,int b)B、void BC(int a , char b)C、float BC(int a ,int b,int c=0)D、void BC(int a , int b=0)5、下列说法正确的是( )。
A、内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B、内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C、类的内联函数必须在类体内定义D、类的内联函数必须在类体外通过加关键字inline定义6、下列各种函数中,( )不是类的成员函数。
A、构造函数B、析构函数C、友元函数D、复制构造函数7、下面对静态数据成员的描述中,正确的是( )。
A、静态数据成员可以在类体内进行初始化B、静态数据成员不可以被类的对象调用C、静态数据成员不能受private控制符的作用D、静态数据成员可以直接用类名调用8、假定Myclass是一个已定义好的类,则执行Myclass obj1,obj2[2],*p; 语句时,会自动调用该类构造函数( )次。
A、1B、2C、3D、49、在下列函数原型中,可以作为类AA构造函数的是( )。
A、void AA(int);B、int AA( );C、AA(int)const;D、AA(int);10、对于任意一个类,析构函数的个数最多为( )。
2022年南京工程学院公共课《C语言》科目期末试卷B(有答案)
2022年南京工程学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。
union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);2、一个C语言源程序由若干函数组成,其中至少应含有一个________3、C语言源程序的基本单位是________4、在C语言的赋值表达式中,赋值号左边必须是_______5、假设m是一个3位数,从左到右依次用a、b、c表示各位的数字,则从左到右各位数字是b、a、c的3位数的表达式是_______。
6、与表达式x^=y-2等价的另一书写形式是_______。
7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、设有以下宏定义:#define WIDTH 80#define LENGTH WIDTH+40则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。
9、下面程序段将输出computer。
请填空。
char c[]="It is a computer";for(i=0;_______;i++){_______;printf("%c",c[j]);}10、下面程序段的运行结果是_______。
char s[20]="abcd";char*sp=s;sp++;puts(strcat(sp,"ABCD"));二、选择题11、下面4个选项中,是不合法的整型常量的选项是 ( )。
A.--0f1B.-0XcdfC.-018D.-0x48eg0xfff 017 999 -0680011 12.456 5e2 03f12、下面4个选项中,是非法常量的选项是( )。
C语言试题+提纲
计算机应用(C语言):100分一、选择题;二填空题;三、判断题;四、根据程序写出结果;五、补充完善程序;根据题目要求完善程序;计算机应用上机(C语言):100分共3道大题,其中自定义函数并调用一定存在,主要参考实验、典型例题以及少量自编考试题。
计算机应用和应用上机(C语言)fx提纲第一章1、C语言的特点2、C语言的基本操作与常使用的快捷键等visual Studio6.0环境:原程序、编译、组建和运行后程序的后缀和快捷方式分别为??(visual C++6.0环境下执行相对应的操作后左下角显示后缀名)第二章1、算法的定义与特点一个算法应该具有以下特点:___、______,零个或多个输入,一个或多个输出,___ __。
2、表示算法的常用方法3、结构化程序设计的基本结构结构化程序设计的三种基本程序结构为_______、___ _____、___ _____。
第三章1、常用的数据类型(int,float和char)以及不同数据类型占用的字节数和有效数字和有效范围(输出结果)visual C++6.0中数据类型float的数占的字节数为( ) 。
A)1 B)2C)4 D)32、正确与错误的标识符的判定——正确条件:(1)只能使用字母、数字和下划线_;(2)首字符只能是字母或下划线_;(3)不能使用关键字作为标识符;正确的自定义标识符是()A) #33 B) a>bC) tt D) 3days3、常量、变量等的定义4、字符常量的特殊符号(如\)和转义符号的正确判断——(1)注意特殊转移字符如\n,\t,\v,\\,\‘等;(2)注意\ddd和\xhh,其中ddd只能是3位八进制的数0-7,hh是2位16进制的数,0-9和A,B,C,D,E,F错误的转义字符是( ) 。
A)'\091' B) '\\'C) '\0' D) '\'''以下常用转义符号代表换行的是( ) 。
南工程 C语言复习题题库(答案在最后)
南工程 C语言复习题题库(答案在最后)C语言程序设计复习题库(答案在最后)一、单项选择题1. 下列合法的常量是( )A.1e-5 B.3.0e3.0 C.1e5.0 D.e102. 下列合法的变量名是( )A.intB._intC.2cD.c-d3. 下列不属于C语言基本数据类型的是( )A.字符型B.浮点型C.整型D.逻辑型4. 转义字符“反斜杠”的正确表示是( )A.'\\'B.'\\\\'C.\D.\5. 以下运算符为单目运算符的是( )A.!B.&&C. %D.?:6.对于一个正常运行的C程序,以下叙述中正确的是() A. 程序的执行总是从main函数开始,在main函数结束 B. 程序的执行总是从程序的第一个函数开始,在main函数结束 C. 程序的执行总是从main函数开始,在程序的最后一个函数中结束 D.程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束 7.若有定义:int a=8; float x=1.5; 则表达式x+a/3的值是() A. 4.500000 B. 4.166667 C.3.500000 D. 0.000000 8.以下不能正确计算代数式11sin2()值的C语言表达式是() 32����A.1/3*sin(1/2)*sin(1/2) B.sin(0.5)*sin(0.5)/3�� C.pow(sin(0.5),2)/3 D.1/3.0*pow(sin(1.0/2),2) 9.下列条件语句中,功能与其他语句不同的是() A. if(a) printf(\else printf(\B.if(a==0) printf(\else printf(\C. if (a!=0) printf(\else printf(\D. if(a==0)printf(\else printf(\ 10.变量已正确定义,有以下程序段,其输出结果是()第 1 页共 1 页A. 程序段有语法错B. 1,2,1C. 1,2,2D. 1,2,3 inta=1,b=2,c=3; if(a>b) a=b; c=a;if(c!=a) c=b;printf(\11.有宏定义:#define f(x) x*x,则表达式f(2+2)/f(1+1)的值为( )A.2B.10C.3D.412.C语言中while和do-while循环的主要区别是() A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体内 D. do-while的循环体不能是复合语句13.在C程序中用做用户标识符的一组标识符是() A. and _2021B. Date y-m-dC. Hi Dr.TomD. default Bigl14.设有程序段int k=10; while(k=0) k=k-1;则下面叙述中正确的是( A. while 循环执行10次C.循环是无限循环B. 循环体语句一次也不执行D.循环体语句执行一次15.函数调用语句func((exp1,exp2),(exp3,exp4,exp5))含有实参个数(A.1B. 2C. 4D. 516.在C语言中,以下正确的描述是()A. 函数的定义可以嵌套,但函数的调用不可以嵌套B. 函数的定义不可以嵌套,但函数的调用可以嵌套C. 函数的定义和函数的调用均不可以嵌套D. 函数的定义和函数的调用均可以嵌套 17.以下对一维整型数组a的正确定义是() A. int a(10);B. int n=10,a[n];C. int n;D. #define N 10scanf(\ int a[N]; int a[n]; 18.下面是对字符数组s的初始化,其中不正确的是()第 2 页共 2 页))A. char s[5]={\C.char s[5]=\D.char s[]=\19.下选项中,合法的一组C语言常量是() A. 027 5e-3‘\\\\’ B. 12 “ABC” 4.5e0 C.4c1.5 177 Oabc D. 0x8A 10,000 3.e5 20.断字符串a和b是否相等,应当使用()A. if(a==b)B. if(a=b)C. if(strcpy(a,b))D.if(strcmp(a,b)) 21.如下语句 int a=10,b=20,*p1,*p2; p1=&a; p2=&b; 若要让p1也指向b,可选用的赋值语句是() A. *p1=*p2;B. p1=p2;C. p1=*p2;D. *p1=p2;22.计算表达式48/3的值是( )A.1.25B.1C.1.0D.223.正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( )A.a>=10 or a<=0 C.a>=10 && a<=0B.a>=10| a<=0 D.a>=10||a<=024.有定义语句:int x;float y;,则正确的输入语句是( )A.scanf(\C.scanf(\25.十进制整数-1的补码表示为()A. 1111111111111111B. 1000000000000001C. 0000000000000001D. 1111111111111110 26.下列常量中合法的是()A . 1e4.0 B. 0xabc C. 0128 D. ∏ 27.若有以下结构体定义,则下列哪项引用是正确的()struct info { int m; int n; }v;A. v.m=10;v.n=20; B.v={10,20}; C.v=10,20; D.v->m=10;v->n=20; 28.设有定义语句:char c1=7,c2=7;则以下表达式中值为零的是()第 3 页共 3 页B.scanf(\D.scanf(\A. c1^c2B. c1&c2C. ~c2D. c1|c229.定义 int x;float y; 正确的输入语句是()A. scanf(\C. scanf(\30. 在C语言中,int型数据在内存中以( )形式存放A.补码B.BCD码 C.反码D.原码31. 在C语言中,用关键字( )定义无符号型变量。
2022年南京工程学院公共课《C语言》科目期末试卷A(有答案)
2022年南京工程学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、请读以下函数:getbits(unsigned x,unsigned p,unsigned n)'{x=((x<<(p+1-n))&((unsigned)~0>>n));return(x);}假设机器的无符号整数字长为16位。
若调用此函数时x=0115032,p=7,n=4,则函数返回值的八进制数是_______。
2、结构化程序由________、________ 、________ 3种基本结构组成。
3、在C语言源程序中,一个变量代表【】。
4、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。
5、设a、b、c均为int类型变量,请用C语言的表达式描述以下命题。
(1)a或b中有一个大于c_______(2)a、b和c中只有2个为正数_______(3)c是偶数_______6、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(k=0;k<10;k++) printf("%d,",_______); printf("\n");7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
C语言程序设计试题附答案3篇
C语言程序设计试题附答案3篇C语言程序设计试题附答案11. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'; B float a=b=10.0;C)int a=10,b= D)float a,b=4.下列选项中,不能用作标识符的是( D )A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 ( B )A)称为函数的直接递归调用 B)称为函数的间接递归调用C)称为函数的循环调用 D)C语言中不允许这样的递归调用6.以下叙述中正确的是 ( A )A)局部变量说明为static存储类,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同7.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是( B)A)for(i=1,p=1;i=0_______;i--){if(____i%17==0____④________) break;}printf("%d\n",__⑤_i____);}3.以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。
main(){ int i,a[20],sum,count;sum=count=0;for(i=0;i0)?? { count++;?? sum+= _a[i]__③___ ;?? }? }printf("sum=%d,count=%d\n",__sum④___,__⑤__count___);}4.以下程序的功能是调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果。
南工程c++ 试卷三
一、选择题 1. 在面向对象程序设计中,实现信息隐蔽是靠( )。
A.对象的继承 B. 对象的封装 C. 对象的分类 D.对象的多态 2. 下面关于类概念的描述中, )是正确的。
( A.要为类分配存储空间 B. 类是一种自定义数据类型 C. 类与对象没有区别 D. 一个类只能有一个对象 3.int Func(int,int);不可与下列( )函数构成重载。
A.int Func(int,int,int); B.double Func(int,int); C.double Func(double,double); D.double Func(int,double); 4. 用 class 定义的类中的成员默认情况下是( ) 。
A.public B. private C. auto D. static 5. 关于成员函数的描述中, )是错误的。
( A. 成员函数可以设置参数的默认值 B. 成员函数必须在类的内部定义 C. 成员函数可以重载 D. 成员函数可以直接访问类的保护成员 6. 在下列关键字中, )是保护访问权限。
( A. template B. protected C. private D. public 7. 下面关于构造函数的说法中正确的是( ) 。
A.构造函数名与类名不同 B.构造函数可以有返回值 C.构造函数参数不能有默认值 D. 构造函数可以重载 8.下面说法中正确的是( )。
A.一个类只能定义一个构造函数和一个析构函数 B.一个类只能定义一个构造函数,但可以定义多个析构函数 C.一个类可以定义多个构造函数,但只能定义一个析构函数 D.一个类只能定义多个构造函数,也可以定义多个析构函数 9. 类 example 的析构函数声明为( )。
A.example() B. example(); C. ~example() D. ~example(); 10. 假定 MyClass 为一个类,则该类的拷贝构造函数的声明语句为( )。
c语言程序设计编程题库及详解答案
c语言程序设计编程题库及详解答案C语言是一种通用的编程语言,广泛用于系统软件、应用程序和嵌入式系统开发。
C语言以其高效性和灵活性而著称,是许多编程语言的基础。
下面,我将提供一些C语言程序设计编程题库的题目及其详解答案。
题目一:计算圆的面积问题描述:编写一个C程序,输入圆的半径,计算并输出圆的面积。
代码实现:```c#include <stdio.h>#define PI 3.14159int main() {double radius, area;printf("请输入圆的半径:");scanf("%lf", &radius);area = PI * radius * radius;printf("圆的面积是:%.2f\n", area);return 0;}```题目二:求最大公约数问题描述:编写一个C程序,输入两个整数,计算并输出这两个整数的最大公约数。
代码实现:```c#include <stdio.h>int gcd(int a, int b) {while (b != 0) {int temp = b;b = a % b;a = temp;}return a;}int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("最大公约数是:%d\n", gcd(num1, num2));return 0;}```题目三:字符串反转问题描述:编写一个C程序,输入一个字符串,然后输出该字符串的反转。
代码实现:```c#include <stdio.h>#include <string.h>void reverseString(char str[]) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[100];printf("请输入一个字符串:");fgets(str, 100, stdin); // 使用fgets以包含空格str[strcspn(str, "\n")] = 0; // 去除换行符reverseString(str);printf("反转后的字符串是:%s\n", str);return 0;}```题目四:计算阶乘问题描述:编写一个C程序,输入一个非负整数,计算并输出该整数的阶乘。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
试卷3一、单项选择题(共20小题;每小题1分,共20分)1、下列常量不合法的是()。
A.1.5E-2 B.‘BASIC’C.0x12 D.“\\good”2、下列变量名中不合法的是()。
A.iCount B.Stu_NO C.INT D.vc++3、设变量已正确定义并赋值,以下正确的表达式是()。
A.b=7++ B.x=3,++y C.a=7%3.0 D.x=y+1=24、表达式sizeof(double)-sizeof(3.1f)+3/2的值是()。
A.4 B.5 C.5.5 D.1.55、下列各语句序列判别变量a、b的大小,若a<b则交换它们的值,其中正确的是()。
A.if (a<b) {t=a; a=b; b=t;} B.if (a<b) a=b; b=a; C.if(a<b) {a=b; b=a;} D.if(a<b) t=a; a=b; b=t;6、已知有程序段:int a=1,*p=&a,**q; q=&p; **q=3;printf("%d\n",a);则该程序段正确执行后输出结果为()。
A.1 B.3 C. 该程序段有语法错 D. 该程序段没有输出结果7、若有说明:int *p,m=3,n;,则以下正确的程序段是()。
A.p=&n;scanf("%d",&p); B.p=&&n;scanf("%d",*p);C.scanf("%d", &n);*p=n; D.p=&n;*p=m;8、设有以下说明语句,则下面的叙述中不正确的是()。
typedef struct student{ long StuNO; char Stuname[9];char sex;float cscore;}STU;A.typedef是给类型起别名B.STU是结构变量名C.StuNO是结构体STU的一个成员D.STU是结构类型名9、有定义或声明:int *myf(float x, long y);,若以下选项中的正确的是()。
A. myf是指针数组;B. myf是数组指针;C. myf是指针函数;D. myf是函数指针;10、C语言中函数返回值的类型是由()决定的。
A.传递给函数的实参类型B.return语句中的表达式类型C.调用该函数的主调函数类型D.定义函数时所指定的函数返回值类型11、若有宏定义:#define FUN(x) x%x,则表达式FUN(2+3)的值为()。
A.5 B.0 C.6 D.712、设有定义语句:char c1=32,c2=32;则以下表达式中值为0的是()。
A. c1^c2B. c1&c2C.~c2D.c1|c213、若有以下定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是()。
A.m[i] B.m[2*2] C.m[m[0]] D.m[m[i]]14、以下对二维数组arr的定义正确的是()。
A.int arr[5][]={1,2,3}; B.int arr[][1]={{1,2,3},{4,5,6}};C.int arr[3][3]={0}; D.int arr[2][3]={1,2,3,4,5,6,7,8};15、若有定义语句:char s[]="hello\0theworld";,则strlen(s)的值是()。
A.5 B.6 C.14 D.15 16、有定义int i=88,j=99,*p,*q;p=&i;q=&j; p=q;则printf("%d %d",*p,*q)结果是()。
A.88 88 B.88 99 C.99 99D.99 8817、已知有定义int a[8]={0},*p=a;,则不能表示a[1]元素的值的是()。
A.*(p+1) B.*(++a) C.p[1] D.*&a[1]18、有定义如下:struct test{ int a;int b[2];}s[3]={{111,1,2},{222,3,4},{333,5,6}};则s[1].b[0]的值是()。
A. 3B. 4C. 5D. 619、若要以写的方式创建新的文本文件,则在fopen函数中使用的打开方式是()。
A."w" B."rb" C."rb+" D."a+b"20、若有定义:int a[5][2]={7,6,5,4,3,2,1}, *p=a[1];则*(++p)的值是()。
A.2B.3C.4D.5二、阅读程序题,写出下列程序的运行结果。
(本题10小题,每小题3分,共30分)1、main(){ FILE *fp;int i,buf[]={8,7,6,5,4,3,2,1};fp=fopen("mytest.dat","wb+");fwrite(buf,sizeof(int),8,fp);fseek(fp,sizeof(int)*4,SEEK_SET);fread(buf,sizeof(int),4,fp);fclose(fp);for(i=0;i<8;i++) printf("%d",buf[i]);}输出结果为:______________________________。
2、main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0: a++; break;case 1: b++; break;}case 2: a++; b++; break;case 3: a++; b++;}printf("a=%d,b=%d\n",a,b);}输出结果为:______________________________。
3、#include <string.h>main(){ char p[20]={'a','b','c','d'},q[]="abc", r[]="abcde";strcpy(p+strlen(q),r); strcat(p,q);printf("%d %d\n",sizeof(p),strlen(p));}输出结果为:______________________________。
4、以下程序设从键盘输入ABC后按<Enter>键。
void f(){ char ch=getchar();printf("%c",ch);if(ch!='\n')f();printf("%c",ch);}void main(){ f(); }输出结果为:______________________________。
5、main( ){ char *q[4]={"NANJING","BEIJING","HANGZHOU"," SHANGHAI"};char **p=q;for (int i=0;i<4;i++,p++)printf("%c ", *(*p+3)+1);}输出结果为:______________________________。
6、int n;void f (int n ){ static int a=3;n+=2; a++;printf("%d %d ",n,a);}main(){ f(n);f(n=5); printf("%d ",n); }输出结果为:______________________________。
7、main(){ int x,y,z;x=y=z=0;++x||++y&&++z;printf("%d %d %d\n",x,y,z);}输出结果为:______________________________。
8、void f(int *q){ int i;for(i=0;i<5;i++) --(*q);}main(){ int a[5]={6,6,6,6,6},i;f(a+2);for(i=0;i<5;i++) printf("%d",a[i]);}输出结果为:______________________________。
9、main(){ char str[3][7]={"1234","5678"},*myp[2];int i,j,s=0;for(i=0;i<2;i++) myp[i]=str[i];for(i=0;i<2;i++)for(j=1;myp[i][j]!=’\0’;j+=2)s=10*s+myp[i][j]-'0';printf("%d\n",s);}输出结果为:______________________________。
10、struct NODE{ int num;struct NODE *next;};main( ){ struct NODE a[3]={{0,a+1},{0,a+2},{0,a}},*p=&a[0],*q=&a[1],*r=&a[ 2];p->num=77; q->num=88; r->num=99;p->next=q;q->next=r;r->next=NULL;printf("%d\n",p->next->next->num);}输出结果为:______________________________。
三、程序填空题(共7小题,每空2分,共20分)1、下面程序的功能是判断short型能表示的最大值。
请填空。
main(){short n=0,m;while(1){m=n;n++;if(n<0)_______________;}printf("%d\n",m);}2、建立一个链表,将存储在字符数组中的字符依次转储到链表的各个结点中。
#include <stdlib.h>typedef struct node{ char data;struct node *next;}NODE;NODE* CreatList(char s[]){ NODE *head,*p,*last=NULL;while(*s!='\0'){ p=______________________________;p->data=*s++;p->next=NULL;if(last!=NULL)last->next=p;elsehead=p;last=p;}return _______________;}main(){ char s[]="Hello 2012!";NODE *head;head=CreatList(s);}3、以下程序的功能是:输入两个整数,求出它们的最大公约数并输出,请填空。