如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
利用main函数的参数选择是对整数进行操作还是对字符串进行操作:Handleint---一、整数操作Handlestring---二、字符串操作整数操作(含有50个正整数(<=3位)的文件:int_input,输入1,2,3,4分别选择不同的操作)排序(结果存到文件int_output1)求中间两个数的最大公因数和最小公倍数统计素数的个数统计同构数的个数(同构数是指:它出现在它的平方数的右边),如5是其平方数25的尾数,76是其平方数5776的尾部字符串操作(含有50个字符串的文件:string_input,输入1,2,3,4分别选择不同的操作)排序(结果存到文件string_output1)实现每个字符串的逆置,前25个用递归,后25个用非递归(结果存到文件string_output2)统计单词”hello”出现的次数。如某一行:ghhello32he,该行次数为1在最小串中出现,而未在最大串中出现的字符形成一个新的串放在u中,u中字符按原字符串中字符顺序排列,不去掉重复字符。例如:当min="112345",max="2467"时,u中的字符串为"1135"。源代码:#include<stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>#defineN50intReadFile_Num(int*);voidWriteFile_Num(char*FileName,int*,int);voidsort_Num(int*,int);intCommonDivisor(int,int);intCommonMultiple(int,int);intPrimeNumber(int*,int);intTongGouShu(int*,int);intReadFile_Str(char*,char*str[]);voidWriteFile_Str(char*,char*str[],int,char*mode);voidsort_Str(char*str[],int);voidreverse(char*str[],int);voidreverse_recursion(char*str);intSearchHello(char*str[],int);voidFindMaxMin(char*str[],int,char*r[]);voidProcessString(char*r[]);intmain(intargc,char*argv[]){charchoice;if(2==argc){if(strcmp(argv[1],"Handleint")==0){intData_Num[N];intlen;printf("**************************整数操作**************************\n\n");len=ReadFile_Num(Data_Num);printf("请选择要进行的操作:");printf("\n1、排序\n");printf("2、求中间两个数的最大公约数和最小公倍数\n");printf("3、统计素数\n");printf("4、统计同构数\n");fflush(NULL);scanf("%c",&choice);switch(choice){case'1':{sort_Num(Data_Num,len);WriteFile_Num("int_output1.txt",Data_Num,len);printf("排序完成!!\n排序结果已存至int_output1.txt文件中...\n");break;}case'2':{intm1,m2;m1=Data_Num[(len+1)/2];m2=Data_Num[(len+1)/2+1];printf("中间两数为:%d,%d\n",m1,m2);printf("最大公约数为:%d\n",CommonDivisor(m1,m2));printf("最小公倍数为:%d\n",CommonMultiple(m1,m2));break;}case'3':{printf("数据中共有%d个素数\n",PrimeNumber(Data_Num,len));