C 程序的输出 |第 65 组(If-Else)
先决条件: C中的决策
问题 1
C
#include"stdio.h"
#include"stdlib.h"
void reverse(int i)
{
if (i > 5)
exit(0);
printf("%d\n", i);
return reverse(i++);
}
int main()
{
reverse(1);
}
C
#include"stdio.h"
int main()
{
if(-1L>1UL)
printf("paul is crazy");
else
printf("mannu is Crazy");
}
C
#include"stdio.h"
int main()
{
int i;
if(i=0,2,3)
printf("Geeksforgeeks ");
else
printf("Hello ");
printf("%d\n",i);
}
CPP
#include"stdio.h"
int main()
{
int i;
if(i=(2,1,0))
printf("Geeksforgeeks ");
else
printf("Hello ");
printf("%d\n",i);
}
C
#include"stdio.h"
int main()
{
float a=0.7d;
if(a<0.7)
printf("C");
else
printf("C++");
return 0;
}
选项:
a)分段错误
b) 编译错误
c) 打印 1 无限时间
d) a 和 c
OUTPUT: (d)Both a & c
解释:
我们一次又一次地以 1 调用 main 方法,因为我们使用了后增量。在特定时间堆栈帧将满意味着发生分段错误。
问题2
C
#include"stdio.h"
int main()
{
if(-1L>1UL)
printf("paul is crazy");
else
printf("mannu is Crazy");
}
选项:
a) 曼努疯了
b) 保罗疯了
OUTPUT: (b)paul is crazy
解释:
在这里,long int 和 unsigned long int 之间的比较通常是不可能的。
现在,long int 被提升为 unsigned long int,其值将是
(2^size_of_unsigned_long_int)-1。
问题 3
C
#include"stdio.h"
int main()
{
int i;
if(i=0,2,3)
printf("Geeksforgeeks ");
else
printf("Hello ");
printf("%d\n",i);
}
选项:
一)你好 3
b) 你好 0
c)Geeksforgeeks 0
d) Geeksforgeeks 3
OUTPUT: (c) Geeksforgeeks 0
说明:首先在 'i' 中赋值为零,然后逗号运算符返回最后一个值为 3 的值,条件变为真。
问题 4
CPP
#include"stdio.h"
int main()
{
int i;
if(i=(2,1,0))
printf("Geeksforgeeks ");
else
printf("Hello ");
printf("%d\n",i);
}
选项:
一)你好 3
b)Geeksforgeeks 0
c) 你好 0
d) Geeksforgeeks 3
OUTPUT: (c) Hello 0
说明:括号的优先级大于等于(=)运算符,所以首先逗号运算符返回最后一个值为零(0),然后等于(=)运算符将0分配给'i',条件变为假。
问题 5
C
#include"stdio.h"
int main()
{
float a=0.7d;
if(a<0.7)
printf("C");
else
printf("C++");
return 0;
}
选项:
a) 编译错误
b) C++
c)C
OUTPUT: (C)C