c语言考试必备Word文档下载推荐.docx
《c语言考试必备Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言考试必备Word文档下载推荐.docx(28页珍藏版)》请在冰豆网上搜索。
*1.输入两个正整数M和N,求其最大公约数和最小公倍数。
#include<
stdio.h>
intmain()
{
intp,r,n,m,temp;
printf("
请输入两个正整数n,m:
"
);
scanf("
%d,%d,"
&
n,&
m);
if(n<
m)
temp=n;
n=m;
m=temp;
}
p=n*m;
while(m!
=0)//辗转相除法
r=n%m;
m=r;
它们的最大公约数为:
%d\n"
n);
它们的最小公约数为:
p/n);
return0;
charc;
intletters=0,space=0,digit=0,other=0;
请输入一行字符:
\n"
while((c=getchar())!
='
\n'
)
if(c>
a'
&
&
c<
z'
||c>
A'
Z'
letters++;
elseif(c=='
'
space++;
elseif(c>
0'
9'
digit++;
else
other++;
字母数:
%d\n空格数:
%d\n数字数:
%d\n其它字符数:
letters,space,digit,other);
inti,j,k,n;
parcissusnumbersare"
for(n=100;
n<
1000;
n++)
i=n/100;
j=n/10-i*10;
//找出百位十位个位上各自的数字
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
%d"
{intm,s,i;
for(m=2;
m<
m++)//由于
{s=0;
for(i=1;
i<
m;
i++)
if((m%i)==0)s=s+i;
if(s==m)
{printf("
%d,itsfactorsare"
m);
if(m%i==0)printf("
i);
inti,n=20;
//可变数据20
doublea=2,b=1,s=0,t;
=n;
s=s+a/b;
t=a,
a=a+b,
b=t;
sum=%16.10f\n"
s);
#include<
math.h>
floata,x0,x1;
enterapositivenumber:
%f"
a);
x0=a/2;
x1=(x0+a/x0)/2;
do
{x0=x1;
}while(fabs(x0-x1)>
=1e-5);
Thesquarerootof%5.2fis%8.5f\n"
a,x1);
{doublex1,x0,f,f1;
x1=1.5;
f=((2*x0-4)*x0+3)*x0-6;
f1=(6*x0-8)*x0+3;
x1=x0-f/f1;
}while(fabs(x1-x0)>
Therootofequationis%5.2f\n"
x1);
{floatx0,x1,x2,fx0,fx1,fx2;
enterx1&
x2:
%f,%f"
x1,&
x2);
fx1=x1*((2*x1-4)*x1+3)-6;
fx2=x2*((2*x2-4)*x2+3)-6;
}while(fx1*fx2>
0);
{x0=(x1+x2)/2;
fx0=x0*((2*x0-4)*x0+3)-6;
if((fx0*fx1)<
0)
{x2=x0;
fx2=fx0;
{x1=x0;
fx1=fx0;
}while(fabs(fx0)>
x=%6.2f\n"
x0);
{inti,j,n,a[101];
=100;
a[i]=i;
a[1]=0;
for(i=2;
sqrt(100);
for(j=i+1;
j<
j++)
{if(a[i]!
=0&
a[j]!
=0)
if(a[j]%a[i]==0)
a[j]=0;
for(i=2,n=0;
{if(a[i]!
%5d"
a[i]);
n++;
if(n==10)
n=0;
}
{inti,j,min,temp,a[11];
enterdata:
=10;
a[%d]="
%d"
a[i]);
Theorginalnumbers:
=9;
{min=i;
if(a[min]>
a[j])min=j;
temp=a[i];
a[i]=a[min];
a[min]=temp;
\nThesortednumbers:
#defineN4
#defineM5
{
inti,j,k,a[N][M],max,maxj,flag;
pleaseinputmatrix:
for(i=0;
N;
i++)
for(j=0;
M;
a[i][j]);
{max=a[i][0];
maxj=0;
j++)
if(a[i][j]>
max)
{max=a[i][j];
maxj=j;
flag=1;
for(k=0;
k<
k++)
if(max>
a[k][maxj])
{flag=0;
continue;
if(flag)
a[%d][%d]=%d\n"
i,maxj,max);
break;
if(!
flag)
Itisnotexist!
{chars1[80],s2[40];
inti=0,j=0;
inputstring1:
%s"
s1);
inputstring2:
s2);
while(s1[i]!
\0'
i++;
while(s2[j]!
s1[i++]=s2[j++];
s1[i]='
;
\nThenewstringis:
%s\n"
string.h>
{chars1[80],s2[80];
inti;
inputs2:
=strlen(s2);
s1[i]=s2[i];
s1:
#defineN3
intarray[N][N];
{voidconvert(intarray[][3]);
inti,j;
inputarray:
array[i][j]);
\noriginalarray:
{for(j=0;
array[i][j]);
convert(array);
printf("
convertarray:
voidconvert(intarray[][3])
{inti,j,t;
{t=array[i][j];
array[i][j]=array[j][i];
array[j][i]=t;
{voidinverse(charstr[]);
charstr[100];
inputstring:
str);
inverse(str);
inversestring:
voidinverse(charstr[])
{chart;
inti,j;
for(i=0,j=strlen(str);
(strlen(str)/2);
i++,j--)
{t=str[i];
str[i]=str[j-1];
str[j-1]=t;
{voidconcatenate(charstring1[],charstring2[],charstring[]);
chars1[100],s2[100],s[100];
concatenate(s1,s2,s);
\nThenewstringis%s\n"
voidconcatenate(charstring1[],charstring2[],charstring[])
{inti,j;
string1[i]!
string[i]=string1[i];
for(j=0;
string2[j]!
string[i+j]=string2[j];
string[i+j]='
#defineN10
charstr[N];
{voidsort(char[]);
inti,flag;
for(flag=1;
flag==1;
str);
if(strlen(str)>
N)
stringtoolong,inputagain!
flag=0;
sort(str);
stringsorted:
%c"
str[i]);
voidsort(charstr[])
chart;
for(j=1;
(i<
N-j)&
(str[i]!
if(str[i]>
str[i+1])
str[i]=str[i+1];
str[i+1]=t;
{voidinput(int*);
voidmax_min_value(int*);
voidoutput(int*);
intnumber[10];
input(number);
max_min_value(number);
output(number);
voidinput(int*number)
{inti;
input10numbers:
10;
number[i]);
voidmax_min_value(int*number)
{int*max,*min,*p,temp;
max=min=number;
for(p=number+1;
p<
number+10;
p++)
if(*p>
*max)max=p;
elseif(*p<
*min)min=p;
temp=number[0];
number[0]=*min;
*min=temp;
if(max==number)max=min;
temp=number[9];
number[9]=*max;
*max=temp;
voidoutput(int*number)
{int*p;
Now,theyare:
"
for(p=number;
*p);
intmain()
{voidmove(int[20],int,int);
intnumber[20],n,m,i;
howmanynumbers?
n);
input%dnumbers:
n;
howmanyplaceyouwantmove?
move(number,n,m);
number[i]);
voidmove(intarray[20],intn,intm)
{int*p,array_end;
array_end=*(array+n-1);
for(p=array+n-1;
p>
array;
p--)
*p=*(p-1);
*array=array_end;
m--;
if(m>
0)move(array,n,m);
{voidsort(chars[][6]);
charstr[10][6];
input10strings:
Now,thesequenceis:
voidsort(chars[10][6])
char*p,temp[10];
p=temp;
9;
9-i;
if(strcmp(s[j],s[j+1])>
{strcpy(p,s[j]);
str