break;
if(k==N)/*得到鞍点*/
{printf("thepointis%d,row=%d,col=%d\n",max,row,col);break;}
}
if(i==N)/*没有鞍点*/
printf("nopoint\n");}
8.#include"stdio.h"
main()
{inti,j,uppn,lown,dign,span,othn;/*uppn,lown,dign,span,othn分别存放英文大写字母、小写字母、数字、空格和其他字符的个数*/
chartext[3][80];
uppn=lown=dign=span=othn=0;
for(i=0;i<3;i++)
{gets(text[i]);
for(j=0;j<80&&text[i][j]!
='\0';j++)
{if(text[i][j]>='A'&&text[i][j]<='Z')
uppn++;
elseif(text[i][j]>='a'&&text[i][j]<='z')
lown++;
elseif(text[i][j]>='0'&&text[i][j]<='9')
dign++;
elseif(text[i][j]=='')
span++;
else
othn++;}
}
for(i=0;i<3;i++)
printf("%s\n",text[i]);
printf("uppn=%d\n",uppn);
printf("lown=%d\n",lown);
printf("dign=%d\n",dign);
printf("span=%d\n",span);
printf("othn=%d\n",othn);}
9.#include"stdio.h"
main()
{inti,j;
charstr1[20],str2[20];
printf("inputtwostrings:
\n");
gets(str1);
gets(str2);
j=strlen(str1);/*求字符串1的长度*/
for(i=0;str2[i]!
='\0';i++,j++)/*字符串合并*/
str1[j]=str2[i];
str1[j]='\0';/*加上字符串结束标志*/
puts(str1);}
10.#include"stdio.h"
main()
{inti,n;
charstr1[20],str2[20];
printf("inputtwostrings:
(nomorethan20characters)\n");
gets(str1);gets(str2);
n=strlen(str1)strlen(str1):
strlen(str2);/*n中存放较短字符串的长度*/
for(i=0;iprintf("%d\n",str1[i]-str2[i]);}
六:
1.main()
{intn;
printf("inputn(n>0):
\n");
scanf("%d",&n);
if(prime(n))
printf("%disasushu\n",n);
elseprintf("%disnotasushu\n",n);}
intprime(intn)
{intflag=1,i;
for(i=2;i<=n/2&&flag==1;i++)
if(n%i==0)flag=0;
return(flag);}
2.#defineN3
convert(intarray[3][3])
{inti,j,t;
for(i=0;ifor(j=i+1;j{t=array[i][j];
array[i][j]=array[j][i];
array[j][i]=t;}
}
main()
{inti,j;
inta[N][N];
printf("inputa:
\n");
for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);
printf("Arraya:
\n");
for(i=0;i{for(j=0;jprintf("%5d",a[i][j]);
printf("\n");}
convert(a);
printf("adezhuanzhiis:
\n");
for(i=0;i{for(j=0;jprintf("%5d",a[i][j]);
printf("\n");}
}
3.#include
#include
main()
{charstr[100];
printf("inputastring:
\n");
gets(str);
inverse(str);
printf("thereversedstringis:
%s\n",str);}
inverse(charstr[])
{chart;
inti,j;
for(i=0,j=strlen(str)-1;i{t=str[i];
str[i]=str[j];
str[j]=t;}}
4.#include
concat(charstr1[],charstr2[])
{inti=0,j;
while(str1[i]!
='\0')
i++;
for(j=0;str2[j]!
='\0';i++,j++)
str1[i]=str2[j];
str1[i]='\0';}
main()
{charstr1[100],str2[100];
gets(str1);gets(str2);
concat(str1,str2);
puts(str1);}
5.main()
{charstr[80];
printf("inputastring(4geshuzizifu):
\n");
scanf("%s",str);
insert(str);
printf("resultis:
\n%s\n",str);}
insert(charstr[])
{inti;
for(i=strlen(str);i>0;i--)
{str[2*i]=str[i];
str[2*i-1]='';}
}
6.#include"stdio.h"
inti,ndight,nwhite,nletter,nother;
count(charstr[])
{ndight=nwhite=nletter=nother=0;
for(i=0;str[i]!
='\0';i++)
if(str[i]>='0'&&str[i]<='9')
ndight++;
elseif((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z'))
nletter++;
elseif(str[i]=='')
nwhite++;
elsenother++;}
main()
{chartext[80];
printf("inputastring:
\n");
gets(text);
count(text);
printf("ndight=%d,nletter=%d,nwhite=%d,nother=%d\n",ndight,nletter,nwhite,nother);}
7.#defineN10
#include
sort(charstr[])
{inti,j;
chart;
for(i=1;ifor(j=0;jif(str[j]>str[j+1])
{t=str[j];str[j]=str[j+1];str[j+1]=t;}}
main()
{charstr[N];
inti;
printf("Input10gezifu:
\n");
gets(str);
sort(str);
printf("Thesortedresult:
\n");
for(i=0;iprintf("%c",str[i]);}
8.#include
#include
#defineN10
voidinput_e(intnum[],charname[N][8])
{inti;
for(i=0;i{printf("inputgonghao:
");
scanf("%d",&num[i]);
printf("inputname:
");
getchar();
gets(name[i]);}
for(i=0;iprintf("%5d%10s\n",num[i],name[i]);}
voidsort(intnum[],charname[N][8])/*选择法排序*/
{inti,j,min,temp1;
chartemp2[8];
for(i=0;i{min=i;
for(j=i+1;jif(num[j]temp1=num[i];
strcpy(temp2,name[i]);
num[i]=num[min];
strcpy(name[i],name[min]);
num[min]=temp1;
strcpy(name[min],temp2);}
printf("thesortedresult:
\n");
for(i=0;iprintf("%5d%10s\n",num[i],name[i]);}
voidsearch(intn,intnum[],charname[N][8])/*折半查找法*/
{inttop,bott,mid,find;
find=0;
top=0;
bott=N-1;
if((nnum[N-1]))
find=-1;
while((find==0)&&(top<=bott))
{mid=(bott+top)/2;
if(n==num[mid])
{find=1;printf("%dnameis:
%s\n",n,name[mid]);}
elseif(nbott=mid-1;
elsetop=mid+1;}
if((find==-1)||(find==0))
printf("%disnotfound.\n",n);}
main()
{intnum[N],number,c,flag;
charname[N][8];
input_e(num,name);
sort(num,name);
for(flag=1;flag;)
{printf("pleaseinputchazhaodegonghao:
");/*输入查找的工号*/
scanf("%d",&number);
search(number,num,name);
printf("continueY/N?
");/*是否继续查找*/
getchar();
c=getchar();
if(c=='N'||c=='n')
flag=0;}
}
9.#include"stdio.h"
#defineMAX10
main()
{charstr[MAX];
charc;
inti;
i=0;
printf("inputnumber(16jinzhi):
");/*输入一个十六进制的数*/
while((c=getchar())!
='\n'&&i{str[i]=c;
i++;}
str[i]='\0';
printf("resultis:
%d\n",htod(str));}
inthtod(chars[])
{inti,n;
n=0;
for(i=0;s[i]!
='\0';i++)
{if(s[i]>='0'&&s[i]<='9')
n=n*16+s[i]-'0';
if(s[i]>='a'&&s[i]<='f')
n=n*16+s[i]-'a'+10;
if(s[i]>='A'&&s[i]<='F')
n=n*16+s[i]-'A'+10;}
return(n);}
10.#defineSWAP(a,b)t=a;a=b;b=t
main()
{inta,b,t;
printf("inputa,b:
");
scanf("%d,%d",&a,&b);
SWAP(a,b);
printf("result:
a=%d,b=%d\n",a,b);}
11.#defineSURPLUS(a,b)((a)%(b))
main()
{inta,b;
printf("inputa,b:
");
scanf("%d,%d",&a,&b);
printf("resultis:
%d\n",SURPLUS(a,b));}
12.main()
{inta,b,c;
printf("inputa,b,c:
");
scanf("%d,%d,%d",&a,&b,&c);
printf("max=%d\n",max(a,b,c));}
intmax(intx,inty,intz)
{intt;
t=(x>y?
x:
y);
return(t>z?
t:
z);}
#defineMAX(x,y)((x)>(y)?
(x):
(y))
main()
{inta,b,c;
printf("inputa,b,c:
");
scanf("%d,%d,%d",&a,&b,&c);
printf("max=%d\n",MAX(MAX(a,b),c));}
13.#include"stdio.h"
#defineCHANGE1
#defineMAX80
main()
{charstr[MAX];
inti;
printf("inputastring:
\n");
gets(str);
#if(CHANGE)
{for(i=0;str[i]!
='\0';i++)
if(str[i]>='a'&&str[i]<'z'||str[i]>='A'&&str[i]<'Z')
str[i]=str[i]+1;
elseif(str[i]=='z'||str[i]=='Z')
str[i]=str[i]-25;}
#endif
printf("%s\n",str);}
七:
1、main()
{inta[10],i,temp,*p=a;
printf("Pleaseinputarraya:
\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("arraya:
\n");
for(i=0;i<10;i++)
printf("%4d",a[i]);
for(i=0;i<5;i++)
{temp=p[i];
p[i]=p[10-i-1];
p[10-i-1]=temp;}
printf("\nNowarraya:
\n");
for(i=0;i<10;i++)
printf("%4d",a[i]);}
2、main()
{inta[3][3],*p,i,j;
printf("pleaseinputmatrix:
\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
p=&a[0][0];
move(p);
printf("\nNowmatrix:
\n");
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%4d",a[i][j]);
printf("\n");}
}
move(int*q)
{inti,j,t;
for(i=0;i<3;i++)
for(j=i;j<3;j++)
{t=*(q+3*i+j);
*(q+3*i+j)=*(q+3*j+i);
*(q+3*j+i)=t;}
}
3、#include
#include
#include
#include
main()
{intbinary();
voidinsert();
char*temp,*ptr1[6]={"BASIC","DATA","PASCAL","SQL","USE"};
inti;
ptr1[5]=malloc(20);
printf("\n");
printf("originalstring:
\n");
for(i=0;i<5;i++)
printf("%s\n",ptr1[i]);
printf("inputsearchstring:
\n");
temp=malloc(20);
gets(temp);
i=binary(ptr1,temp,5);
printf("i=%d\n",i);
insert(ptr1,temp,5,i);
printf("outputstrings:
\n");
for(i=0;i<6;i++)
printf("%s\n",ptr1[i]);}
intbinary(char*ptr[],char*str,intn)
{inthig,low,mid;
low=0;
hig=n-1;
if(strcmp(str,ptr[0])<0)return(0);
if(strcmp(str,ptr[hig])>0)return(n);
while(low<=hig)
{mid=(low+hig)/2;
if(strcmp(str,ptr[mid])<0)
hig=mid-1;
elseif(strcmp(str,ptr[mid])>0)
low=mid