"C语言指针经典练习题及答案完整版"

2 下载量 153 浏览量 更新于2023-12-20 收藏 122KB DOC 举报
、*point,&a,a c)&a,point,a,*point d)*&a,a,*point,point3.已知整型数组int a[5];则a所占的存储单元是__。 a) 5 b)10 c)15 d)20二、判断题4.已知指针变量p指向整型变量a,则以下语句正确的是___。 a)*p是指针变量p所指向地址的值 b)p是整型指针变量 c)&a表示变量a的地址 d)p指向变量a的值5.下面有关指针的说法: ①指针变量存储的是地址 ②指针变量操作的是地址 ③指钿变量的值代表地址 ④指针变量指向一个变量。是正确的是____。 a)①②③④都对 b)①②对,③④错 c)①③对,②④错 d)①对,②③④错6.若有定义int *pa=&a;则表达式*pa+1的值是__。 a)a的地址 b)地址+1 c)a的值加1 d)a所占的存储单元地址加17.下列各句中正确的是___。 a)int *p=4; b)int *p; c)*p=4; d)*p;8.设有定义 int *pa,pd;则下面一句中合法的是____。 a)pa=5; b)pd=10; c)pa=&a; d)pd=&d;9.指针常量与指针变量的区别是指____。 a)地址是否可变 b)指向是否可变 c)所指内容是否可变 d)数组名是否可变10.以下关于指针的说法错误的是________。 a)指针变量存地址或表示地址 b)指针变量指向的是无名数 c)指针变量可以进行各种算术运算 d)指针变量初始化时必须指定一个初始地址三、编程题1.有以下定义: int a=[5](1,3,5,7,9); int *p;请顺序写出以下程序的结果。 p=a; printf("%d,%d,%d", * (p++),*p,*++p+2);2.写一函数,完成将n个整数存入数组a[]中,并返回该数组首地址。 int *fun(int *a,int n);3.写一函数,实现将目标字符串中第m个字符起连续n个字符复制到另一字符串中(含n个字符)。 void copy(char *s,char *t,int m,int n);4.写一函数,返回一个字符串中最大的字符。 char maxchar(char *s);" 上面内容的主要内容是C语言中指针的经典练习题及答案。题目包括选择题和判断题,涵盖了指针的基本概念和用法。选择题涉及了指针的含义、地址表示、指针变量和指针常量的区别等基本知识点,判断题涉及了指针变量和操作的概念。此外还包括了一些编程题,要求考生实际操作指针进行编程。这些练习题旨在帮助学习者巩固和加深对指针的理解,提高编程能力。 在练习题中,涉及了指针的基本概念,如指针变量的含义、操作及地址表示等;还包括了指针的算术运算、指向不同类型的数据等较为深入的内容。通过这些练习题,学习者可以更好地理解和掌握指针的概念和使用方法,提高对指针的操作能力。 总之,C语言指针练习题及答案是一套全面覆盖了指针基本概念和用法的练习题,适合C语言初学者和进阶者进行学习和巩固。希望学习者能够通过练习,更好地掌握C语言中指针的使用,提高编程能力。