南昌大学c语言题库1及答案_第1页
南昌大学c语言题库1及答案_第2页
南昌大学c语言题库1及答案_第3页
南昌大学c语言题库1及答案_第4页
南昌大学c语言题库1及答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上1、表达式1&3&5&7的值为_。 A.1 B.3 C.5 D.7 D   教师批改:A 2、表达式-1<=3<=-5值是_。 A.0 B.1 C.3 D.表达式语法有错 A   教师批改:A 3、假定所有变量均已正确说明,下列是程序段运行后x的值是_。a=b=c=0;x=35;if(!a) x-;else if(b);if(c) x=3;else x=4; A.34 B.4 C.35 D.3 A   教师批改:B 4、若变量c为ch

2、ar类型,能正确判断出c为小写字母的表达式是_。A.a<=c<= z B.(c>= a)|(c<= z) C.(a<=c)and (z>=c) D.(c>= a)&&(c<= z) B   教师批改:D 5、若执行以下程序时从键盘上输入9,main() int n;  scanf("%d",&n);  if(n+<10) printf("%

3、dn",n);  else printf("%dn",n-);则输出结果是_。 A.11 B.10 C.9 D.8 D   教师批改:B 6、设a为整型变量,不能正确表达数学关系10a15的C语言表达式是_。 A.10<a<15 B.a=11 | a=12 | a=13 | a=14 C.a>10&&a<15 D.!(a<=10)&&!(a>=15) A   教师批改:

4、A 7、设x、y、t均为int型变量,则执行语句:x=y=3;t=+x|+y;后,y的值为_。 A.不定值 B.4 C.3 D.1 B   教师批改:C 8、设有定义int x=1; int y=a<A?x-:x+;,则变量y的值是_。 A.0 B.2 C.1 D.3 A   教师批改:C 9、为表示关系x大于等于y,且y大于等于z,应使用C语言表达式_。 A.(x>=y)&&(y>=z) B.(x>=y)AND(y>=z) C.(x>=y>=z) D.(x>=

5、y)&(y>=z) A   教师批改:A 10、在以下一组运算中,优先级最高的运算符是_。 A.<= B. = C. % D. && C   教师批改:C 11、执行下面语句后的输出结果为_。int i=-1;if(i<=0) printf("*n");else printf("%n"); A.* B.% C.%c D.有语法错误,不能正确执行 A   教师批改:A 12、逻辑运算符两侧运算对象

6、的数据类型_。 A)只能是0或l B)只能是0或非0正数 c)只能是整型或字符型数据 D)可以是C的任何类型的数据 A   教师批改:D 13、以下关于运算符优先顺序的描述中正确的是_。 A)关系运算符算术运算符赋值运算符逻辑与运算符 B)逻辑与运算符关系运算符算术运算符赋值运算符 C)赋值运算符逻辑与运算符关系运算符算术运算符 D)算术运算符关系运算符赋值运算符逻辑与运算符 C   教师批改:C 14、下列运算符中优先级别高的是 A) B)+ C)&&  D)!= B   教师批改:B 15、能正确表示“当

7、x的取值在1,10和200,210范围内为真,否则为假”的达式是_。 A)(x1)&&(x10&&(x200)&&(x2l0) B)(x1)|(x10)|(x200)|(x210) C)(x1)&&(x10)|(x200)&&(x2l0) D)(x1)|(x10)&&(x200)|(x210) A   教师批改:C 16、设有:int a1,b2,c3,d4,m2,n2;执行  (mab)&&(ncd)后n的值为_。 A)1 

8、; B)2   C)3  D)4 B   教师批改:B 17、以下程序的运行结果是_。include "stdioh”void main()int a,b,d241;  ad1009;  b(-1)&&(-1);  printf(”d,d",a,b);A)6,1   B)2,1 C)6,0    D)2,0 B   教师批改:B 18、已知int

9、60;x10,y20,z30;以下语句执行后x,y,z的值是_。if(xy) z=x;x=y;y=z; A)x10,y20,z30 B)x20,y30,z30 C)x20,y30,z10 D)x20,y30,z20 A   教师批改:B 19、请阅读以下程序:main()int a5,b0,c0; if(ab+c) printf(”* * *n”); else    printf(”$ $ $”);以上程序_。 A)有语法错不能通过编译 c)输出

10、* * * B)可以通过编译但不能通过连接 D)输出$ $ $ A   教师批改:D 20、以下程序的运行结果是_。main() int m5;  if(m+5) printf(”dn”,m)  else    printf(”dn”,m-); A)4  B)5   C)6  D)7 C   教师批改:C 21、当a=1,b=3,c=5,d=4时,执行完下面一段程序后

