C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。下面就由我为大家介绍一下C语言面试题的文章,欢迎阅读。
C语言面试题篇1
1、已知字母b的ASCII码的十进制代码为98,则执行下列语句输出为( C)
ch=’b’
ch–
printf(%d,%c\n”,ch,ch)
A)a,b B)运算不合法,故有语法错 C)97,a
D)格式描述和输出项不匹配,输出无值
2、若变量a已说明为float类型,则能实现将a中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是( C)
A)a=(a*100+0.5)/100.0 B)a=(a*100+0.5)/100 C)a=(int)(a*100+0.5)/100
D)a=(a/100+0.5)*100.0
3、下列程序段的输出结果是(B )
int a=5,b=7
printf(“%d,%d”,a++,++b)
A)5, 7 B)5, 8 C)6, 7 D)6, 8
C语言面试题篇2
1、下列程序的输出结果是(D )
main()
{ int a=4
a*=a+=6
printf(“%d\n”,a)
}
A)40 B)60 C)80 D)100
2、下列程序的输出结果是( C)
main()
{int a=8
printf(“%a”,(a=a*5,a+6))
}
A)14 B)40 C)46 D)50
C语言面试题篇3
1、定义a为整型,下列表达式a=3>6的运行后,a的值为(A )
A)0 B)1 C)3 D)表达式错误
2、、如果a=1,b=2,c=3,d=4,则条件表达式a>b?a: c>d?c: d的值为( D)
A)1 B)2 C)3 D)4
3、下述程序段的输出结果是( A)
{int a=5
a%=7
printf(“%d, ”,a)
a+=a*=a-=a*=2
printf(“%d”,a)
}
A)5, 0 B)0, 0 C)5, 12 D)0, 12
4、下列变量名中合法的是(A )
A)Tom B)3a6b C)6a7b D)5ABC
5、对于条件表达式(M)?(a++): (a–),其中的表达式M等价于(C )
A)M= =0 B)M= =1 C)M!=0 D)m!=1
c语言面试经常问到的问题有:
1、C语言的主要特征是什么?
C是一种过程语言。C语言的主要功能包括对内存的低级访问,简单的关键字集和简洁的样式。这些功能使其适用于诸如操作系统或编译器开发之类的系统编程。
2、i ++和++i有什么区别?
1)表达式“i ++”返回旧值,然后递增i。表达式++i递增该值并返回新值。
2)后缀++的优先级高于前缀++。
3)后缀++的关联性从左到右,前缀++的关联性从右到左。
4)在C ++中,++i可用作左值,但i ++不能用作左值。在C中,它们都不能用作l值。
3、什么是l值?
l值或位置值是指可以在赋值运算符左侧使用的表达式。例如,在表达式“a = 3”中,a是l值,而3是r值。
l值有两种类型:
“不可修改的l值”表示无法修改的l值。const变量是“不可修改的l值”。
“可修改的l值”表示可以修改的l值。
4、数组和指针有什么区别?
指针用于存储动态分配的数组的地址,以及用于作为参数传递给函数的数组。在其他情况下,数组和指针是两个不同的东西,尽管数组和指针是不同的东西,但是数组的以下属性使它们看起来相似。
5、C语言中的“循环”数据类型是指什么?
所谓的“循环”数据类型,其实就是某种类型的数据溢出后,又从头开始存储。一个典型的例子是unsigned char变量若已经等于255,仍然对其加1,那么该变量就会溢出从头开始,也即等于零:
unsigned char a = 255。
a = a+1// a等于0。
C语言笔试题(1)
第1题:完成文件的拷贝,srcFileName为源文件名,dstFileName 为目标文件名。
int copy_file(const char *srcFileName, const char *dstFileName)
第2题:设有文件a.file, 请写出程序在文件的开头插入 字符串 “ file start: ”
第3题:
已知
union un {
short s
char a[3]
}
求sizeof(union un)?
第4题:
请描述以下代码中的p,
char(*(*p())[])(int, void (*)())
第5题:
已知
union un {
short s
char a[3]
}
求sizeof(union un)?
C语言笔试题(2)
第1题:已知 char a[] = “abc\0efg”, 求sizeof(a) 和 strlen(a)
第2题:1, 写程序完成M进制转N进制,M、N为1~10之间。
mton(const char* mNum, int m, char *nNum, int n)
第3题:完成16进制字符串相加,返回相加后的16进制字符串。
char* sum_str16(const char* str1, const char* str2)
第4题:完成strlen函数,要求除参数外,不能使用变量和库函数。
第5题:用链表完成结点的添加、删除操作。
typedef struct student
{
int studentNum,
struct student *next
}STU
C语言笔试题(3)
第1题:两个字符串,s,t把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串
第2题:printf (“%d%d\n”,++n, power(2,n))其中power(2,n)为实现一定功能的函数 如 2^n 。请问这种表示方法有什么潜在的问题?
第3题:printf (s)
请问这样的语句有没有问题?(s为一指向有效字符串的指针)
第4题:两段代码共存于一个文件,编译时有选择的编译其中的一部分,请问如何实现?
第5题:数据结构指针传给函数,函数能访问数据单元,但不能修改实际的内容,如何实现?
C语言笔试题(4)
第1题:两个字符串,s,t把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串
第2题:char *a = “hello”
char *b = “hello”
if(a= =b)
printf(“YES”)
else
printf(“NO”)
第3题:简述stack frame 的含义
第4题:printf (“%d%d\n”,++n, power(2,n))其中power(2,n)为实现一定功能的函数 如 2^n 。请问这种表示方法有什么潜在的问题?
第5题:printf (s)
请问这样的语句有没有问题?(s为一指向有效字符串的指针)
C语言笔试题(5)
第1题:在头文件中定义静态变量,可能产生什么问题?
第2题:malloc()与 calloc()的区别?
第3题:寄存器变量可不可以访问其地址?可否是全局变量?在什么场合使用寄存器变量?
第4题:“\n” ‘\n’ 的区别?
第5题:#include “stdio.h”
int main()
{
int a
int *p
p = &a
*p = 0×500
a = (int )(*(&p))
a = (int )(&(*p))
if(a == (int)p)
printf(“equal !\n”)
else
printf(“not equal !\n”)
}
请问本程序的输出显示是什么?