c语言题目。考试用的……急……急……急……

1、 输入10个整数,用冒泡法进行从小到大的排序,并且将结果输出出来。
2、 打印出九九乘法表。(用二维数组来实现)
3、 输入一行字符,统计出其中英文字母、空格、数字和其它字符的个数,分别打印出来。(字符存入字符类型数组中,输入时用“字符串输入函数”来实现)
4、 打印出所有的水仙花数。(水仙花数:一个百位数,其每位数的立方和等于其本身)
5、 输入三个实数变量,按从大到小的顺序打印出数据。(用指针来实现)
6、 输入三个数,判断它们能否组成三角形,将结果打印出来。
7、 输入两个整数,求出它们的最大公约数,和最小公倍数。
8、 打印出斐波那契数列(1,1,2,3,5,8…….)的前20项,要求一排打印5个数。
9、 输入一个16进制数,打印出其对应的10进制数。(用字符数组来存放输入的数据)
10、 有1020个西瓜,第一天卖一半多一个,以后每天卖剩下的一半多一个,问几天卖完?
11、 输入20个整数,求其中的最大数,最小数,和,平均数,并分别将结果打印出来。(用数组实现)
12、 输入一个正整数,判断它是否是回文数,即正读反读均是相同的数。
13、 输入一个整数n,用函数的递归方法求出n!。
14、 找出1000之内的所有完数。完数指的是:一个数本身恰好等于它的因子之和。如6。
15、 求1-3+5-7+……-99+101的值。
16、 输入1,打印出“星期一”,同理,输入7,打印出“星期日”(用多分支结构SWITCH)
17、 输入a,b,c ,求ax2+bx+c=0的方程的实根。

