7道C语言面试题,7分钟完成。你能做对几道?

序员 2017-09-20 04:54:29
请在下列所有题目的横线上填写printf的值
//1
void e(int n) {
if(n>0) {
e(--n);
printf("%d",n);
e(--n); }
}
int main() {
int a;
a=3;
e(a);
}
// 2
int i=3;
int j;
j = sizeof(++i+ ++i);
printf("%d%d", i ,j);

//3
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
printf("%d%d",*(a+1),*(ptr-1));
//4
struct node { char a; char b; char c;char d;};
int main() {
struct node s= { 3, 1,0,8 };
struct node *pt = &s;
printf("%d" , *(unsigned short*)pt);}


//5
#define value(Structure,Field) \
((unsigned int)&(((Structure*)0)->Field))
typedef struct {
short a;
char b;
char* c;
long (*d)[3];
float e;
}init;
int main()
{
printf("%d",value(init,e));
}

//6
float a=27.02;
int i=8,j=32;
unsigned int b = *(unsigned int*)&a;
int c= b-0x8ED212CC;
printf("%d%d",j-2*i,i+=((c<0)?-1:2));


//7
int (*foo(int(*a)[3]))[3]{return ++a;}
int main(){
int a[3][3]={2,-1,3,4,8,1,20,7,6} ;
int ( *p )[3] = foo( a );
printf("%d",*1[p]);}






需要验证可以上机测试。
快速查看答案 可以戳这里
...全文
327 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
自信男孩 2017-09-21
  • 打赏
  • 举报
回复
第二个求i的值可能会有不同的值(不同编译器上编译)
wang0635 2017-09-21
  • 打赏
  • 举报
回复
第4题应指定大小端及short的大小,题目中就有两个错误。不做也罢
qq_29846883 2017-09-21
  • 打赏
  • 举报
回复
[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/25.gif][/img 卧槽!对比答案,我0分。。
paschen 2017-09-20
  • 打赏
  • 举报
回复
不经意的话可能就掉坑里了

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