当前位置: 首页 > 文档资料 > 学习 C 语言 >

C Programming 在线测试

优质
小牛编辑
117浏览
2023-12-01

以下测验提供与C Programming Framework相关的多项选择题(MCQ)。 您必须阅读所有给定的答案并单击正确的答案。 如果您不确定答案,则可以使用“ Show Answer按钮Show Answer 。 您可以使用“ Next Quiz按钮在Next Quiz中检查新的问题集。

问题和解答

Q 1 - int x = ~1; 'x'的价值是多少?

A - 1

B - -1

C - 2

D - -2

Answer : D

说明 (Explanation)

-2,1的赞美是1110(二进制),相当于2的2的赞美,即-2。

问题2 - 以下程序的输出是什么?

#include<stdio.h>
main()
{
   int i = 1;
   while(i++<=5);
       printf("%d ",i++);
}

A - 4

B - 6

C - 2 6

D - 2 4

Answer : B

说明 (Explanation)

6,'while'后面有一个空语句。

问3 - 以下程序的输出是什么?

#include<stdio.h>
main()
{	
   union abc {
      int x;
      char ch;
   }var;
   var.ch = 'A';
   printf("%d", var.x);
}

A - A.

B - Garbage value

C - 65

D - 97

Answer : C

说明 (Explanation)

65,因为联合变量共享其所有元素的公共存储器,x得到'A',其ASCII值为65并被打印。

Q 4 - 选择与以下程序相关的正确选项。

#include<stdio.h>
void f(int const i) 
{
   i=5;
}
main() 
{
   int x = 10;
   f(x);
}
  • I - 语句'void f(int const i)'中的错误

  • II - 声明中的错误i = 5。

A - 陈述I和II都是真的

B - 陈述I和II是错误的。

C - Statement I is true

D - Statement II is true.

Answer : D

说明 (Explanation)

我们不能像声明i = 5那样修改常量。

问题5 - 比较两个字符串的内置库函数是什么?

A - string_cmp()

B - strcmp()

C - equals()

D - str_compare()

Answer : B

说明 (Explanation)

strcmp()是来自“string.h”的内置函数,用于比较两个字符串。 如果两个字符串相同,则返回0。 如果第一个 首先返回1>秒。

Q 6 - 16位DOS OS中的Turbo C,“long double”的正确范围是,

A - 3.4E -4932至3.4E +4932

B - 3.4E -4932至1.1E +4932

C - 4.1E -4932至5.1E +4932

D - 0.7E -4932至1.8E +4932

Answer : B

说明 (Explanation)

说明:积分和进动值取决于为特定数据类型指定的字节数。

问题7 - 结构,联合和枚举之间的相似性,

A - 所有都有助于定义新变量

B - All有助于定义新数据类型

C - All有助于定义新指针

D - All有助于定义新结构

Answer : B

说明 (Explanation)

结构,联合和枚举所有这些都可以定义新的数据类型。

问题8 - 在下面给出的代码中,函数fopen()使用“r”以二进制模式打开文件“source.txt”用于何种目的?

#include<stdio.h>
int main ()
{
   FILE *fp;
   fp = fopen("source.txt", "r");
   return 0;
}

A - For reading

B - 用于阅读和写作

C - 用于创建新文件“source.txt”以供阅读

D - 用于创建用于写入的新文件“source.txt”

Answer : A

说明 (Explanation)

要在C编程中打开文件,我们可以使用库函数fopen()。 在上面给出的代码中,fopen()函数打开一个文件“source.txt”进行读取。 这里,“r”代表阅读。 如果,fopen()函数找不到任何要读取的文件,则返回NULL

#include<stdio.h>
int main ()
{
   FILE *fp;
   fp = fopen("source.txt", "r");
   return 0;
}

问题9 - 以下程序的输出是什么?

#include<stdio.h>
int main()
{
   const int x = 5;
   const int *ptrx;
   ptrx = &x;
   *ptrx = 10;
   printf("%d\n", x);
   return 0;
}

A - 10

B - 20

C - 0

D - 程序将返回错误

Answer : D

说明 (Explanation)

上述程序将返回错误

#include<stdio.h>
int main()
{
   const int x = 5;
   const int *ptrx;
   ptrx = &x;
   *ptrx = 10;
   printf("%d\n", x);
   return 0;
}

问题10 - 如果,下面给出的代码找到字符串的长度,那么长度是多少?

#include<stdio.h>
int xstrlen(char *s)
{
   int length = 0;
   while(*s!='\0')
   {length++; s++;}
   return (length);
}
   int main()
{
   char d[] = "IndiaMAX";
   printf("Length = %d\n", xstrlen(d));
   return 0;
}

A - 代码返回错误

B - 代码返回长度8

C - 代码返回长度6

D - 代码返回长度2

Answer : B

说明 (Explanation)

这里,* s是包含字符串的char指针。 要打印整个字符串,我们使用printf(“%s”,s)使用基址。 s包含基址(&s [0]),printf将打印字符,直到'\ 0'出现。 * s只给出输入字符串的第一个字符,但s ++会将基址增加1个字节。 当遇到* s =='\ 0'时,它将终止循环。

#include<stdio.h>
int xstrlen(char *s)
{
   int length = 0;
   while(*s!='\0')
   {length++; s++;}
   return (length);
}
   int main()
{
   char d[] = "IndiaMAX";
   printf("Length = %d\n", xstrlen(d));
   return 0;
}