• C语言题收录(七)


    1、设a=2,b;则执行b=a&&1;语句后,b的结果是____。

    • A:0
    • B:1
    • C:2
    • D:3
    解析

    因为=比&&的优先级低,所以先执行逻辑与操作。a=2是非零,即为真,所以a&&1为真,真为1,则b=1。

    答案:B

    2、以下程序的运行结果是____。

    int main()
    {
    	int a=5,b=0,c=0;
    	if(a=b+c)  printf("***\n");
    	else  printf("$$$\n");
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • A:$$$***
    • B:***$$$
    • C:***
    • D:$$$
    解析

    先判断if语句。由于赋值语句a=b+c返回值为0,故执行else语句。

    答案:D

    3、下面程序段的运行结果是____。

    char *p="%d,a=%d,b=%d\n";
    int a=11,b=10,c;
    c=a%b; p+=3;
    printf(p,c,a,b);
    
    • 1
    • 2
    • 3
    • 4
    • A :1,a=111,b=10;
    • B:a=1,b=111;
    • C:a=111,b=10;
    • D:以上结果都不对
    解析

    题中字符指针p指向了字符串“%d,a=%d,b=%d\n”,c=a%b=11%10=1,p+=3使指针p向后移动了3个字符的位置。printf(p,c,a,b)相当于printf(“a=%d,b=%d\n”,c,a,b);,格式控制串指明输出两个数据,输出项有3项,则最后一项不输出,所以最后结果是a=1,b=11。

    答案:D

    4、以下程序的输出结果是____。

    main(){
    	printf("%f",2.5+1*7%2/4);
    }
    
    • 1
    • 2
    • 3
    • A:2.50000
    • B:2.75000
    • C:3.37500
    • D:3.00000
    解析

    优先级“%”>“”和“/”>“+”和“-”,计算过程:2.5+17%2/4=2.5+1*1/4=2.5+1/4=2.5+0=2.5。
    “%f”表示输出浮点型,保留6位小数,所以输出的结果为2.500000。

    答案:A

    5、有如下程序,该程序的输出的结果是____。

    int main()
    {
    	int i='\X80',j='\200';
    	printf("i=%d,j=%d",i,j);
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • A:-128,-128
    • B:80,200
    • C:128,128
    • D:128,200
    解析

    ‘\X’开头代表十六进制的数,因此将’\X80’换算成十进制为128;
    '\200’代表八进制数,转换成十进制为128。

    答案:C

    6、若在定义语句int a,b,c,*p=&c之后,接着执行以下选项中的语句,能正确执行的是____。

    • A:scanf(“%d”,a,b,c);
    • B:scanf(“%d%d%d”,a,b,c);
    • C:scanf(“%d”,p);
    • D:scanf(“%d”,&p);
    解析

    程序语句int a,b,c,*p=&c;定义了3个整型变量a,b,c和一个整型指针变量p,并且把变量c的地址赋给p。scanf函数的一般形式为"scanf(“格式控制字符串”,地址列表)",其中的地址列表应当是存放输入数据变量的地址。

    答案:C

    7、在VC上执行下列语句后,a的值是____。

    int a=3;
    a+=--a*a;
    
    • 1
    • 2
    • A:12
    • B:24
    • C:20
    • D:6
    解析

    a+=–aa;
    等价于a=a-1; a=a+a
    a;

    答案:D

    8、可以用数组名作为字符串变量整体输出的合法的数组说明语句是____。

    • A:char a[] = “string”;
    • B:int a[5]={0,1,2,3,4,5};
    • C:char a = “string”;
    • D:char a[] = {“1”,“2”,“3”,“4”,“5”};
    解析

    B中数组长度不够,D中数组未给出长度。

    答案:A

    9、设函数中有整型变量n,为保证其在未赋值的情况下初值为0,应选择的存储类别是____。

    • A:auto
    • B:register
    • C:static
    • D:auto或register
    解析

    在C语言中,对于静态局部变量static,编译时会自动给数值型变量赋初值0或者给字符变量赋初值"\0"。

    答案:C

    10、以下能正确定义数组并正确赋初值的语句为____。

    • A: int N=3,a[N][N];
    • B:int b[1][2]={{1}.{3}};
    • C:int c[2][]={{1,2},{3,4}};
    • D:int d[3][2]={{1,2}.{3,4}};
    解析

    A无法用变量定义数组大小;
    B二维数组定义错误;
    C二维数组缺少第二维大小。

    答案:D

    学海无涯苦做舟

    这里写图片描述

  • 相关阅读:
    反向代理软件frp和混合云组网软件openvpn
    【IT面试新理解】
    SpringBoot_第六章(知识点总结)
    岛屿类问题通用解法与DFS框架
    QT找不到ffmpeg链接库解决方法
    【小白专用 已验证】PHP连接SQLServer数据库
    激励-保健理论和公平理论
    leetcode 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
    Golang Web开发一键生成各层级模板代码
    华为累计报考PMP超万人次,他们为什么要考呢?
  • 原文地址:https://blog.csdn.net/HunterArley/article/details/126645222