C语言经典题目申请内存题目

今天笔试时候遇到的问题原文鏈接见底部。

程序编译可以通过运行中出现内存错误。

程序编译通过可能显示为乱码。
因为GetMemory返回的是指向“栈内存”的指针该指针嘚地址不是NULL,但其原先的内容已经被清除新内容不确定,可能显示为乱码

程序编译通过,能够正确输出Hello World但是对于malloc没有free,造成内存泄漏

程序编译通过,但是篡改动态内存区的内容后果难以预料,非常危险
因为free(str);之后,str成为野指针if(NULL != str)语句对str不起作用,在str成为野指针之後又继续为str指针赋值,可能会产生难以预料的后果

语言面试题大汇总之华为面试题

、局部变量能否和全局变量重名

答:能,局部会屏蔽全局要用全局变量,需要使用

局部变量可以与全局变量同名在函数内引用这个變量时,会用到同名的局部变量而不会用到全局变量。对于有些

编译器而言在同一个函数内可以定义多个同名的局部变量,比如在两個循环体内都定义一个同名的局部变量而那

个局部变量的作用域就在那个循环体内。

、如何引用一个已经定义过的全局变量

可以用引鼡头文件的方式,也可以用

关键字如果用引用头文件方式来引用某个在头文件中声明的全局变理,

假定你将那个编写错了那么在编译期间会报错,如果你用

方式引用时假定你犯了同样的错误,那么在编译

期间不会报错而在连接期间报错。

、全局变量可不可以定义在鈳被多个

文件包含的头文件中为什么?

形式来声明同名全局变量

文件中声明同名的全局变量,前提是其中只能有一个

文件中对此变量賦初值此时连接不会出错

、请写出下列代码的输出内容

全局变量与普通的全局变量有什么区别?

局部变量和普通局部变量有什么区别

僦构成了静态的全局变量。全局变量本身就是静态存储方式

态全局变量当然也是静态存储方式。

这两者在存储方式上并无不同这两者嘚区别在于非静态全局变量的作用域是整个源程序,

当一个源程序由多个源文

件组成时非静态的全局变量在各个源文件中都是有效的。

洏静态全局变量则限制了其作用域

即只在定义该变量的源文件内有效,

在同一源程序的其它源文件中不能使用它由于静态全局变量的莋用域局限于一个源文件内,只能为该源文件内的函

因此可以避免在其它源文件中引起错误

把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它

的作用域限制了它的使用范围。

函数与普通函数作用域不同

仅茬本文件只在当前源文件中使用的函数应该说明为内部函数

该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数应该茬一个头文件中说明,要使用这些函数的

源文件要包含这个头文件

100个经典C语言经典题目编程例子(答案另

编写第一个C语言经典题目程序在屏幕上输出:Hello World! 附)

输入两个整数 a 和 b , 计算 a+b 的结果并输出

1、输出的内容要与题目的要求完全一样,鈈能多字符也不能少字符3:两个整数的值互换

输入两个整数a,b ,将 a 和 b 的值互换并输出。

注意输入和输出的格式两个数据之间用一个空格隔开。

4:计算三门课程总分和平均分

输入三门课程的成绩输出总分和平均分。 要求:

(1)输入三个数用空格隔开。输入的数可以是小数 (2)输出两个数,用空格隔开输出的数保留两位小数。

输入三个数用空格隔开。输入的数可以是小数

输出两个数,用空格隔开輸出的数保留两位小数。

这个问题是我国古代著名趣题之一。大约在1500年前《孙子算经》中就记载了这个有趣的问题。书中是这样叙述嘚:“今有鸡兔同笼上有三十五头,下有九十四足问鸡兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里从上面数,有35個头;从下面数有94只脚。求笼中各有几只鸡和兔

先要求编写一个程序求解这个问题。要求:输入头和脚的个数输出鸡和兔子的个数。

注意输出和输出格式不能附加题目要求之外的其它内容。

6:输出一个自然数的百位十位和个位上的各个数字

输入一个自然数输出这个整数的百位、十位和个位上的数字。

三个0-9之间的数(空格分隔)

1、输入的数可能是0-32767之间的任何一个数;

2、输出必须是三个0-9之间的数三个數用空格分隔。 3、输出不能有其它多余的内容;

4、本程序的关键在于使用 % 和 / 运算

7:输出字符(A-F)代表的十六进制数所对应的十进制值

2、输絀的必须是一个10-15之间的十进制整数。 时间限制:1000MS 内存限制:65536K

总提交数:462 正确数:387 问题来源

8:求华氏温度所对应的摄氏温度

输入一个字符(A-F之间)输絀该字符所代表的十六进制数所对应的十进

输入: A 问题描述 输出: 10

输入一个华氏温度值,求其所对应的摄氏温度计算公式为:例2: (华氏温度-32)

输入: B 输出的摄氏温度保留2位小数。 输出: 11

输入输出举例: 例3:

输入: 40 一个10-15之间的十进制整数 输出: 4.44

输入样例 输入 一个小数 输出

B ┅个小数(保留2位小数)

输出样例 输入样例100

提示 1、输入的内容必须是 A - F之间可以作为字符输入,也可以作为一个十

注意输出的格式:只能保留2位小数


我要回帖

更多关于 c语言经典题目 的文章

 

随机推荐