| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3411 人关注过本帖
标题:求一套C语言试题答案! 只要答案 不要分析!
只看楼主 加入收藏
vkbkjk
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-5-13
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
求一套C语言试题答案! 只要答案 不要分析!
C语言模拟试卷(4)
一、选择题
1.c语言中字符型(char)数据在内存中的形式存储是(      )。
    A)原码    B)补码    c)反码    D)ASCII码
2.c语言中,长整型1ong数据在内存中的存储形式是(     )。
    A)ASCII码    E)原码    C)反码    D)补码
3.c语言的运算符按运算对象的数目可以分为(      )。
   A)单目运算符一种            B)单目和双目运算符
   C)单目、双目和三目运算符    D)单目、双目、三目和四目运算符
4.运算符有优先级,在c语言中关于运算符优先级的正确叙述是(     )。
    A)逻辑运算符高于算术运算符,算术运算符高于关系运算符
    B)算术运算符高于关系运算符,关系运算符高于逻辑运算符
    c)算术运算符高于逻辑运算符,逻辑运算符高于关系运算符
    D)关系运算符高于逻辑运算符,逻辑运算符高于算术运算符
5.c语言并不是非常严格的算法语言,在以下关于c语言的不严格的叙述中,错误的说法是(      )。
大写字母和小写字母的意义相同
B)有些不同类型的变量可以在一个表达式中运算
C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D)同一个运算符号在不同场合可以有不同的含义
6.在c语言中,错误的int类型的常数是(      )。
A)  32768       B)  0        C)  037         D)0xAF
7.设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围定(     
A)0至255      B)0至65535      C)—32768至32767       D)—256至255
8.以下(      )是错误的转义字符。
A)’\\’        B)’\’ ’           c)’\81’         D)’\0’
9.已知:char  w;int x;float y;double z 则表达式w*x+z-y结果的类型是(      ).
A)float          B)char            c)int             D)double
10.sizeoff(double)是(      
A)函数调用    B) double型表达式  C) int型表达式   D)非法表达式
11.已知:char ch=’A’;则下列表达式值是(      )。
    Ch=(ch>=’A’&&ch<=’Z’)?(ch+32):ch;
A)  A               B)a              C)   Z      D) z
12.选出使变量i的运行结果为4的表达式(      )。
A)  int  i:0,  j=0:        B)  int  i=1,  j=0
     (i=3,(j++)+i);                j=i=((i=3)*2);
C)  int  i=0,  j=1;          D)  int  i=1,  j=1
     (j==1)?(i=1):(i=4);           i+=j+=2;
