C 程序的输出 |设置 42
QUE.1 以下程序的输出是什么?
C
#include
int main()
{
int x = 10, *y, **z;
y = &x;
z = &y;
printf("%d %d %d", *y, **z, *(*z));
return 0;
}
C
#include
int main()
{
// initialise the val=1
int val = 1;
do {
val++;
++val;
} while (val++ > 25);
printf("%d\n", val);
return 0;
}
C
#include
int main()
{
int a = 1, b = 2, c = 3;
char d = 0;
if (a, b, c, d) {
printf("enter in the if\n");
}
printf("not entered\n");
return 0;
}
C
#include
int main()
{
char str[10] = "Hello";
printf("%d, %d\n", strlen(str), sizeof(str));
return 0;
}
C
#include
int main()
{
if (0)
;
printf("Hello");
printf("Hi");
return 0;
}
一种。 10 10 10
湾100xaa54f10
C。运行时错误
d.无输出
Answer : a
解释:因为 y 包含 x 的地址,所以 *y 打印 10 然后 **z 包含 x 的 y 的地址,所以打印 x 10 的值,第三个 *(*z) 包含 x 的 y 的地址,这就是为什么打印 10。所以,最终输出为 10 10 10。
QUE.2 以下程序的输出是什么?
C
#include
int main()
{
// initialise the val=1
int val = 1;
do {
val++;
++val;
} while (val++ > 25);
printf("%d\n", val);
return 0;
}
一)25
b) 50
c) 12
d) 4
Answer : d
说明:这里,do while 循环执行一次,然后它会检查条件 while 为 false 同时值将增加 3 倍(在 do while body 中两次,在检查条件时一次);
因此值为 4。
QUE.3 文本文件中以下程序的输出是什么?
C
#include
int main()
{
int a = 1, b = 2, c = 3;
char d = 0;
if (a, b, c, d) {
printf("enter in the if\n");
}
printf("not entered\n");
return 0;
}
a) 输入如果
b) 未输入
c) 运行时错误
d) 分段错误
Answer : b
说明:在这个程序中,我们检查 if 条件 all (a, b, c)>0 but d = 0 so condition is false 没有进入 if so 打印没有进入。
QUE.4 以下程序的输出是什么?
C
#include
int main()
{
char str[10] = "Hello";
printf("%d, %d\n", strlen(str), sizeof(str));
return 0;
}
a) 5, 10
b) 10、5
c) 10、20
d) 没有提到的
Answer: a
说明: strlen 给出字符串的长度为 5; sizeof 给出了一个为 8 的变量所占用内存的总数;因为 str 是一个指针,所以 sizeof(str) 可能是 2、4 或 8。
这取决于计算机体系结构。
QUE.5 以下程序的输出是什么?
C
#include
int main()
{
if (0)
;
printf("Hello");
printf("Hi");
return 0;
}
选项
一)嗨
b) 你好
c) 运行时错误
d) 没有提到的
Answer : b
说明: if语句后面有一个分号,所以这条语句会被当作一个单独的语句;这里 printf(“你好”);不会与 if 语句相关联。这两个 printf 语句都将被执行。