《C语言程序设计》实验指导书答案

scanf(\ }

system(\ } 2.

#include #include

#define MAX(a,b) ((a)>(b)?(a):(b)) main() {

int a,b,c;

printf(\

scanf(\

printf(\

system(\ }

3. 见作业9.2 4. 见作业9.4 5. 见作业9.3

实验八(第8章实验一)

实验目的:

1. 通过实验进一步掌握指针的概念,会定义和使用指针变量。 2. 掌握指向变量的指针变量的使用方法。

3. 掌握指向一维数组的指针变量来处理数组元素。 4. 掌握指向字符串的指针变量的使用方法。 5. 掌握指针作为函数参数的用法。 实验内容:

1.用指针变量按从小到大的顺序输出三个整数。

2.输入n(不大于20)个单精度数存入一维数组,用指针变量处理数组元素的方式将其逆序存放后输出。n从键盘输入。 3.利用指针完成两个变量值互换。

4.编写一个程序,用12个月份的英文名称初始化一个字符指针数组,当键 盘输入整数为1到12 时,显示相应的月份名,键入其他整数时显示错误信息。 5.用选择法对10个整数排序(降序)。

6.编一个程序,从键盘上输入一串符号(以回车键为结束),将其以字符串形式存入一维字符数组,然后再输出该字符型数组中的字符串。 7.编写一个程序计算一个字符串的长度。

8.编写一个程序求一个子串在一个字符串中出现的次数,如果该字符不出现则返回0。 实验过程:

实验结果:1.见作业10.1

2. //输入n(不大于20)个单精度数存入一维数组,用指针变量处理数组元素的方式将其逆

序存放后输出。n从键盘输入。

#include #include main() {

int i,n;

printf(\ scanf(\ float a[20],t;

printf(\ for(i=0;i

scanf(\ float *p_s,*p_e; p_s=a;p_e=a+n-1; while(*p_s<*p_e) {

t=*p_s; *p_s=*p_e; *p_e=t; }

printf(\ for(i=0;i

printf(\ system(\ }

3. #include #include

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

temp=*p1;*p1=*p2;*p2=temp; }

main(){

int a=46,b=-100; int *p_a,*p_b; p_a=&a;p_b=&b; printf(\ swap(p_a,p_b); printf(\

system(\ }

4. //编写一个程序,用12个月份的英文名称初始化一个字符指针数组,当键 盘输入整数为1到12 时,显示相应的月份名,键入其他整数时显示错误信息。

#include #include

main() {

char *month_name[13]={\month\ int n;

printf(\ scanf(\ if(n<=12||n>=1)

printf(\ else

printf(\

system(\ }

5.

#include #include

int main() {

int i,j,k,t,max;

int a[10]={77,99,69,76,87,90,100,88,66,80}; for(i=0;i<10;++i)

{//选出最大值所在的位置j

max=-65536;//可试试此句不在循环内的结果。 for(k=i;k<10;k++) { if(*(a+k) >max) { max=*(a+k); j=k; } }

if(i!=j) {//交换 t=*(a+i); *(a+i)=*(a+j);

*(a+j)=t; } }

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

6. //编一个程序,从键盘上输入一串符号(以回车键为结束),将其以字符串形式存入一维字符数组,然后再输出该字符型数组中的字符串。

#include #include #include

int main() {

char *s;

int i,length=0; char ch[100]={};

printf(\ gets(s);

length=strlen(s); for(i=0;i

for(i=0;i

7. //编写一个程序计算一个字符串的长度。

#include #include #include

main() {

char a[20],*p=a; int i=0;

printf(\请输入一个字符串(1至20个):\\n\ gets(a);

联系客服:779662525#qq.com(#替换为@)