C语言程序设计() 模拟题
一、选择题(每小题2分,共30分)
1.在程序中可以用来作为变量名的合法的标识符是(  )。
冒泡排序代码c语言Aint                  Bstu_1t                C2a1              D#55
2.以下叙述正确的是(  )。
AC程序中main函数必须位于程序的最前面
B一个C程序只能有一个函数
C一个C程序有并且只能有一个main函数
D在对一个C程序进行编译的过程中,可发现注释中的拼写错误
3.已知:char str1, str2[10]; 选择正确的输入语句   )。
Ascanf ("%s%c", &str1,str2);                  Bscanf ("%s%s", &str1,str2);
Cscanf ("%c%c", &str1,str2);                  Dscanf ("%c%s", &str1,str2);
4.判断char型变量CH是否为小写字母的正确表达式(  )。
A’a’<=CH<=’z’                          B(CH>=’a’)&(CH<=’z’)
C(CH>=’a’)&&(CH<=’z’)                  D(‘a’<=CH)AND(‘z’>=CH)
5int a=6;则执行a-=a*a后,a的值为 (  )
A-30                B0              C36              D-36
6已知各变量的类型说明如下:int m=8,n, a, b;  double x=3.14, y=0.12;  则以下符合C语言语法的表达式是(  )。
Aa+=a-=(b=2)*(a=8)  Bn=n*3=18        Cx%3            Dy=float (m)
7.以下程序与语句int a=1,b=2,c=3,k=0;执行 k=a>b?b>c?1:5:7; k的值为(  )
A0                  B1              C5                D7
8设函数fun的定义形式为void fun(char ch, float x ) { }则以下对函数fun的调用语句中,正确的是(  )。
A. fun("abc",3.0);          B. fun(32,32);      C. fun('65',2.8);        D. fun('D',16.5);
9. 已知 int b; 则对指针变量正确的说明和初始化是:(    )
Aint *pb=b;                                Bint pb=&b;
Cint *pb=&b;                                Dint pb=b;
10在以下给出的表达式中,do-while(E)语句中的(E)不等价的是(  )。
A(!E==0)          B(E>0||E<0)          C(E==0)                D(E!=0)
11.下列各语句定义了数组,其中哪一个是不正确的 )
Achar a[2][10]={"China","Asia"};              Bint x[2][2]={1,2,3,4};
异步通信格式Cfloat x[2][]={1,2,4,6,8,10};                  Dint m[][3]={1,2,3,4,5,6};
12.对于以下程序段,运行后i的值为 )
          int i=0,a=2;
          switch(a)
{  case  1: i+=1; break;
              case  2: i+=2;学java有什么好处吗
              case  3: i+=3;
          }
A2                B3                  C5                    Dkeras官方教程.6
13有以下语句:
i=1;
for( ; i<=100; i++)  sum+=i;
与以上语句序列不等价的是(  )。
Afor(i=1; ;i++) {sum+=i;if(i==100)break;}      Bi=1;for(;i<=100;)sum+=i;
Cfor(i=1;i<=100;){sum+=i;i++;}              Di=1;for(; ;){sum+=i;if(i==100)break;i++;}
14.已知大写字母AASCII码是65,小写字母aASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是(  )
Ac=(c-'A')%26+'a'      Bc=c+32              Cc=c-'A'+'a'            Dc=('A'+c)%26-'a'
15.下面函数定义正确的是(  )。
Adouble fun(double u,v)                      Bdouble fun(double u ; double v)
  {return u+v;}                                {return u+v;}
Cdouble fun(float u, float v)                  Ddouble fun( u,v)
  {return u+v;}                                { float uv return u+v;}
二、填空题(每空2分,共30)
1.    一个源程序文件由一个或多个函数组成,C程序的执行从__________函数开始。
2.  int i=5, j, k; j=i--; k=i; k的值为__________
3.  若有代数式x2÷(3x-5y), 则正确的C语言表达式为: ____________________
4.  ab均为double型常量,且a=5.5b=2,则表达式(int)(a+b)/b的值是       
5.字符串 "Hello" 占用内存的字节数是       
6 若已定义 int a[]={5,6,7,8},*p=a;  *(p+3)的值是           
7.设a=3,b=4,c=5,则逻辑表达式a+b>c&&b==c的值是___________
8.下面程序的运行结果为             
main(){
int i=1,s=3;
do{
        s+=i++;
        if(s%7==0) continue;
        else ++i;
      }while(s<15);
      printf("i=%d s=%d",i,s);
  }
9将两位自然数n的个位与十位互换,得到一个新的数存储到m(不考虑个位为0的情况)C语句是:                     
10.有数组的定义和赋初值:int a[ ][3]={1,2,3,4,5,6,7,8,9};  a[1][2]的值是       
11写出以下程序的运行结果是       
#include<stdio.h>
main( )
{  int i=1;
while(i<=12)
{  if ((i%3)) printf("%d,",i);
i++;
}
}
12. 下面程序的输出是       
#include<stdio.h>
int func(int array[][4],int max)
{  int i,j,row=0,column=0;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(array[i][j]>max) {max=array[i][j];row=i;column=j;}
          printf(“%d,%d”,row,column);
return(max);
}
数字魔方教程一步一步图解int main( )
{  static int a[3][4]={{1,13,5,7},{2,4,26,8},{10,1,3,12}};
int m=10;
printf("%d\n",func(a,m));
return 0;
}
13. 下面程序的运行结果为       
#include <stdio.h>
void fun( int *x, int *y)
      {  int k=0;
printf("%d %d ", *x, *y);
        k=*x;*x=*y;*y=k;
}
int main( )
{  int x=1, y=2;
        fun(&y, &x);
        printf("%d %d", x, y);
        return 0;
      }
14. 以下函数返回a所指数组中最小的值所在的下标值,请填空。
fun(int *a, int n)
{  int i,j=0,p;网站设计岗位的职责与要求
p=j;
for(i=j;i<n;i++)
if(a[i]<a[p])            
return(p);
}
15. 下面程序的运行结果为         
#include<stdio.h>
int f(int n)
{ if(n==1)return 1;
  else return f(n-1)+1;}
main()
{ int i,j=0;
  for(i=1;i<3;i++) j+=f(i);
  printf("%d\n",j);
}
三、判断题(每题1分,共10分)对打√,错打×
1 '\101'代表八进制数101ASCII字符'\ A '                               
2 switch结构中,不能用break语句。                                   

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。