《C程序设计语言》课程PPT教学课件(讲稿)第二十六章 习题

*6.3从键盘输入三个整数,要求设三个指针变量P1 P2,P3,使P1指向三个数的最大者,P2指向次大者, P3指向最小者,然后按由大到小的顺序输出三个数 解:程序如下: maino i int*pl, *p2,*p3, i,,k, temp scanf(%d %d%d, &i, &j, &k; p1=&ip2=&jp3=&k if (P1<*p2 i temp=*p1,* plE*p2, *P2=tempel if(*P1<*p3) i temp=*pl, "p1=*p3, P3=temp;1 If(*P2<*p3) i temp=*p2, * p2=*p3, P3=tempi print(%dd%d%”:*p1,p2,“p3)
解:程序如下: main() { int *p1,*p2,*p3,i,j,k,temp; scanf(“%d %d %d”,&i,&j,&k); p1=&i,p2=&j,p3=&k; if (*P1<*p2) { temp=*p1,*p1=*p2,*P2=temp;} if (*P1<*p3) { temp=*p1,*p1=*p3,*P3=temp;} if (*P2<*p3) { temp=*p2,*p2=*p3,*P3=temp;} printf(“%dd %d %d”,*p1,*p2,*p3); } 6.3 从键盘输入三个整数,要求设三个指针变量P1, P2,P3,使P1指向三个数的最大者,P2指向次大者, P3指向最小者,然后按由大到小的顺序输出三个数

615编写一个函数,能测出一个字符串的长度,函 数返回值是字符串的长度。 #inc|Ude“ stdio.h” main() f int len(char*ps), l; char string[80], *p gets(string); p=string; len(p) puts(p) printf((%d”,); int len(char *ps) int n=0 while(*ps!=“0) n++; ps++,1 return(n)
6.15 编写一个函数,能测出一个字符串的长度,函 数返回值是字符串的长度。 #include “stdio.h” main( ) { int len(char *ps),l; char striing[80] , *p ; gets(string); p=string; l=len(p); puts(p); printf(“%d”,l ); } int len(char *ps) { int n=0; while (*ps!=‘\0’) { n++; ps++; } return(n) }

619写一个函数 strcmp,以实现两个字符串的比较 函数调用形式为: strcmp(str,str2) 如果str>str2,则此函数值为一个正数;若str1=str2, 则返回值0;若str1<str2,则输出一个负数
6.19 写一个函数strcmp,以实现两个字符串的比较。 函数调用形式为: strcmp(str1,str2); 如果str1>str2,则此函数值为一个正数;若str1=str2, 则返回值0;若str1<str2,则输出一个负数

# include“ stdio.h” Maino i int cmp str(char stri[l, char str2[1); char stri[100], str2[100] int cmpval; gets(str1); gers(str2) cmpval=cmp str(str1, str2) printf(“ cmpval=%d” cmpva); Int cmp str(char stri[l, char str2[1) i int i=0; while(strigil==str2[i1) if(stri[++]==0) return(o) if(strii]str2[] return (1); else return(-1)
#include “stdio.h” Main( ) { int cmp_str(char str1[ ],char str2[ ] ); char str1[100],str2[100]; int cmpval; gets(str1); gers(str2); cmpval=cmp_str(str1,str2); printf(“cmpval=%d”,cmpval); } Int cmp_str(char str1[ ],char str2[ ] ) { int i=0; while( str1[ i ])==str2[ i ] ) if ( str1[ i++]==‘\0’) return(0); if(str1[ i ]>str2[ i ]) return(1); else return( -1 ); }

66编一个函数sort,使10个整数按由小到大的顺 序排列。在main函数中输入这10个数,并输出排好 序的数。 编程序方法: 1、主函数中定义一个一维数组,和一个指向该类型数 据的指针变量,并对定义的函数进行说明; 2、主函数中对该数组赋值(单循环结构); 3、主函数中调用该函数; 4、主函数中输出该数组(单循环结构) 5、定义sort函数,形参应能接收数组首地址,和元素 个数; 6、排序采用顺序比较法对数组元素进行排序
6.6 编一个函数sort,使10个整数按由小到大的顺 序排列。在main函数中输入这10个数,并输出排好 序的数。 编程序方法: 1、主函数中定义一个一维数组,和一个指向该类型数 据的指针变量,并对定义的函数进行说明; 2、主函数中对该数组赋值(单循环结构); 3、主函数中调用该函数; 4、主函数中输出该数组(单循环结构); 5、定义sort函数,形参应能接收数组首地址,和元素 个数; 6、排序采用顺序比较法对数组元素进行排序

排序方法: 取数组中第一个元素,分别与其它所有元素进行比较, 从中选出最小值存放在第一个元素中,再取第二个元素, 分别与其它所有元素进行比较,选出次大的放于第二个元 素中,以此类推。 如 j=i+1 ato a[] a[3 a[4 8 afifi j++直到j4 从j=计+起交换 8 小=计+起叫la[j 从 j++直到j=4 交换 从j=计+1起a[iPa【]j++直到j4 交换
排序方法: 取数组中第一个元素,分别与其它所有元素进行比较, 从中选出最小值存放在第一个元素中,再取第二个元素, 分别与其它所有元素进行比较,选出次大的放于第二个元 素中,以此类推。 如: j j=i+1 a[0] a[1] a[3] a[4] i 8 3 4 9 i=0 3 8 4 9 a[ i ]>a[ j ] j++ 直到 j=4 交换 i=1 4 8 9 a[ i ]>a[ j ] j++ 直到 j=4 交换 i=2 8 9 a[ i ]>a[ j ] j++ 直到 j=4 交换 从j=i+1起 从j=i+1起 从j=i+1起

程序: main (0 i void sort(int al l,int n) int dol, i; for(i=0;aljl D temp-alilaliF=a[j halil=temp
程序: main() { void sort (int a[ ],int n) int d[10], i; for (i=0 ;i a[ j ]) { temp=a[ i ],a[ i ]=a[ j ],a[ j ]=temp;} }

6.11有n个人围成一圈,顺序排号,从第一个人开始 报数,从1到5,凡报到5的人退出圈子,问最后留下 的是原来的第几号的人。 [8] [7 [6 3] [5 if(a[i]!=0)s++;if(s=5){a[i]=0;=0
6.11 有n个人围成一圈,顺序排号,从第一个人开始 报数,从1到5,凡报到5的人退出圈子,问最后留下 的是原来的第几号的人。 1 1 1 1 1 1 1 1 1 a [0] a[2] a [1] a [5] a [6] a [7] a [8] a[4] a[3] 0 if (a[ i ]!=0) s++ ; if ( s==5) {a[ i ] =0 ;S =0

main( i void left (int *p, int n) int num 100l,n, i; scanf(%od”,&n); for(i=0; i<n; i++) num i=l; left(num, n) for(i=0;<n;i++) if (num[i!=0 2 printf(sod", num[i1) void left(int*p, int n) fint i=0,out=0, count=0 while(out <n-1) fif((p+)=0) count++ if(count5((p+i=0, count=0, out++; 3 if(i==n)i=0;}
main() { void left (int *p,int n) int num[100],n,i; scanf(“%d”,&n); for ( i =0; i<n; i++) num[ i ]=1; left(num,n); for (i=0;i<n;i++) if (num[ i ]!=0) printf(“%d”,num[ i ] ); } void left(int *p,int n) { int i=0,out=0 ,count=0 ; while (out <n-1) { if (*(p+i)!=0) count++; if (count==5) { *(p+i)=0,count=0,out++;} i ++; if ( i==n) i= 0; } }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C程序设计语言》课程PPT教学课件(讲稿)第六十七 C程序的流程设计.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二十五章 指针与函数.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二十四章 数组与指针.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二十三章 地址与指针.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十三章 共用体类型数据.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二十章 字符串和字符串数组.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第五章 数据的输入和输出.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十六章 文件概述.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第四章 数据类型转换.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二章 数据类型和常量变量.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十九章 二维数组和多维.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十八章 一维数组.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十四章 位运算概述.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十二章 动态存储分配和链表.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十五章 编译预处理.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十四章 变量的存储.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十一章 指向结构体变量的指针.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十三章 函数嵌套.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三十章 结构体数组.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十二章 函数.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第二十九章 结构体类型与引用.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第八章 选择型程序设计.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第九章 循环程序设计.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)复习.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第三章 运算符与表达式.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第10章 模块化程序设计.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第1章 基础知识.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第2章 IBM PC计算机系统结构.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第3章 指令系统和寻址方式.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第4章 汇编语言与源程序结构.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第5章 程序设计基础技术.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第6章 子程序设计及系统调用.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第7章 非数值运算.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第8章 高级语言汇编技术.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第9章 输入/输出程序设计.ppt
- 四川职业技术学院:《数据库基础》模块一 基础知识.ppt
- 四川职业技术学院:《数据库基础》模块二 数据库建立与维护.ppt
- 四川职业技术学院:《数据库基础》模块四 表记录的维护.ppt
- 四川职业技术学院:《数据库基础》模块三 表的建立与维护.ppt
- 四川职业技术学院:《数据库基础》模块六 视图及数据库管理.ppt