11、,x的值是_。if(a<b)  if(c<d) x=1;  elseif(ac)if(bd)x2;else x3;else x=6;else x=7; A)1 B)2 C)3 D)6 B   教师批改:B 22、以下程序的输出结果是_。main()int a100,xl0,y20,ok15,ok20; if(xy)   if(y!10)     if(!okl)  

12、  a1;     else       if(ok2)          a=10; a=-1; printf("%dn",a); A)1 B)0 C)-1 D)值不确定 C   教师批改:C 23、若有条件表达式达式(exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是_. A)

13、(exp=0) B)(exp!=0) C)(exp=1) D)(exp!=1) C   教师批改:B 24、若w1,x2,y3,z4,则条件表达式wx?w:yz?y;z的值是 A)4 B)3 C)2 D)1 C   教师批改:D 25、下列运算符中优先级别高的是 A) B)+ C)&&   D)!= B   教师批改:B 26、判断char型变量ch是否为大写字母的正确表达式是_。 A)AchZ  B)(chA)|(chZ) C)(chA)&&(chZ)  D)(

14、Ach)AND(zch) C   教师批改:C 27、设有:int a1,b2,c3,d4,m2,n2;执行 (mab)&&(ncd)后n的值为_。 A)1 B)2 C)3 D)4 B   教师批改:B 28、以下程序的运行结果是_。main() int m5;  if(m+5) printf(”dn”,m)  else    printf(”dn”,m-); A)4 B)5 C)6 D)7 B   教师批改:

15、C 29、以下程序的输出结果是_。main()int x2,y-1,z2;  if(xy)    if(y0)  zO;    else     z+1;  printf(“dn”,z); A)3 B)2   C)1 D)0 A   教师批改:B 30、若运行时给变量x输入12,则以下程序的运行结果是_。main()int x,y 

16、60; scanf("d",&x);  yx12?x10:x-12;  printf("%dn",y); A)0 B)22 C)12 D)10 A   教师批改:A 31、执行以下程序段后,变量a,b,c的值分别是_。int x10,y9;int a,b,c;a(-x=y+)?-x;+y;bx+;c=y; A)a9,b9c9 B)a8,b8,c10 C)a9,b10,c9 D)a1,b11,c10 C   教师批改:B 32、main(&

17、#160;) int a=15,b=21,m=0;  switch(a%3)    case 0:m+;break;     case 1:m+;            switch(b%2)           

18、60;default:m+;             case 0:m+;break;                   printf(“%dn”,m);程序运行后的结果是_。 A)1 B)2 C)3 D)4 A   教师批改:A 33、以下程序的

19、运行结果是_main() int a=2,b=7,c=5;  switch(a>0) case 1:switch (b<0)      case 1:printf("");break;       case 2: switch (c=5)       cas

