c语言指针经典程序
“c语言指针经典程序”相关的资料有哪些?“c语言指针经典程序”相关的范文有哪些?怎么写?下面是小编为您精心整理的“c语言指针经典程序”相关范文大全或资料大全,欢迎大家分享。
C语言实验程序、总结 实验七 指针
一 实验目的
实验七 指针
1 了解指针的概念,学会定义和使用指针变量。 2 掌握指针、变量和数组的关系及使用方法。 3 学会使用指向函数的指针变量。
二 实验内容
1 编写函数fun(float *sn,int n),其功能是:根据以下公式计算s,计算结果通过形参sn传回;n通过实参传入,n的值大于等于0。上机运行并记录输入输出(主函数已给出)。
s?1?1111 ????3572n?1fun(float *sn,int n)
{ 定义变量:和s,通项w,符号f,循环控制变量i; /* 其中s、f要初始化 */ 循环求累加和s
{ 改变符号; /* 由负变正或由正变负 */
求通项w; 累加:s+=w; }
形参指针变量sn赋值; /* 通过形参sn传回累加和s */ } main()
{ float s; int n;
printf(\n=\); scanf(\%d\,&n); fun(&s,n);
printf(\s=%f\\n\,s); }
完整程序如下:
#include void fun(float *sn,int n) {
C语言指针经典练习题-及答案
C语言指针练习题及答案
一、选择题
1. 变量的指针,其含义是指该变量的____. a)值 b)地址 c)名 d)一个标志
2.若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是__ _. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point
3.若有说明;int *p,m=5,n;以下正确的程序段的是________. a)p=&n; b)p=&n;
scanf(\ scanf(\ c)scanf(\ d)p=&n; *p=n; *p=m;
4. 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是__ _____. main() {
int *p,*q,a,b; p=&a;
printf(“input a:”); scanf(“%d”,*p); …… }
a)*p表示的是指针变量p的地址
b)*p
C语言指针经典练习题-及答案
C语言指针练习题及答案
一、选择题
1. 变量的指针,其含义是指该变量的____. a)值 b)地址 c)名 d)一个标志
2.若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是__ _. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point
3.若有说明;int *p,m=5,n;以下正确的程序段的是________. a)p=&n; b)p=&n;
scanf(\ scanf(\ c)scanf(\ d)p=&n; *p=n; *p=m;
4. 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是__ _____. main() {
int *p,*q,a,b; p=&a;
printf(“input a:”); scanf(“%d”,*p); …… }
a)*p表示的是指针变量p的地址
b)*p
c语言指针习题
指针习题
一.选择题
1.变量的指针,其含义是指该变量的 。
A)值 B)地址 C)名 D)一个标志
2.已有定义int k=2;int *ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是 。 A)k=*ptr1+*ptr2 B)ptr2=k C)ptr1=ptr2 D)k=*ptr1*(*ptr2) 3.若有说明:int *p,m=5,n;以下程序段正确的是 。 A)p=&n ; B)p = &n ;
scanf(“%d”,&p); scanf(“%d”,*p); C)scanf(“%d”,&n); D)p = &n ; *p=n ; *p = m ;
4.已有变量定义和函数调用语句:i
C语言实验程序、总结 实验七 指针
一 实验目的
实验七 指针
1 了解指针的概念,学会定义和使用指针变量。 2 掌握指针、变量和数组的关系及使用方法。 3 学会使用指向函数的指针变量。
二 实验内容
1 编写函数fun(float *sn,int n),其功能是:根据以下公式计算s,计算结果通过形参sn传回;n通过实参传入,n的值大于等于0。上机运行并记录输入输出(主函数已给出)。
s?1?1111 ????3572n?1fun(float *sn,int n)
{ 定义变量:和s,通项w,符号f,循环控制变量i; /* 其中s、f要初始化 */ 循环求累加和s
{ 改变符号; /* 由负变正或由正变负 */
求通项w; 累加:s+=w; }
形参指针变量sn赋值; /* 通过形参sn传回累加和s */ } main()
{ float s; int n;
printf(\n=\); scanf(\%d\,&n); fun(&s,n);
printf(\s=%f\\n\,s); }
完整程序如下:
#include void fun(float *sn,int n) {
C语言指针各种经典习题(应对笔试)
一、选择题
1. 变量的指针,其含义是指该变量的_________. a)值 b)地址 c)名 d)一个标志
2.若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是_____.
a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point
3.若有说明;int *p,m=5,n;以下正确的程序段的是________. a)p=&n; b)p=&n;
scanf(\ scanf(\ c)scanf(\ d)p=&n; *p=n; *p=m;
4. 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是________. main() {
int *p,*q,a,b; p=&a;
printf(“input a:”); scanf(“%d”,*p); …… }
a)*p表示的是指针变量p的地址
b)*p表示的
C语言—指针习题
第8章 指针
二、习题
(一)、是非题
1.运算符“*”有时是单目运算符,有时又可能是双目运算符。
A.对 B.错
2.取地址运算符“&”与指针运算符“*”的优先级相同,结合方向为自右向左。
A.对 B.错
3. 指针变量的类型不是该变量本身的类型,而是它所指向的变量的类型。
A.对 B.错
4.指针变量不可以作为函数的参数。
A.对 B.错
5.&b指的是变量b的地址所存放的值。
A.对 B.错
6. 语句int *p;定义了一个指针变量p,其值是整型的。
A.对 B.错
7.语句“int *p ;”中*p的含义为取值。 //定义指针变量
A.对 B.错
8.一个变量的地址就称为该变量的“指针”。
A.对 B.错
9. 语句int i,*p=&i;是正确的C定义。
A.对 B.错
10. 变量的指针,其含义是指该变量的一个标志。
A.对 B.错
11.void 类型的指针不指向某种类型的数据,所以没有意义。
A.对 B.错
12. 表达式*p++的运算顺序为先自增后取值。
A.对 B.错
13.C语言中,执行表达式(*p)++后p的指向改变了。
A.对 B.错 14.两个指针相加
C语言指针1
第七章 指针1指针的优势1、从函数得到多个返回值 —— 传地址的概念 2、对字符串的灵活处理(排序、查找、连接、 输出) 3、构造链表、树、图等数据结构
1/14
第
十
章
指针内存区:…… 03H 00H 06H 00H 0AH 00H …… 00H 20H …… 变量i
一、内存的概念:1.计算机内存:由若干个存储单元(字节)构 2000H 成[字节的线性序列] 2001H2002H 2.存储单元的内容和地址: 2003H 每个存储单元都有一个编 2004H 2005H
变量j变量k 变量p1
号,此编号称为内存单元的 地址;内存单元中的数据 (二进制),称为内存单元 的内容。
3010H 3011H
2/14
第
十
章
指针内存区:…… 03H 00H 06H 00H 0AH 00H …… 00H 20H …… 变量i
二、变量与内存的关系:
1 .变量: 变量具有变量名和变量值;变 量还具有类型。 2.变量与内存的关系: 变量的值存放在内存单元中,
2000H 2001H 2002H 变量名对应其值所在内存区的 2003H 首地址;(存储区第一个存储单元 2004H 2005H 的地址)
变量j变量k 变量p1
3.直接访问: 3010H 通过变量地址对变量值的访问
C语言的灵魂-指针
C语言的灵魂-指针 注:
这篇文章在很多地方看过,所以贴上来。
第一章:指针的概念
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让 我们分别说明。 先声明几个指针放着做例子: 例一:
(1)int *ptr; (2)char *ptr; (3)int **ptr; (4)int (*ptr)[3]; (5)int *(*ptr)[4];
如果看不懂后几个例子的话,请参阅我前段时间贴出的文章<<如何理解c和c ++的复杂类型声明>>。
1。指针的类型。 从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各个指针的类型: (1)int *ptr; //指针的类型是int* (2)char *ptr; //指针的类型是char* (3)int **ptr; //指针的类型是int** (
C语言的灵魂-指针
C语言的灵魂-指针 注:
这篇文章在很多地方看过,所以贴上来。
第一章:指针的概念
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让 我们分别说明。 先声明几个指针放着做例子: 例一:
(1)int *ptr; (2)char *ptr; (3)int **ptr; (4)int (*ptr)[3]; (5)int *(*ptr)[4];
如果看不懂后几个例子的话,请参阅我前段时间贴出的文章<<如何理解c和c ++的复杂类型声明>>。
1。指针的类型。 从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各个指针的类型: (1)int *ptr; //指针的类型是int* (2)char *ptr; //指针的类型是char* (3)int **ptr; //指针的类型是int** (