C语言谭浩强第四版例题 联系客服

发布时间 : 星期五 文章C语言谭浩强第四版例题更新完毕开始阅读e3e54770783e0912a2162ae4

例8.1 通过指针变量访问整型变量。 编写程序:

#include int main()

{ int a=100,b=10; // 定义整型变量a,b,并初始化

int *pointer_1, *pointer_2; // 定义指向整型数据的指针变量pointer_1, pointer_2 pointer_1=&a; // 把变量a的地址赋给指针变量pointer_1 pointer_2=&b; // 把变量b的地址赋给指针变量pointer_2 printf(\ // 输出变量a和b的值 printf(\ return 0; }

例8.2 输入a和b两个整数,按先大后小的顺序输出a和b。 编写程序:

#include int main()

{ int *p1,*p2,*p,a,b;

printf(\

scanf(\ // 输入两个整数 p1=&a; // 使p1指向变量a p2=&b; // 使p2指向变量b if(a

{p=p1;p1=p2;p2=p;} // 使p1与p2的值互换 printf(\ // 输出a,b

printf(\ // 输出p1和p2所指向的变量的值 return 0; }

例8.3 题目要求同例8.2,即对输入的两个整数按大小顺序输出。现用函数处理,而且用指针类型的数据作函数参数。 编写程序:

#include int main()

{void swap(int *p1,int *p2); int a,b;

int*pointer_1,*pointer_2; printf(\ scanf(\ pointer_1=&a; pointer_2=&b;

if(a

void swap(int *p1,int *p2) {int temp; temp=*p1; *p1=*p2; *p2=temp; }

例8.4 对输入的两个整数按大小顺序输出。 编写程序:

#include int main()

{void swap(int *p1,int *p2); int a,b;

int*pointer_1,*pointer_2;

printf(\ scanf(\ pointer_1=&a; pointer_2=&b;

if(a

void swap(int *p1,int *p2) {int *p; p=p1; p1=p2; p2=p; }

例8.5 输入3个整数a,b,c,要求按由大到小的顺序将它们输出。用函数实现。 编写程序:

#include int main()

{ void exchange(int *q1, int *q2, int *q3); // 函数声明 int a,b,c,*p1,*p2,*p3;

printf(\ scanf(\ p1=&a;p2=&b;p3=&c; exchange(p1,p2,p3);

printf(\ return 0; }

void exchange(int *q1, int *q2, int *q3) // 定义将3个变量的值交换的函数 {void swap(int *pt1, int *pt2); // 函数声明

if(*q1<*q2) swap(q1,q2); // 如果a

void swap(int *pt1, int *pt2) // 定义交换2个变量的值的函数 {int temp;

temp=*pt1; // 换*pt1和*pt2变量的值 *pt1=*pt2; *pt2=temp; }

例8.6 有一个整型数组a,有10个元素,要求输出数组中的全部元素。 编写程序: (1) 下标法。 #include int main() {int a[10]; int i;

printf(\ for(i=0;i<10;i++) scanf(\ for(i=0;i<10;i++) printf(\ printf(\ return 0; }

(2) 通过数组名计算数组元素地址,找出元素的值 #include int main() {int a[10]; int i;

printf(\ for(i=0;i<10;i++) scanf(\ for(i=0;i<10;i++)

printf(\ //通过故数组名和元素序号计算元素地址,再找到该元素 printf(\ return 0; }

(3) 用指针变量指向数组元素 #include int main() {int a[10]; int *p,i;

printf(\ for(i=0;i<10;i++) scanf(\ for(p=a;p<(a+10);p++)

printf(\ // 用指针指向当前的数组元素 printf(\ return 0; }