1、 输入10个整数,用冒泡法进行从小到大的排序,并且将结果输出出来。
main()
{
int i,j,k,t;
int a[10];
printf("please input ten numbers:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
{
k=i;
for(j=i+1;j<10;j++)
if(a[k]>a[j]) k=j;
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
printf("the sorted numbers are:");
for(i=0;i<10;i++)
printf("%d\n",a[i]);
}
2、 打印出九九乘法表。(用二维数组来实现)
#include<stdio.h>
main()
{
int row,low;
for(low=1;low<10;low++)
{
for(row=1;row<=low;row++)
{
printf("%d*%d=%d",low,row,low*row);
printf(" ");
}
printf("\n");
}

}
3、 输入一行字符,统计出其中英文字母、空格、数字和其它字符的个数,分别打印出来。(字符存入字符类型数组中,输入时用“字符串输入函数”来实现)
#include<stdio.h>
main()
{
int i,cnt1=0,cnt2=0,cnt3=0,cnt4=0;
char a[75];
printf("请输入一行字符:\n");
gets(a);
for(i=0;a[i]!='\0';i++)
{
if(a[i]<='z'&&a[i]>='A')
cnt1++;
else if(a[i]==' ')
cnt2++;
else if(a[i]>=0&&a[i]<=9)
cnt3++;
else cnt4++;
}
printf("你输入的字符中英文字母有%d个,空格有%d个,数字有%d个,其它字符有%d个\n",cnt1,cnt2,cnt3,cnt4);

4、 打印出所有的水仙花数。(水仙花数:一个百位数,其每位数的立方和等于其本身)
#include<stdio.h>
#include<math.h>
main()
{
int i,a,b,c;
for(i=100;i<=999;i++)
{
a=i/100%10;
b=i/10%10;
c=i%10;
if(i==pow(a,3)+pow(b,3)+pow(c,3))
printf("\t%d",i);
}
}
5、 输入三个实数变量,按从大到小的顺序打印出数据。(用指针来实现)
#include<stdio.h>
main()
{
int *a,*b,*c,temp;
int d,e,f;
a=&d,b=&e,c=&f;
printf("请输入任意三个数:\n");
scanf("%d%d%d",&d,&e,&f);
if(*a<*b)
{
temp=*a;
*a=*b;
*b=temp;
}

if(*a<*c)
{
temp=*a;
*a=*c;
*c=temp;
}
if(*b<*c)
{
temp=*b;
*b=*c;
*c=temp;
}
printf("排序后结果为:%d>%d>%d",*a,*b,*c);
}
6、 输入三个数,判断它们能否组成三角形,将结果打印出来。
main()
{
int a,b,c;
printf("请输入三角形的三条边:\n");
scanf("%d%d%d",&a,&b,&c);
if(((a+b)>c)&&((a+c)>b)&&((c+b)>a))
printf("您输入的三边可以组成三角形");
else
printf("您输入的三边不可以组成三角形");
}

7、 输入两个整数,求出它们的最大公约数,和最小公倍数。
#include<stdio.h>
main()
{
int a,b,i,temp;
int max,min;
printf("请输入两个整数:\n");
scanf("%d%d",&a,&b);
if(a<b)
{
temp=a;
a=b;
b=temp;
}
for(i=a;;i--)
{
if(a%i==0&&b%i==0)
{
max=i;
break;
}

}
for(i=a;;i++)
{
if(i%a==0&&i%b==0)
{
min=i;
break;
}

}
printf("这两个数的最大公约数是%d,最小公倍数是%d",max,min);
}
8、 打印出斐波那契数列(1,1,2,3,5,8…….)的前20项,要求一排打印5个数。
#include<stdio.h>
main()
{
long a[20]={1,1};
int i,j;
for(i=2;i<20;i++)
a[i]=a[i-1]+a[i-2];
for(i=0;i<20;i++)
{
printf("\t%d",a[i]);
if((i+1)%5==0)
printf("\n");
}
}

9、 输入一个16进制数,打印出其对应的10进制数。(用字符数组来存放输入的数据)
#include<stdio.h>
main()
{
int a,cnt[75],b,i=0,j;
printf("请输入任一个10进制数:\n");
scanf("%d",&a);

while(a)
{
b=a%16;
cnt[i++]=b;
a=a/16;
}
printf("它相应的16进制数是:\n");
for(j=i-1;j>=0;j--)
printf("%d",cnt[j]);
}
10、 有1020个西瓜,第一天卖一半多一个,以后每天卖剩下的一半多一个,问几天卖完?
#include<stdio.h>
main()
{
int a=1020,cnt=0;
while(a!=0)
{
cnt++;
a=a/2.0-1.0;
}
printf("有1020个瓜,这样就需%d天卖完",cnt);

}
11、 输入20个整数,求其中的最大数,最小数,和,平均数,并分别将结果打印出来。(用数组实现)
#include<stdio.h>
main()
{
int a[20],i,max,min;
float sum=0,aver;
printf("请输入任20个整数:\n");
for(i=0;i<20;i++)
scanf("%d",&a[i]);
max=a[1],min=a[1];
for(i=0;i<20;i++)
{
sum+=a[i];
if(max<a[i])
max=a[i];
if(min>a[i])
min=a[i];
}
aver=sum/20.0;
printf("这些数的最大值是%d,最小数是%d,和为%f,平均数是%f",max,min,sum,aver);
}
12、 输入一个正整数,判断它是否是回文数,即正读反读均是相同的数。
13、 输入一个整数n,用函数的递归方法求出n!。
#include<stdio.h>
int jiecheng(int n)
{
if(n==1)
return 1;
else return(n*jiecheng(n-1));
}
main()
{
int a,m;
printf("请输入任一个数:\n");
scanf("%d",&a);
m=jiecheng(a);
printf("这个数的阶乘是%d",m);
}
14、 找出1000之内的所有完数。完数指的是:一个数本身恰好等于它的因子之和。如6。
15、 求1-3+5-7+……-99+101的值。
#include<stdio.h>
main()
{
int i;
long sum=0,sum1=0,sum2=0;
for(i=1;i<=101;i+=4)
sum1+=i;
for(i=-3;i>=-99;i-=4)
sum2+=i;
sum=sum1+sum2;
printf("结果是%d",sum);

}
16、 输入1,打印出“星期一”,同理,输入7,打印出“星期日”(用多分支结构SWITCH)
#include<stdio.h>
main()
{
int a;
printf("请输入1-7中的任一一个数:\n");
scanf("%d",&a);
switch(a)
{
case 1:printf("\n星期一\n");break;
case 2:printf("\n星期二\n");break;
case 3:printf("\n星期三\n");break;
case 4:printf("\n星期四\n");break;
case 5:printf("\n星期五\n");break;
case 6:printf("\n星期六\n");break;
case 7:printf("\n星期日\n");break;
default :printf("\n输入错误\n");
}
}
17、 输入a,b,c ,求ax2+bx+c=0的方程的实根。
#include<math.h>
main()
{
float a,b,c,d,e,f,g,h,i;

clrscr();

printf ("please enter a,b,c\n");
scanf ("%f",&a);
scanf ("%f",&b);
scanf ("%f",&c);

f=(b/(2*a));
d=sqrt(f*f-c/a);
e=-b/(2*a);
h=e+d;
i=e-d;

if(f*f-c/a>0)
{ printf("x1=%f\nx2=%f"h,i,);}

if(f*f-c/a==0)
{ printf("x1=x2=%f",e);}

if(f*f-c/a<0)
{ g=sqrt(c/a-f*f);
printf("x1=+(%f)i+(%f)\nx2=-(%f)i+(%f)",g,e,g,e);}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-05-25
题目太多啦!你找本c语言的书,上面基本都有
第2个回答  2009-05-26
17.输入a,b,c ,求ax2+bx+c=0的方程的实根。
#include<math.h>
main()
{
float a,b,c,d,e,f,g,h,i;

clrscr();

printf ("please enter a,b,c\n");
scanf ("%f",&a);
scanf ("%f",&b);
scanf ("%f",&c);

f=(b/(2*a));
d=sqrt(f*f-c/a);
e=-b/(2*a);
h=e+d;
i=e-d;

if(f*f-c/a>0)
{ printf("x1=%f\nx2=%f"h,i,);}

if(f*f-c/a==0)
{ printf("x1=x2=%f",e);}

if(f*f-c/a<0)
{ g=sqrt(c/a-f*f);
printf("x1=+(%f)i+(%f)\nx2=-(%f)i+(%f)",g,e,g,e);}
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网