13.已知:int w=3,x=10,z=7;则执行下面语句后的结果为(      
    printf  (”%d”,  x>10?x+100:x-10 );
    printf  (”%d”, w++||z++);
    printf(“%d”,! w>z);
    printf(“%d”,w&&z);
A)  0111       B)  11111       C)  0101          D)0100
14.执行以下语句后的输出结果为(      
    enum  weekday  {sun, mon=3,tue,wed,thu};
    enum  weekday  workday;
    workday=wed  
    printf(”%d\n”,workday);
A)5           B)3          c)4         D)编译时出错
15.若有定义:enum weekday {mon,tue,wed,thu,fri}workday; 则错误的语句是(    )。
A) workday= (enum  weekday)3;    B)workday=  (enum  weekdoy) (4-2)
C) workday=3 ;                   D) workday=thu;
16.以下正确的描述为(      )。
A)每个c语言程序必须在开头用预处理命令:#include<stdio.h>
B)预处理命令必须位于c源程序的首都
C)在C语言中预处理命令都以”#”开头
D)c语言的预处理命令只能实现宏定义和条件编译的功能         
17.以下有关宏替换叙述中,错误的是(      )。
A)宏替换不占用运行时间       B)宏名无类型
C)宏替换只是字符替换         D)宏名必须用大写字母表示
18.c语言对嵌套if语句的规定是:el se总是与(      )配对。
A)其之前最近的if             B)第一个if
C)缩进位置相同的if           D)其之前最近的且尚未配对的if
19.为了判断两个字符串s1和s2是否相等,应当使用(      )。
A)  if(s1= =s2)                 B)  if  (s1=s2)
C)  if(strcpy(s1,s2))            D)if(strcmp(sl,s2)==0
20.下列关于switch语句和break语句的结论中,正确的是(      
A)break语句是switch语句的一部分
B)在switch语句中可以根据需要使用或不使用break语句
C)在switch语句中必须使用break语句
D) 在switch语句中不能使用break语句
21.以下错误的描述是(      )。
A)break语句不能用于循环语句和switch语句外的任何其它语句
B)在switch语句中使用break语句或continue语句的作用相同
C)在循环语句中使用continue语句是为了结柬本次循环,而不是终止整个循环
D)在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环
22.以下错误的描述是(     )。
A)使用while和do_while循环时,循环变量初始化的操作应在循环语句之前完成
B)while循环是先判断表达式,后执行循环体语句
c)do_while和for循环均是先执行循环体语句,后判断表达式
D)for、while和do—while循环中的循环体均可以由空语句构成
23.若int i=10:执行下列程序后,变量i的正确结果是(      )。
    switch  (i)  
{  case  9:  i+1;
       case  10:  i+=1;
       case  11:  i+=1;
       default:  i+=1;
}
A)10        B)11         c)12          D)13
24.以下不是死循环的语句为(      )。
A) for(;;x+=i);
B) while(x=1)  {x++;}
C) for(i=10;;i- -)sum+=i;
D) for (;(c=getchar())!=’\n’;)  printf( “%c”,c);
25.c语言程序由函数组成。它的 (      )。
A) 主函数必须在其它函数之前,函数内可以嵌套定义函数
B) 主函数可以在其它函数之后,函数内不可以嵌套定义函数
C) 主函数必须在其它函数之前,函数内不可以嵌套定义函数
D) 主函数必须在其它函数之后,函数内可以嵌套定义函数
26.一个c语言程序的基本组成单位是 (      )
A)主程序        B)子程序        C) 函数         D)过程
27.一个c语言程序总是从 (      )开始执行。
A)主过程       B)主函数        C) 第一个函数     D)第一行
28.以下说法中正确的是——。
A) c语言程序总是从第一个定义的函数开始执行
B) 在c语言程序中,要调用的函数必须在main()函数中定义
C) c语言程序总是从main()函数开始执行
D) c语言程序中的main()函数必须放在程序的开始部分
29.若有以下说明,则数值为4的表达式是(     
             int   a[l2]={1,2,3,4,5,6,7,8,9,10,11,l 2};
             char  c=’a’,d,g;
A) a[g-c]      B) a[4]       C)   a[’d’-‘c’]         D)a[‘d’-c]
30.以下程序的输出结果是(     
   main( )
    {    int    n[2]={0}, i, j,k=2;
         for (i=0;i<k;i++)  
for (j=0;j<k;j++) n[j]=n[i]+1;
         printf(“%d\n”,n[k] );
    }
A) 不确定的值    B) 3       C) 2                     D)1

31.以下程序的输出结果是(   
main( )
{   int a[ ]={2,4,6,8,10}, y=1,x,*p;
    p=&a[1];
    for (x=0;x<3;x++)   y+=*(p+x);
    printf(“%d\n”,y);
}
A) 17           B) 18            C) 19            D) 20
32.以下程序的输出结果是(   
# include  “stdio.h”
main()
{   x=try(5);
    printf (”%d\n”,x);   }
try(int n)
{ if  (n>0)
     return  (n*try(n-2));
else
    return  (1);  }
A)   15     B) 120      C)   1         D)前面三个答案均是错误的
33.当说明一个结构变量时系统分配给它的内存是(       )。
A) 成员所需内存量的总和             B)结构中第1个成员所需内存量
C)成员中占内存量最大的所需的容量   D)结构中最后一个成员所需内存量
34.以下对结构类型变量的定义中错误的是(    )。
A)#define  STUDENT   struct  student               B) struct student
STUDENT                                         { int num;
  {  int num;                                         float age ;
     float  age;                                     }stdl;
   }  stdl;
C)  struct                                 D)  struct
     {  int num;                               {  int num;
        float age;                                 float age;
    }stdl;                                      }student;
                                              struct  student  stdl;
35.在下列结论中,只有一个是正确的,它是(    ).
A)递归函数中的形式参数是自动变量
B)递归函数中的形式参数是外部变量
C)递归函数中的形式参数是静态变量
D)递归函数中的形式参数可以根据需要自己定义存储类型
36.下面程序段的运行结果是(      
  char  c[ ]=”\t\v\\\0will\n”;
  print(”%d”, strlen(c));
A) 14       B) 3    C) 9          D)字符串中有非法字符,输出值不确定
37.若有以下程序段:
    int a[ ]={4,0,2,3,l},i,j,t;
    for  (i=1; i<5; i++)
    {   t=a[i];j=i-1;
while(j>=0&& t>a[j])
I       {  a[j+1]=a[j];j- -;}
a[j+1]=t;
             }
38.则该程序段的功能是(     )。
A) 对数组a进行冒泡排序(升序)          B)对数组a进行冒泡排序(降序)
C) 对数组a进行选择排序(升序)          D)对数组a进行选择排序(降序)
39.已知:char b[5],*p=b;则正确的赋值语句是(    )。
A) b=“abcd”;    B)*b=“abcd“;  C) p=“abcd”;    D)*p=“abcd”;
已知:char *aa[2]={“abcd”,“ABCD”};则以下说法正确的是(     )。
A) aa数组元素的值分别是“abcd”和“ABCD”
B) aa是指针变量,它指向含有两个数组元素的字符型一维数组
C) aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D)aa数组的两个元素中各自存放了字符‘a’和‘A’的地址
40.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应该是(     )。
A)“ab+”       B)“wb+”    C) “rb+”       D) “ab”

