一:单项选择题:(每题2分,共10题)
1、若有定义:int a=3,b=2,c=1;并有表达式:①a%b,②a>b>c,③b&&c+1,④c+=1,则表达式值相等的是    C   
A)①和②        B)②和③        C)①和③        D)③和④
2、若有说明语句int i=5,j=4,k=6;float f;则执行f=(i<j&&i<k)?i:(j<k)?j:k;语句后,f的值为      A 
A)4.0            B)5.0            C)6.0            D)7.0
3、对下述程序,    A    是正确的判断
    int x,y;
    scanf(“%d,%d”,&x,&y);
    if (x>y)
        x=y;y=x;
    else
        x++;y++;
printf(“%d,%d”,x,y);
A)有语法错误,不能通过编译                B)若输入3和4,则输出4和5
C)若输入4和3,则输出3和4                D)若输入4和3,则输出4和5
4、下述表达式中,    A    可以正确表示x≤0或x≥1的关系。
A)(x>=1) | | (x<=0)                    B)x>=1 | x<=0
C)x>=1 && x<=0                    D)(x>=1) && (x<=0)
5、执行语句for (i=1;i++<4;) ; 后变量i的值是      C     
A)3                B)4            C)5              D)不定
6、下面程序的功能是在输入的一批正数中求最大者,输入0结束循环,选择  B  填空。
  void main()
{
    int a,max=0;
    scanf("%d",&a);
    while (【    】) {
        if (max<a) max=a ;
        scanf ("%d",&a);
    }
    printf("%d",max);
}
A)a==0            B)a            C)!a==1          D)!a
7、以下for循环的执行次数是    C       
for (x=0,y=0; (y=123) && (x<4) ; x++);
A)无限循环        B)循环次数不定  C)4次            D)3次
8、以下程序的运行结果为    D     
void main()
{
    int b=5,y=3;
#define b 2
#define f(x) b*(x)
    printf("%d\n",f(y+1));
#undef b
    printf("%d\n",f(y+1));
}
A)20                B)20                C)8                D)8
8                    20                    8                    20
9、下面程序段的运行结果是      C     
char *s="abcde" ;
s+=2 ; printf("%d",s);
A)cde              B)字符’c’          C)字符’c’的地址    D)不确定
10、fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是    C     
A)只写            B)追加              C)读或读写          D)B和C都正确
二:判断题:(每题2分,共10题) switch case判断字符串
1、 以下程序的输出结果是__0__。【    true     
  void main()
{int a=1,b=2;
printf("%d\n",a%b);}
2、switch语句的case表达式必须是常量表达式。【    true     
3、内层break语句可以终止嵌套的switch,使最外层的switch结束。【    false     
4、以下程序段是死循环【    false     
x=-1;
do
{ x=x*x; }
while  (!x);
5、在while循环中允许使用嵌套循环,但只能是嵌套while循环。【  false   
6、判断字符串a和b是否相等,应当使用if (a==b) 【  false   
7、double x[3][5],则x数组中行下标的下限为3 ,列下标的下限为5  false   
8、宏替换不占用编译时间占用运行时间【  false   
9、设有以下字符串char a[]=”China”a只能存放5个字符【  false   
10、若以”a+”方式打开一个已存在的文件文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作【  false   
三:阅读程序,在横线上填上正确内容:(每空3分,共8空)
1、 以下程序为输入一个10进制数输出相应的二进制数:
#define N 30
void main()
{
    int num;
    int a[N],i=0;
    printf("输入一个十进制数:\n");
    scanf("%d",&num);
    for (;【  num 】!=0;)
    {
        a[i]=num%2;
        【 num=num/2      】;
        i++;}

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