1.C语言中函数返回值的类型由return语句中的表达式的类型决定。( )
A:对 B:错
答案:错
2.C语言的源程序中必须包含库函数。( )
A:错误 B:正确
答案:错误
3.输出sin30度的值对应代码为:printf("\tsin(%lf)=%lf\n",30,sin(30));。( ) 
A:错 B:对
答案:错
4.power(2,3)函数为计算2的三次方的幂函数。( )
A:错 B:对
答案:错
5.在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。( )
A:错 B:对
答案:对
6.若有int *p; 则表示*p为指针变量( )
A:对 B:错
答案:错
7.已知char ch;则putchar(ch)可以实现ch变量的输出。( )
A:错 B:对
答案:对
8.当输入为"quert?"时,下面程序的执行结果是( )#includemain(){char c;c=getchar();while((c=getchar())!='?')   putchar(++c);}
A:rvfsu?  B:quert? C:rvfsu D:Quert
答案:vfsu
9.如果c为字符型变量,空格字符的ASCII码为十进制数32,判断c是否为空格不能使用( )。
A:if(c=='32') B:if(c==32) C:if(c=='  ') D:if(c=='\040')
答案:if(c==32)
10.语句:printf("%d",(a=2) && (b=-2));的输出结果是( )。
A:无输出 B:1 C:结果不确定 D:-1
答案:1
11.在使用求根公式法解一元二次方程时,需要用到的数学函数为( )。
A:sqrt() B:log() C:pow() D:exp()

