c语言算法大全

上传人:zw****58 文档编号:52470244 上传时间:2018-08-22 格式:PPT 页数:24 大小:509KB
返回 下载 相关 举报
c语言算法大全_第1页
第1页 / 共24页
c语言算法大全_第2页
第2页 / 共24页
c语言算法大全_第3页
第3页 / 共24页
c语言算法大全_第4页
第4页 / 共24页
c语言算法大全_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《c语言算法大全》由会员分享,可在线阅读,更多相关《c语言算法大全(24页珍藏版)》请在金锄头文库上搜索。

1、166、阅读下面程序,则程序段的功能是( ). main( ) int c=23,1,56,234,7,0,34,i,j,t;for(i=1;i=0 j-;cj+1=t;for(i=0;i=0 *(s+k1)=0; main() char str180,str280; printf(“请输入第一个字符串n“); gets(str1); printf(“请输入第二个字符串n“); gets(str2); fun(str1,str2); printf(“连接形成的新字符串为:n“); puts(str1); 例4 把一个字符串中的字母按从小到大排序,并把这 个全部由字母组成的字符串保存在原串中,函

2、数返回 这个字符串的长度。例如当输入“we23gfe”时,得到 的字符串为“eefgw”,字符串的长度为5。 n删除字母之外的字符(条件复制)n字符按照字符顺序进行排序(字符排序)n字符串长度(函数返回值)#include “stdlib.h“ #include “stdio.h“ int fun(char *str) int j=0,k=0,m=0; char t; char *p=str;while(*p) if(*p=A p1+;p2+; if(*p1=*p2)return “=“; if(*p1=0)return “; main() char str180,str280;printf(

3、“输入第一个字符串:n“);gets(str1);printf(“输入第二个字符串:n“);gets(str2);printf(“比较的结果是:n %s %s %sn“,str1,fun(str1,str2),str2); 程序某次运行的结果为: 输入第一个字符串: abcd 输入第二个字符串: abde 比较的结果是:abcd =0 /*SPACE*/ 【?】; p2=str2;while(*p1) /*SPACE*/【?】 /*SPACE*/ 【?】 main() int i,m;char str180,str280;gets(str1); scanf(“%d“, /*SPACE*/【?】

4、 puts(str1);puts(str2) ; p1=str1+m*p2+=*p1+;*p2=0;strcopy(str1,str2,m)45.以下程序的功能是删除字符串中的指定字符,字符串和 要删除的字符均由键盘输入。 #include “stdio.h“ main() char str80,ch;int i,k=0; /*SPACE*/gets(【?】);ch=getchar(); /*SPACE*/for(i=0;【?】;i+) /*SPACE*/if(stri!=ch) 【?】;k+; /*SPACE*/ 【?】;puts(str);strstri!=0strk=stristrk=0

5、46.以下程序的功能是将一个字符串中的前N个字符复 制到一个字符数组中去,不许使用strcpy函数。main ( ) char str180,str280;int i,n; /*SPACE*/gets(【?】);scanf(“%d“, /*SPACE*/for (i=0; 【?】 ;i+) /*SPACE*/ 【?】 ; /*SPACE*/【?】 ;printf(“%sn“,str2); str1i9) /*SPACE*/【?】;j+;sj=0; main () char *item;printf(“n input a string:n“);gets(item); /*SPACE*/ 【?】;

6、printf(“n%s“,item); si!=|sj=sidelnum(item)48.以下程序的功能是输入字符串,再输入一个字符,将字 符串中与输入字符相同的字符删除。#include “stdio.h“ void fun(char a,char c) int i,j; /*SPACE*/for(i=j=0; 【?】;i+)if(ai!=c) aj+=ai; /*SPACE*/【?】; main() char a20,cc;gets(a); /*SPACE*/【?】; /*SPACE*/【?】;puts(a);ai!=0aj=0cc=getchar()fun(a,cc)49.以下程序的功能

7、是将两个字符串连接为一个字符串,不 许使用库函数strcat。#include “stdio.h“ #include “string.h“ main ( ) char str180,str240;int i,j,k;gets(str1);gets(str2); puts(str1);puts(str2); /*SPACE*/ 【?】 ;puts(str1); JOIN(s1,s2) char s180,s240; int i,j; /*SPACE*/ 【?】; /*SPACE*/for (i=0; 【?】0;i+)s1i+j=s2i; /*SPACE*/s1i+j= 【?】 ; JOIN(st

8、r1,str2)j=strlen(s1)s2i!=053.以下程序的功能:将s所指字符串的正序和反序 进行连接,形成一个新串放在t所指的数组中。例如 :当s串为“ABCD“时,则t串的内容应为“ABCDDCBA“ 。 #include #include #include void fun (char *s, char *t) int i, d; /*SPACE*/d = 【?】; /*SPACE*/for (i = 0; i main() int length(char *p); int len; char str20; printf(“input a string:n“); scanf(“%

9、s“,str); /*SPACE*/ len=length(【?】); printf(“the string has %d characters.“,len); /*SPACE*/ 【?】(p) char *p; int n; n=0; while(*p!=0) /*SPACE*/ 【?】; /*SPACE*/ 【?】; return n; strlengthn+p+63.函数fun的功能是:将在字符串s中的字符先按正序存放到t 串中,然后把s中的字符按逆序连接到t串的后面。 #include #include #include void fun (char *s, char *t) int

