试题通
试题通
APP下载
首页
>
IT互联网
>
数学C语言复习题库
试题通
搜索
数学C语言复习题库
题目内容
(
单选题
)
在C中,假定有以下变量定义:
int k=7 ,x=12;
则能使其值为 3 的表达式是( )。

A、x%=(k%=5)

B、x%=(k-k%5)

C、x%=k-k%5

D、(x%=k)-(k%=5)

答案:D

解析:能使其值为 3 的表达式是( )。 A.x%=(k%=5) B.x%=(k-k%5) C.x%=k-k%5 D.(x%=k)-(k%=5) 答案:D 解析:首先,% 是求余运算符。选项A中的表达式x%=(k%=5)会先计算k%=5,将k的值修改为5,然后计算x%5并将结果赋值给x。选项B中的表达式x%=(k-k%5)会先计算k-k%5,然后计算x%(k-k%5)并将结果赋值给x。选项C中的表达式x%=k-k%5会先计算k-k%5,然后将x%(k-k%5)的结果赋值给x。选项D中的表达式(x%=k)-(k%=5)会先计算k%=5,将k的值修改为5,然后计算x%=k并将结果赋值给x,然后计算(x%=k)-(k%=5)。只有选项D中的表达式可以使最终的结果为3。

试题通
数学C语言复习题库
试题通
在C语言中,定义数组int a[7]={3,4,5,6,7,8,9},则a[5]的值为( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd20.html
点击查看题目
在C中,函数调用:strcat(strcpy(str1,str2),str3)的功能是( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd04.html
点击查看题目
在C中,执行下面程序片段的结果是( )。
int x=23;
do
{ printf("%2d",x--);}
while(!x);
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd1b.html
点击查看题目
在C中,设x为int型变量,则执行以下语句后,x的值为( )。
x=10; x+=x-=x-x;
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd13.html
点击查看题目
在C语言中,若a=0x21,则printf("%d",a);输出值为( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd0d.html
点击查看题目
在C中,为了判断两个字符串s1和s2是否相等,应当使用( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd0f.html
点击查看题目
在C中,以下正确的说明语句是( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1920-c053-2053bf64dd0b.html
点击查看题目
在C中,若有以下定义:
char a; int b;
float c; double d;
则表达式a*b+d-c值的类型为( )
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd00.html
点击查看题目
在C语言中,定义 char a[]={'a','b','l','l','o'},已知字符'b'的ASCII码为98,则 printf("%d\n",a[0]); 的值为( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd0c.html
点击查看题目
在C中,若有以下定义:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为 3 的表达式是( )。
https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd0d.html
点击查看题目
首页
>
IT互联网
>
数学C语言复习题库
题目内容
(
单选题
)
手机预览
试题通
数学C语言复习题库

在C中,假定有以下变量定义:
int k=7 ,x=12;
则能使其值为 3 的表达式是( )。

A、x%=(k%=5)

B、x%=(k-k%5)

C、x%=k-k%5

D、(x%=k)-(k%=5)

答案:D

解析:能使其值为 3 的表达式是( )。 A.x%=(k%=5) B.x%=(k-k%5) C.x%=k-k%5 D.(x%=k)-(k%=5) 答案:D 解析:首先,% 是求余运算符。选项A中的表达式x%=(k%=5)会先计算k%=5,将k的值修改为5,然后计算x%5并将结果赋值给x。选项B中的表达式x%=(k-k%5)会先计算k-k%5,然后计算x%(k-k%5)并将结果赋值给x。选项C中的表达式x%=k-k%5会先计算k-k%5,然后将x%(k-k%5)的结果赋值给x。选项D中的表达式(x%=k)-(k%=5)会先计算k%=5,将k的值修改为5,然后计算x%=k并将结果赋值给x,然后计算(x%=k)-(k%=5)。只有选项D中的表达式可以使最终的结果为3。

试题通
分享
试题通
试题通
数学C语言复习题库
相关题目
在C语言中,定义数组int a[7]={3,4,5,6,7,8,9},则a[5]的值为( )。

A. 9

B. 6

C. 7

D. 8

解析:题目解析:题目中给出了一个数组的定义int a[7]={3,4,5,6,7,8,9},数组的索引从0开始,所以a[5]表示数组中的第6个元素,即8。因此,答案选项D.8是正确的。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd20.html
点击查看答案
在C中,函数调用:strcat(strcpy(str1,str2),str3)的功能是( )。

A. 将串str1复制到串str2中后再连接到串str3之后

B. 将串str1连接到串str2之后再复制到串str3之后

C. 将串str2复制到串str1中后再将串str3连接到串str1之后

D. 将串str2连接到串str1之后再将串str1复制到串str3中

解析:题目解析 函数调用strcat(strcpy(str1,str2),str3)的功能是将str2复制到str1中后再将str3连接到str1之后。函数strcpy(str1,str2)用于将str2的内容复制到str1中,然后strcat(str1,str3)用于将str3连接到str1的末尾。因此,选项C是正确答案。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd04.html
点击查看答案
在C中,执行下面程序片段的结果是( )。
int x=23;
do
{ printf("%2d",x--);}
while(!x);

A. 打印出321

B. 打印出23

C. 不打印任何内容

D. 陷入死循环

解析:题目解析 在这道题中,程序使用了do-while循环来打印变量x的值,然后将x自减。循环的条件是!x,也就是x不等于0。初始值x为23,所以循环会执行23次,每次打印x的值并将x自减。因此,循环结束时x的值为0,所以最后打印的结果是23。因此,答案为B.打印出23。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd1b.html
点击查看答案
在C中,设x为int型变量,则执行以下语句后,x的值为( )。
x=10; x+=x-=x-x;

A. 10

B. 20

C. 30

D. 40

解析: 执行语句后,先执行x-=x-x,即计算x-x得到0,然后将原先的x减去0,即保持不变。然后将这个结果赋值给x,所以最终x的值还是10。所以选项B的答案是正确的。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd13.html
点击查看答案
在C语言中,若a=0x21,则printf("%d",a);输出值为( )。

A. 20

B. 32

C. 33

D. 21

解析: 题目给出了一个变量定义 a=0x21。在 printf("%d",a) 这行代码中,%d 表示按十进制输出变量的值。0x21 是一个十六进制数,它转换为十进制数为33。所以答案选项 C.33 是正确的。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd0d.html
点击查看答案
在C中,为了判断两个字符串s1和s2是否相等,应当使用( )。

A. if (s1==s2)

B. if (s1=s2)

C. if (strcpy(s1,s2))

D. if (strcmp(s1,s2)==0)

解析:题目解析 在C中,为了判断两个字符串s1和s2是否相等,应当使用if (strcmp(s1, s2) == 0)。选项D是正确的答案。函数strcmp(s1, s2)用于比较两个字符串s1和s2的内容是否相等。如果相等,strcmp函数返回0,因此在条件判断中,我们需要检查strcmp(s1, s2) == 0来判断两个字符串是否相等。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1150-c053-2053bf64dd0f.html
点击查看答案
在C中,以下正确的说明语句是( )。

A. int A[3.6];

B. int A[3,4];

C. int A[][];

D. int *A[10];

解析:的答案是D。这是因为选项D中的语句 int *A[10]; 定义了一个指针数组 A,其中每个元素都是指向整数类型的指针。这种语法表示了一个指针数组,每个指针元素可以指向一个整数变量或整数数组,因此是正确的定义语句。选项A、B和C都有语法错误,不能正确定义数组或指针。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1920-c053-2053bf64dd0b.html
点击查看答案
在C中,若有以下定义:
char a; int b;
float c; double d;
则表达式a*b+d-c值的类型为( )

A. float

B. int

C. char

D. double

解析:表达式a*b+d-c值的类型为( ) A.float B.int C.char D.double 答案:D 解析:根据C语言的类型转换规则,当表达式中存在不同类型的操作数时,会进行隐式类型转换,将其转换为最宽类型的操作数类型。在这个表达式中,a和b都是char类型,c是float类型,d是double类型。根据类型转换规则,char类型会被提升为int类型,int类型会被提升为float类型,float类型会被提升为double类型。因此,ab的结果将是int类型,d-c的结果也将是double类型。最终,ab+d-c的结果的类型将是double类型。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd00.html
点击查看答案
在C语言中,定义 char a[]={'a','b','l','l','o'},已知字符'b'的ASCII码为98,则 printf("%d\n",a[0]); 的值为( )。

A. 97

B. a

C. 98

D. b

解析: 题目给出了一个字符数组的定义 char a[]={'a','b','l','l','o'},其中字符'b'的ASCII码为98。在 printf("%d\n",a[0]) 这行代码中,a[0]表示数组a的第一个元素,即'a'。由于'a'的ASCII码为97,所以答案选项 A.97 是正确的。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-1538-c053-2053bf64dd0c.html
点击查看答案
在C中,若有以下定义:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为 3 的表达式是( )。

A. a[g-c]

B. a[4]

C. a['d'-'c']

D. a['c'-c]

解析:与第一道题类似,表达式a['c'-c]中的'c'-c计算为一个整数值,然后作为数组a的索引。答案是D,即a['c'-c]。

https://www.shititong.cn/cha-kan/shiti/0005e04d-d9af-0d68-c053-2053bf64dd0d.html
点击查看答案
试题通小程序
试题通app下载