C高级第一天

  

一、单项选择题

     1、下列程序段的输出结果是(   C 

       #include

       void main()

       {

              int a = 6, b = 4;

              a += a - b;

           b *= a = a + b;

              printf("%d, %d\n", a%2, b);

       }

    A: 6, 48                 B: 4, 32                 C: 0, 48          D: 6, 32

     2、在Ubuntu操作系统中,我刚刚执行了 " dpkg  -i  text_1.2.3-4_all.deb " 命令安装了一个名为text的软件包,现在要将其卸载干净,应该执行以下哪条命令(   D 

    A: rm -rf text*

    B: rpm -e text

    C: yum remove text

    D: dpkg -P text

     3改变文件所有者的命令为(  C 

    A: chmod             B:chcon              C:chown               D:chgrp

     4你使用命令 " vim /etc/ssh/sshd_config " 查看该文件的内容,你不小心改动了一些内容,为了防止系统出问题,你不想保存所修改的内容,你应该如何操作(  A  

    A:在末行模式下,键入 " q! "

    B:在命令行模式下,键入 " q! "

    C:在可视模式下,键入 " q! "

    D:在编辑模式下,按下ESC键后,键入 " :wq! "

二、填空题

  1. 解压 text.tar.gz 文件,需要执行命令:_ tar -xvf text.tar.gz___

三、简答题

     1、简述C语言中使用 < > 和 “ ” 引用头文件的区别。

<>引用头文件,会在标准库目录(/usr/include/)查找头文件

""引用头文件,先会在指定目录查找头文件,找不到再去标准库目录查找头文件

四、程序设计

     1、使用C语言编写一段程序,实现从1开始以每秒累加1的方式向终端打印数字,写到100后停止。要求代码格式规范,输出结果清晰易懂。 提示:sleep(1)

代码:

#include 
#include 

int main(int argc, const char *argv[])
{
	int i;
	for(i = 1; i <= 100; i++)
	{
		printf("%d\n",i);
		sleep(1);
	}
	return 0;
}

运行结果:

C高级第一天_第1张图片

  1. 使用C语言或者shell,编写一个程序,提取字符串 " Depends: libc6 (>= 2.2.5), libncurses5 (>= 6), libtinfo5 (>= 6) " 中的libc6、libncurses5、libtinfo5。

代码:

#!/bin/bash

var="Depends: libc6 (>= 2.2.5), libncurses5 (>= 6), libtinfo5 (>= 6)"

var1=${var#* }

var2=${var#*, }

var3=${var##*, }
echo "${var1%%(*} ${var2%%(*} ${var3%%(*}"

运行结果:

你可能感兴趣的:(linux)