C语言基础-C面试问题和答案

为什么要问“C编程-C语言基础”的面试问题?

在本节中,您可以学习和练习基于“C编程-C语言基础”的面试问题,并提高您的技能以面对面试。竞争性考试和各种入学考试(CAT,门,GRE,垫子,银行考试,铁路考试等)充满信心。

在哪里可以得到“C编程-C语言基础”的访谈问题和解释答案?

188bet虚拟体育Indiabix为您提供了许多完全解决的“C编程-C语言基础”采访问题和解释答案。所有的学生,Freshers可以下载“C编程-C语言基础”测验问题,答案是PDF文件和电子书。有详细答案描述的解决示例,给出了解释,很容易理解。查看有感觉和良好的用户界面问题的解决方案;轻松完成所有问题和答案。

如何回答“C编程-C语言基础”的面试问题?

通过练习下面给出的练习,您可以轻松回答基于“C编程-C语言基础”的面试问题。


  1. 什么是本地块?

    本地块是由左大括号括起来的C程序的任何部分。({)和右支架(})C函数包含左大括号和右大括号,因此,两个大括号之间的任何内容都包含在本地块中。安如果语句或转换语句还可以包含大括号,因此,这两个大括号之间的代码部分将被视为本地块。

    此外,您可能希望在不借助C函数或关键字构造的情况下创建自己的本地块。这是完全合法的。变量可以在本地块中声明,但它们只能在本地块的开头声明。以这种方式声明的变量只在本地块中可见。本地块内声明的重复变量名优先于本地块外声明的同名变量。下面是一个使用本地块的程序示例:

    包括:
               
                void main(void);void main()/*开始函数main()*/int test_var=10的本地块;printf(“if语句前的测试变量:%d\n”,Test-Var);if(test_var>5)/*开始“if”语句的本地块*/int test_var=5;printf(“if语句中的测试变量:%d\n”,Test-Var);/*开始独立的本地块(不绑定到任何函数或关键字)*/int test_var=0;printf(“独立本地块中的测试变量:%d\n”,Test-Var);}/*结束独立的本地块*//*结束“if”语句的本地块*/printf(“if语句后的测试变量:%d\n”,test_var);/*结束函数main()的本地块*/
               

    此示例程序生成以下输出:

    测试变量之前如果声明:10

    测试变量在如果声明:5

    独立局部块内的测试变量:0

    测试变量后如果声明:10

    注意,当每个测试变量被定义时,它优先于先前定义的TestVar.也可以说当如果语句本地块已结束,程序已重新进入原始的范围TestVar,它的值是10。

  2. 变量应该存储在本地块中吗?

    使用本地块存储变量是不常见的,因此应避免使用本地块,只有很少的例外。其中一个例外是为了调试,当您可能想要声明一个全局变量的alocal实例在您的函数中进行测试时。当您希望使程序在当前上下文中更具可读性时,也可能希望使用本地块。

    有时将变量声明为更接近使用它的位置会使程序更具可读性。然而,编写良好的程序通常不必使用这种方式声明变量,您应该避免使用本地块。

  3. 何时是 转换比多重更好的陈述 如果声明?

    转换当有两个以上的条件表达式基于一个数值类型的变量时,通常最好使用语句。例如,而不是代码

    if(x==1)printf(“x等于一。\n”);else if(x==2)printf(“x等于二。\n”);else if(x==3)printf(“x等于三。\n”);else printf(“x不等于一,两个,或三。\n);

    以下代码易于阅读和维护:

    开关(X)案例1:printf(“X等于1”。\n”);断裂;案例2:printf(“x等于2。\n”);断裂;案例3:printf(“x等于3。\n”);断裂;默认值:printf(“x不等于1,两个,或三。\n);断裂;}

    请注意,要使此方法起作用,条件表达式必须基于数字类型的变量才能使用switch语句。也,条件表达式必须基于单个变量。例如,即使以下如果语句包含两个以上的条件,它不是使用转换语句,因为它基于字符串比较而不是数字比较:

    char*name=“lupto”;如果(!Struts(名字,“isaac”))printf(“你的名字意味着‘笑声’”;)否则如果(!Struts(名字,“amy”))printf(“你的名字意味着‘亲爱的’);否则,!Struts(名字,“劳埃德”))printf(“你的名字意味着‘神秘’”;其他printf(“我不知道你的名字是什么意思”);

  4. 默认情况下 转换声明?

    不,但这不是一个坏主意违约语句转换用于错误或逻辑检查的语句。例如,以下switch语句完全正常:

    开关(字符代码)案例'Y':案例'Y':printf(“你回答是!\n);断裂;case'n':case'n':printf(“你回答不!\n);断裂;}

    考虑一下,然而,如果一个未知的字符代码被传递给这个转换语句。程序将不打印任何内容。这是个好主意,因此,插入一个违约在这种情况下:

    …默认值:printf(“未知响应:%d\n”,查尔码);打破;…

    此外,违约案例对逻辑检查很有用。例如,如果你转换语句处理了固定数量的条件,并且您认为这些条件之外的任何值都是逻辑错误,您可以插入违约会标记该条件的情况。请考虑以下示例:

    void move_cursor(int direction)switch(direction)case up:cursor_up();断裂;case down:光标_down();断裂;case left:光标_left();断裂;case right:光标_right();断裂;默认值:printf(“第%ld行出现逻辑错误!”!!!\n,α-LynYX);断裂;}