二、写结果题:
1.下面程序的运行结果是:
#include <stdio.h>
main(  )
{  int   i=0,j=0;
   while (i<10)
      i++;
while (j++<10);
printf (“i=%d,j=%d\n”,i,j);
}
结果:                           

2.阅读下面的程序并回答问题。
# include  <stdio.h>
main( )
{ int  a,b,m,n;
  scanf (“%d%d”,&a,&b);
  m=n=1;
if  (a>0〕  m=m+n;
if  (a<b)   n=2*m;
else  if (a= =b)  n=5;
    e1se  n=m+n;
printf (“m=%d   n=%d\n”,m,n);
        }
(1)当输入为-1  -2<回车>,程序的运行结果为                 
(2)当输入为l  0<回车>,程序的运行结果为                 
(3)为了输出n=4,变量a和b应具备条件                 

3.下面程序的运行结果为
   # include  <stdio.h>
    void  main( )
    {  int  j,i,k=0;
       for (j=11;j<=30;j++)
       {  if(k%10= =0)  printf (“\n”);
for (i=2;i<j;i++)
              if (!(j%i) )   break;
if (i>= j-1)
{  printf (“%d\t”,j );
k++;}
       }
    }
   结果:


4.写出下面程序运行结果。
# include <stdio.h>
maiin( )
{  int  x=1;
void f1 ( ),f2( );
f1( );   
printf (“x=%d\t”,x);
f2(x);
printf (“x=%d\t”,x);
}
void  f1 ( )
{  int x=3;
printf (“x=%d\t”,x);}
 
void  f2 ( int  x)
{  printf (“x=%d\t”,++x);}
结果:


三、程序填空题
1.下面的程序输出3到100之间的所有素数。
#tnclude<stdio.h>
main  ( )
 {  int  i,j;
for  (i=3;i<=100;i++)
   {  for(j=2;j<=i-1;j++)
if (________ )   break;
if (________)
printf  (“%4d”, i )
}
                   }

2.下面的函数gcd (a, b)计算两个整数a和b的最大公因子。
gcd  (  int num,  int den)
{  int temp;
   while(den)
   {  temp=________;
      num=den  
den=temp;
}
return (___________);
}

3.函数primedec(m)是求整数m的所有素数因子,并输出。例如:m为120时,输出的素数因子为:2,2,2,3,5
primedec (int m)
{  int k=2;
                  while(k<m)     
                      if (m%k_________)
{ printf (“%d,”k);
        ____________;
}
else   __________;
                  }

4.己知:nx和ny的末3位数字相同,并见x≠y, x、y、n均为自然数,本程序的功能是:由键盘输入n.求满足上述条件的x、y,并使x+y为最小。
# include <stdio.h>
pow3 (int n,int  x)
{  int  i,1ast;
   for (1ast=l,i=1;i<=x;i++ )
1ast=            
   return (last );
}
main( )
{  int  x,n,min,flag=1;
   scanf (“%d”,&n);
   for ( min=2;flag;min++)
for( x=1;x<min&&falg;x++)
  if (              &&pow3 (n,x)= =pow3(n, min-x) )
  {  printf (“min=%d=%d+%d \n”,min,x,min-x );
                              
  }
}   






搜索更多相关主题的帖子: C语言 试题 
2010-05-13 21:45
parkour
Rank: 2
等 级:论坛游民
帖 子:63
专家分:39
注 册:2009-1-3
收藏
得分:6 
DBCBAABCDABD
2010-05-13 23:52
vkbkjk
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-5-13
收藏
得分:0 
回复 2楼 parkour
大哥  回答完啊   谢谢谢谢啦·········
2010-05-14 21:08
kingarden
Rank: 2
等 级:论坛游民
威 望:1
帖 子:517
专家分:40
注 册:2004-12-8
收藏
得分:6 
典型的不劳而获类,汗~~~飘过!

〖ΦγЙ┅给梦一把梯子,现实与梦想之间的距离即可忽略,不可跨越的迢迢银河举步便可迈过Й┅Φ〗
2010-05-14 21:17
千叶林
Rank: 2
等 级:论坛游民
帖 子:26
专家分:18
注 册:2010-1-27
收藏
得分:6 
我晕用手机上网无法回答你况且你的问题太多了。
2010-05-15 15:42
快速回复:求一套C语言试题答案! 只要答案 不要分析!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.074469 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved