首页 > 分享 > C语言基础试题

C语言基础试题

C基础补习考试题
一、简答题(每题4分,部分题3分,共70分)
1、C中的内存有四种,代码段,数据段,栈,堆;请问:全局变量、static 修饰的局部变量、字符串常量、普通的局部变量、malloc开辟内存、函数分别是存储在什么内存当中的,并且分别说明什么时候开辟内存,什么时候销毁内存。(4分)    
2、运行char a[] = ”abc”后,内存会开辟几块内存,这此内存共占多少个字节? (4分) 
3、运行char *p = ”abc”后,内存会开辟几块内存,这此内存共占多少个字节? (4分)
4、简述const的作用?至少写两种? (4分)
5、int *(*p)[3]; 那么指针p的偏移量是多少字节?(4分)
6、头文件中的 ifndef/define/endif 干什么用?(4分)
7、#include  <filename.h>   和  #include  “filename.h” 有什么区别? (4分)
8、以下代码的的打印结果相同吗? (4分)
char a1[]=”abc”, char a2[]=”abc”, printf(“%pn”,a1);printf(“%pn”,a2);
9、以下代码的的打印结果相同吗?(4分)
Char *s1 =”abc”, char *s2 =”abc”, printf(“%pn”,a1);printf(“%pn”,a2);
10、char x = 1;  char y = x<<7; 请问y是正数还是负数? (4分)
11、char x = 1;  char y =~x;请问y是正数还是负数?(4分)
12、int x=0;   int y=0;  int z = (x++,    y=x++,    y=++x) ;请问z的值是多少?(3分)
13、int x=0; int y=0; int r = x&&y++;请问y的值是多少?(3分)
14、static 修饰全局变量与函数时的作用是什么? (4分)
15、char *s1 = “abc”; char *s2=”xyz”;  *s1 = *s2;以上代码有错吗?如果有错,请说明理由。(4分)
16、int a[6]={1,2,3,4,5,6}; printf(“%dn”,*((int *)(&a+1)-1));;打印结果是什么? (4分)
17、int a[2][3]={1,2,3,4,5,6},printf(“%d”, *((int *)(&a+1)-3)  );打印结果是什么?(4分)
18、以下打印结果是不是全部相同?(4分)
int a[2][3]; 
printf(“%pn”,&a[0][0]); 
printf(“%pn”, a);  
printf(“%pn”a[0]);    
printf(“%pn”&a);  

                   二、指出以下程序的问题(每题5分,共30分)

void getMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void) 
{
char *str = NULL;
getMemory(str);
strcpy(str, "hello world");
printf(str);
}
char *getMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = getMemory();
printf(str);
}

void getMemory(char **p, int num)
{
*p = (char *)malloc(num);
}
void test(void)
{
char *str = NULL;
GetMemory(&str, 100);
strcpy(str, "hello");
printf(str);
} void test(void)
{
char *str = (char *) malloc(100);
strcpy(str, “hello”);
free(str);    
if(str != NULL)
{
      strcpy(str, “world”); 
printf(str);
}
}

void fun(char* str1, char* str2)
{
  *str1 = *str2;
}
main()
{
    char *str1="ABCn";
    char *str2="BCDn";
    fun(str1, str2);
    printf(str1);
} void f1(char *p)
{
p = (char *)malloc(100);
}
int test() 
{
char *str = NULL;
f1(&str);
strcpy(str, "hello world");
printf(str);
}

相关知识

C语言零基础入门(第一天)
C语言入门教程
C语言基础练习①——水仙花数
《JAVA语言程序设计》期末考试试题及答案
传教士问题c语言
成人高考专升本生态学基础模拟试题
c语言如何打出彼岸花
C语言基础习题
c语言用printf画一朵花
如何用c语言编程玫瑰花

网址: C语言基础试题 https://m.huajiangbk.com/newsview2075493.html

所属分类:花卉
上一篇: 海水缸中气泡藻的控制
下一篇: 怎样大致判断花卉对光照的需求?