20、e 0:printf("*");break;        case 1:printf("#");break;        default:printf("#");break;           default:printf("&

21、;"); printf("n");教师批改:#& 34、请读程序#include<stdio.h>main() int x=1,y=0,a=0,b=0;  switch(x)    case 1:      switch(y)       case 0:a+;break;   &

22、#160;    case 1:b+;break;               case 2:         a+;b+;break;    printf("a=%d,b=%d",a,b);上面程序的运行结果是_教师批改:a=2,b=1

23、专心-专注-专业35、有三个整数a,b,c,由键盘输入,输出其中最大得数main()   int a,b,c,d;   printf("please input 3 num, the format is 1 2 3n");   scanf("%d %d %d",&a,&b,&c);   d=(a

24、>b)?a:b;   d=(d>c)?d:c;   printf("the max number is %dn ",d);36、以下面的方程为基础,写一程序,输入X值,输出Y值,方程如下:当 x<1 时,y=x,当1<=x<10时,y=2x-1,当x>=10时,y=3x-11  教师批改:main()    int x,y,a;  

25、  printf("please input the value of x ");/*输入X的值*/    scanf("%d",&x);    printf("the value of y is: ");/*分条件打印出y值*/    if(x<1)  

26、          y=x;        printf("%d",y);        else        if( x>=1&&x<10)     

27、;               y=2*x-1;            printf("%d",y);                else

28、0;                   y=3*x-11;            printf("%d",y);        37、给出一百分制成绩,要求输出成绩等级A,B,C,D,E,

29、90分以上为A,8090分为B,7079分为C,6069分为D,60分以下为E。教师批改:main()   int num     printf("please input the score:n ");    scanf("%d",&num);    if(num<0|num>100)   

30、60;   printf("the score is error,please input a number from 0-100n ");    else if(num>=90) num=65;    else if(num>=80) num=66;    else if(n

31、um>=70) num=67;    else if(num>=60) num=68;    else             num=69;    printf("the level is :");    switc

32、h(num)             case 65: printf("%c",num);break;        case 66: printf("%c",num);break;        case 67:

33、60;printf("%c",num);break;        case 68: printf("%c",num);break;        case 69: printf("%c",num);break;    38、给一个不多于5位的正整数,要求:(1)求出它是几位数,(2)分别打印出每一

34、位数字(3)按顺序打印出各位数字,例如原数时321,应输出123。教师批改:main()    long num;    int k;    printf("please input a num form 0-99999:n");    scanf("%ld",&num);    

35、printf(" the answer one is: the long of the number is: ");    if(num>=10000)            k=5;        printf("

36、;%d",k);        else if(num>=1000)            k=4;        printf("%d",k);        else if(num

37、>=100)            k=3;        printf("%d",k);        else if(num>=10)           

38、0;k=2;        printf("%d",k);        else            k=1;        printf("%d",k);   &#

39、160;    printf("n the answer two is :");    switch(k)            case 1: printf("%5ld",num);break;        

40、;case 2: printf("%5ld %5ld",num/10,num%10);break;        case 3: printf("%5ld %5ld %5ld",num/100,num%100/10,num%10);break;        case 4: printf("%5ld

41、 %5ld %5ld %5ld",num/1000,num%1000/100,num%100/10,num%10);break;        case 5: printf("%5ld %5ld %5ld %5ld %5ld",num/10000,num%10000/1000,num%1000/100,num%100/10,num%10);break;    

42、;    printf("nthe answer three is: ");    switch(k)            case 1: printf("%ld",num);break;        case

43、60;2: printf("%ld%ld",num%10,num/10);break;        case 3: printf("%ld%ld%ld",num%10,num%100/10,num/100);break;        case 4: printf("%ld%ld%ld%ld",num%10,num%100/1

44、0,num%1000/100,num/1000);break;        case 5: printf("%ld%ld%ld%ld%ld",num%10,num%100/10,num%1000/100,num%10000/1000,num/10000);break;    39、企业发放的奖金根据利润提成。利润低于或等于10万的,奖金可提成10%;利润高于10万,低于20万的,低于10万的部分按10%提成,高于10万的提成7.5%;

45、高于20万低于40万时,低于20万的按上述方法提成(下同)。高于20万的按5%提成。高于40万低于60万的,高于40万的部分按3%提成。高于60万低于100万的,高于60万的部分按1.5%提成,超过100万的部分按1%提成。要求从键盘输入当月利润I,求应发奖金数。要求:(1)用if语句编程序。(2)用switch语句编程序。教师批改:(1):main()   long i;   int bonus,bonus1,bonus2,bonus4,bonus6,bonus10;   print

46、f("nnPlease input the bonus of this month:n");   scanf("%ld",&i);   printf("nn This month bonus is ");   bonus1=*0.1;   bonus2=bonus1+*0.075; 

47、0; bonus4=bonus2+*0.05;   bonus6=bonus4+*0.03;   bonus10=bonus6+*0.015;   if(i<=) bonus=bonus1;   else if(i<=) bonus=bonus1+(i-)*0.075;   else if(i<=) bonus=bonus2+(i-)*0.05;  

48、 else if(i<=) bonus=bonus4+(i-)*0.03;   else if(i<=) bonus=bonus6+(i-)*0.015;   else                bonus=bonus10+(i-)*0.01;   printf("%d&q

49、uot;,bonus);40、输入4个整数,要求按由小到大的顺序输出。教师批改:main()   int a,b,c,d,t;    printf("please input four integer numbers,for example: 1,2,3,4n");    scanf("%d,%d,%d,%d",&a,&b,&c,&d);

50、0;   /*把最小的数排到第一个位置*/    if(a>b) t=a;a=b;b=t;    if(a>c) t=c;a=c;c=t;    if(a>d) t=a;a=d;d=t;    /*排第二个位置的数*/    if(b>c) t=b;b=c;c=t;   &#

51、160;if(b>d) t=b;b=d;d=t;    /*排第三、四个位置的数*/    if(c>d) t=c;c=d;d=t;    printf("the number form smallest to biggest is:n%6dn%6dn%6dn%6dn",a,b,c,d);41、有4个圆塔,圆心分别为(2,2),(-2,2),(-2,-2),(2,-2),圆半径为1,这4个塔的高度为10m,塔外无建筑物,今输入任何一点的坐标,求该点的建筑高度,(塔外的高度为0)。  #include<math.h> /*数学函数头文件,用来调用fabs()和sqrt()函数*/main()  int h;   float w,x,y,j,i,k;   printf("please input the zuobiao,for example:1,2n"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论