c语言指针编程练习题

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c语言指针编程练习题

2. 从命令行输入两个实型数据,请比较大小并输出。参考答案

3. 输入3个数a,b,c,按大小顺序输出。利用指针方法参考答案

4. 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。参考答案

5. 有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数参考答案

6. 有n个人围成一圈,顺序排号。从第一个人开始报数,凡报到3的人

退出圈子,问最后留下的是原来第几号的那位。参考答案

7. 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。参考答案

8. 编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调

用函数1/1+1/3+…+1/n 参考答案

9. 八进制转换为十进制参考答案

10. 编一个函数fun,函数的功能是分别求出数组中所有奇数之

和以及所有偶数之和。形参n给了数组中数据的个数:

利用指针odd返回奇数之和,利用指针even返回偶数之和。例如:数组中的值依次为:1,8,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even返回偶数之和8。参考答案

11. 复制字符串。参考答案

一、用指针方法编写一个程序,输入3个整数,将它们按由小到大的顺序输出 #include

void swap

{

int temp;

temp = *pa;

*pa = *pb;

*pb = temp;

}

void main

{

int a,b,c,temp;

scanf;

if

swap;

if

swap;

if

swap;

printf;

}

二、C语言用指针方法输入3个字符串按由小到大顺序输出

#include “stdio.h”

#include “string.h”

int main

{

char *t;

char *p1=NULL,*p2=NULL,*p3=NULL;

char ch1[20]={0},ch2[20]={0},ch3[20]={0};

p1=ch1;

p2=ch2;

p3=ch3;

printf;

scanf;

fflush;

printf;

scanf;

fflush;

printf;

scanf;

}

fflush; if>0) {t=p1;p1=p2;p2=t;} if>0) {t=p1;p1=p3;p3=t;} if>0) {t=p2;p2=p3;p3=t;} printf; return 0;

9.4编程输入一行文字,找出其中的大写字母,小写字母,空格,数字,及其他字符的个数

#include

void main

{

int a=0,b=0,c=0,d=0,e=0,i=0;

char *p,s[20];

while)!=‘\n’)i++;

p=s;

while

{

if

a++;

else if

b++;

else if

c++;

else if

d++;

else e++;

p++;

}

printf;

printf;

}

9.5写一个函数,将3矩阵转置 #include “stdio.h”

void Transpose[3])

{

int temp;

int i, j;

for/*转置*/

{

for

{

temp = *+i);

*+i) = *+j);

*+j) = temp;

}

}

}

void main

{

int a[3][3] = {{1,2,3},{4,5,6},{7,8,9}}; Transpose;

for

{

for

{

printf;

}

printf;

}

}

}.6用指向一维数组的指针做函数参数

#include

#include

int main

{

void sort[6]);//一维数组的指针做函数参数

int i;

char str[10][6]; char [6];//定义一维数组的指针做函数参数

printf;

for

scanf;

p=str;//将str一维数组指针,赋值给p;

sort;

printf;

for

printf;

return 0;

}

void sort[6])//s指向一维数组的指针做函数参数; {

int i,j;

char temp[6], *t;

t=temp;

for//i应该小于9;如果小于10,那么就比较了9+1次;按照冒泡法则,for//第一次比较需要9次就是i=0到i=8共九次;第二次需要比较8次;依次类推;

if>0)

相关文档
最新文档