10、i, sl; /*SPACE*/ sl = 【?】; for(i=0; i0) k=n%16; if(k=0;i-) /*按逆序输出*/printf(“%c“,stri); printf(“n“); 程序运行时输入1200,则输出为: 十进制数1200转化为十六进制数为 4B0数制 转换42.下面程序的功能是将十进制数转换成十 六进制数。#include “stdio.h“ #include “string.h“ main () int a,i;char s20;printf(“input a integer:n“);scanf(“%d“,c10_16(s,a); /*SPACE*/for(【

11、?】;i=0;i-) printf(“%c“,si);printf(“n“); c10_16(char p,int b) int j,i=0; /*SPACE*/while (【?】)j=b%16; /*SPACE*/if(j=0i-) printf(“%c“,si);printf(“n“); c10_2(char p,int b) int j,i=0; /*SPACE*/while (【?】)j=b%2;pi=j+0; /*SPACE*/【?】;i+; /*SPACE*/ 【?】; i=strlen(s)-1b0b=b/2pi=0b!=0数制 转换#include “stdio.h“ #in

12、clude “string.h“ fun(char p,int b) int j,i=0; /*FOUND*/while (b=0) j=b%2; pi+=j+0; /*FOUND*/b=b%2; pi=0; main () int a,i; char s20; printf(“input a integer:n“); /*FOUND*/scanf(“%d“,a);fun(s,a); /*FOUND*/for(i=strlen(s);i=0;i-)printf(“%c“,si); printf(“n“);38.下面程序的功能是将十进制数转换成二进制数。while(b0)b=b/2scanf(“

13、%d”,i=0;i-)数制 转换例8 编写一个函数统计在一个字符串中26个英文字母 各自出现的次数。一个字母的大小写都记录在一起。 #include “stdio.h“ #include “stdlib.h“ void fun(char *t,int num) int i; for(i=0;i=at+; main() char str80;int num26,i; printf(“请输入字符串,可以含有大小写字母或者其它字符n“); gets(str); fun(str,num); printf(“在字符串中各英文字母出现的次数依次为:n“); for(i=0;i26;i+) printf(“%2d“,numi);请输入一个字符串,可以含有大小写字母或者其它字符 dzkfhasiegdab qpkvcmnyetagdg643wafksHAGDCBNSFW 在字符串中各英文字母出现的次数依次为:5 2 2 4 2 3 4 2 1 0 3 0 1 2 0 1 1 0 3 1 0 1 2 0 1 1字符串处理n程序填空:43,44,45,46,47,48,49, 53,55n程序改错:45,46,47,48,49,50,52n程序设计:40,41,42,43,44,45,46, 47,48,49,50,51,56

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号