scanf(\ }
system(\ } 2.
#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
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 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 main() { char *month_name[13]={\month\ int n; printf(\ scanf(\ if(n<=12||n>=1) printf(\ else printf(\ system(\ } 5. #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 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 main() { char a[20],*p=a; int i=0; printf(\请输入一个字符串(1至20个):\\n\ gets(a);