12.设有类型说明 enum color {red,yellow,black=100,blue },则执行语句:   printf(“%d”, yellow);输出结果是( )。
A:yellow B:99 C:1 D:不确定 13.对结构变量stul中成员age的非法引用是( )。struct student{    int age;    int num;}stu1,*p;p=
A:p->age B:stu1.age C:(*p).age D:student.age 14.设有数组定义:char array[]="China";则strlen(array)的值为(  )。
A:6 B:4 C:5 D:7 15.若有说明:int n=2,*p=&n,*q=p,则非法的赋值语句是( )。 
A:*p=*q B:n=*q C:p=q D:p=n 16.4个变量定义中,定义p为二级指针的是( )。
A:int (*p)[10]; B:int **p; C:int (*p)( ); D:int *p[10]; 17.若有程序:void fun(float*a,float*b)( float w;*a=*a+*a;w= *a;*a= *b;*b=w;}int main(){ float x=2.0,y=3.0,*px=&x,*py=fun(px,py);printf(”%.0f,%.0f\n”,x,y);return 0;)程序的输出结果是( )。
A:2,3     B:4,3     C:3,2 D:3,4     18.若有int *p=(int *)malloc(sizeof(int));则向申请到内存空间存入整数123的语句为( )。
A:无法实现 B:&p=123 C:p=123; D:*p=123; 19.如果要读取文件的内容,那文件打开时应采用的模式为( )。 
A:“x” B:“w” C:“r” D:“a” 20.下面的程序,正确的说法是( )。 #include  int  main( )  {    int x=3,y=0,z=0;       if (x=y+z) printf("* * * *");       else   printf("# # # #");        return 0;  } 
A:输出# # # #。 B:输出* * * *。 C:有语法错误不能通过编译。 D:可以通过编译,但是不能通过连接,因而不能运行。 21.下面的程序用来将一个十进制正整数转化成八进制数,例如输入一个正整数25,则输出31,应填入划线处的选项是(   )。#include int main( ){ int i=0,j=0,a,b[10 ]={0};printf("Enter an integer:"); scanf("%d",&a);sub(a,b);for(;i<10;i++) {if()  j=1; if(j!=0) printf("%d",b[i]);  } return 0;}void sub(int c,int d[ ]){ int e,i=9;while(c!=0) { e=c%8; d[i]=e; _;i- -;}   }
A:b[i]==0和c/=8      B:b[i]==0和c=e/8 C:b[i]!=0和c/=8        D:b[i]!=0和c=e/8 22.运行下面程序时,从键盘输入"1605",则输出结果是( )#includeint  main( ){    int t,h,m;    scanf("%d",&t);    h=(t/100)%12;    if (h==0) h=12;    printf("%d:",h);    m=t%100;    if (m<10)  printf("0");    printf("%d",m);    if (t<1200||t==2400)        printf("AM");    else  printf("PM");    printf("\n");    return 0;}
A:6:05PM B:16:05AM C:4:05PM D:12:05AM 23.若有定义语句:char  s[100],d[100]; int j=0,i=0; ,且s中已赋字符串,实现将字符串s中的内容拷贝到字符串d中,划线处语句为( )。(注意:不得使用逗号表达式)  while(s[i]) { d[j]=__; j++; }  d[j]=0;
A:s[j] B:s[i++] C:s[i] D:s[++i] 24.设x为char型变量,且初值为 'f',则执行printf("%c\n", 'A'+(x-'a'+1));后的输出结果是 ( )。 
A:H B:J C:G D:I 25.下面程序的输出结果是( )。#includeint main(){  char t1='g',t2='G';  t1=t1-'a'+'A';  t2=t2-'A'+'a';  printf("%c,%c\n",t1,t2);    return 0;}
A:g,g; B:g,G; C:G,g; D:G,G; 26.设a=5,b=6,c=5,d=8,m=2,n=2,执行 (m=a>b)&&(n=c>d) 后n的值为( )。
A:3 B:0 C:1 D:2 27.假设有结构体定义如下:struct student{    int   num;   char  name[20];  char  coursename[20];     }stu1= ={1001,"李芳","C语言程序设计"},stu2;语句中,正确的语句是( )。
A:stu2=stu1; B:stu2={1002,"张林","高等数学"}; C:scanf ("%d%s%s”,&stu1); D:printf(“%d%s%s \n”,stu1);    28.程序段( )x=-1;  do  { x=x * x;}    while(!x);
A:循环执行二次   B:循环执行一次 C:有语法错误 D:是死循环 29.下面有关for循环的正确描述是( )
A:在for循环中,不能用break语句跳出循环体 B:for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 C:for循环是先执行循环体语句,后判断表达式 D:for循环只能用于循环次数已经确定的情况 30.已知int a=010, b=0x10, c=10;则printf("%d,%d,%d\n",a,b,c);的输出结果为( )。 
A:10,10,10 B:8,16,10 C:8,10,10 D:8,8,10 31.执行下面的程序段后,变量k中的值为(  )。int k=3,s[2];s[0]=k; k=s[1]*10;
A:33 B:30 C:10 D:不定值 32.定义结构体数组:struet St{char name[15];int age;)a[10]={”ZHANG”,14,”WANG”,15,”LIU”,16,”ZHANG”,17);执行语句printf(”%d,%c”,a[2].age,*(a[3].name+2))的输出结果为( )。
A:15,A      B:17,H C:16,H         D:16,A         33.对于变量定义int a;  float b;语句scanf("%2d%*c%f",&a,&b);在运行时输入123c4.678,则b获得的值为( )。 
A:报错 B:4.678000 C:0.000000 D:3.000000 34.在程序中,while循环的循环次数是( )main( ){ int  i=0; while(i<10)   {if(i<1)  continue;    if(i= =5)  break;     i++;   }......}
A:6 B:10 C:1 D:死循环、不能确定次数 35.执行下面的程序后,a的值为( )main(){int a,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1)    {b+=3;   continue;   }b-=5;}}
A:9 B:7 C:8 D:10 36.定义变量:int n=10;则循环的输出结果是( )while(n>7){n--;printf("%d\n",n);}
A:10 9 8 7          B:10    9  8          C:9 8 7 6 D:9 87         37.程序的输出结果是( )main(){int i;for(i=1;i<=5;i++){if(i%2)printf("#");else continue;printf("*");}printf("$\n");}
A:#*#*$ B:*#*#*#$ C:#*#*#*$ D:*#*#$ 38.若有说明语句“int a[5],*p=a;”,则对数组元素的正确引用是( )。 
A:p+2 B:*(p+2) C:a[p] D:p[a] 39.程序输出a数组中的最小值及其下标,在划线处应填入的是( )。main( ){ int i,p=0,a[10];  for(i=0;i<10;i++)  scanf("%d",&a[i]);  for(i=1;i<10;i++)    if(a[i]A:p=j B:a[p]=a[i] C:i=p D:p=i 40.程序的输出结果是( )。int main(){  enum color{red=5,blue,white=0,black};int  c[]={1,2,3,4};printf(“%d”,c[black]);return 0;}
A:3 B:2 C:4 D:1 41.程序的输出结果( )main(){int x=3;do{printf("%3d",x-=2);}while(--x);}
A:1 -2 B:1 C:死循环 D:30 3 42.若有int x; float y; double z;则表达式的值为4的是( )。 
A:sizeof(x) B:sizeof(int) C:sizeof(y) D:sizeof(z) 43.假设有结构体定义如下:
struct Date    
{   int  month; 
 int  day;  
int  year;
 };
 struct Stu  
 {   int num;
char name[20];  
 char sex;
int age;
       struct Date birthday;    
 }a;
  int year ;
语句中,错误的语句是( )。
A:year=a.birthday.year=2020; B:a.birthday.month=12; C:a.age=10; D:a.name=”zhang” 44.不正确的定义是( )。 
A:int i,*p; B:int *p=&i,i; C:int i,*p= D:int *p,i; 45.若有char test; 将大写字母B赋给变量test,则语句中正确的是( )。 

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(2) dxwkbang
返回
顶部