文档详情

C语言题库及答案.doc

发布:2017-01-02约1.71万字共24页下载文档
文本预览下载声明
第一题汇总 1 要求输入整数a和b,若a*a+b*b大于100,则输出a*a+b*b百位以上的数字,否则输出两数之和a+b。 #includestdio.h main() { int a,b,m,n,sum; printf(please put in ab:); scanf(%d,%d,a,b); if (a*a+b*b100) { m=a*a+b*b; n=m/100; printf(%d*%d+%d*%d百位以上的数字为%d\n,a,a,b,b,n); } else { sum=a+b; printf(两数之和为%d\n,sum); } } 2 根据以下函数关系:当x=0,y=0;当0x=10,y=x;当10x=20,y=10;当x20,y=sin(x);输入一个x值,计算出相应的y值并输出。(提示:sin(x)属于math.h) #includestdio.h #includemath.h main() { float x,y; printf(please put in x:); scanf(%f,x); if (x=0) y=0; else if (x=10) y=x; else if (x=20) y=10; else y=sin(x); printf(y=%f,y); } 3 输入三个正整数x,y,z,将这三个数由小到大输出 main() { int x,y,z,t; scanf(%d%d%d,x,y,z); if (xy) {t=x;x=y;y=t;} /*交换x,y的值*/ if(xz) {t=z;z=x;x=t;}/*交换x,z的值*/ if(yz) {t=y;y=z;z=t;}/*交换z,y的值*/ printf(small to big: %d %d %d\n,x,y,z); } #includestdio.h main() { int y; scanf(%d,y); if(y%400==0||y%4==0y%100!=0) printf(Yes.\n); else printf(No.\n); } 5 编程实现四位电话号码的升位。原来电话号码为1、3、5、7、9打头的号码前加2,原来电话号码为2、4、6、8打头的加3,例如:输入1234,则输出:21234。 6 输入3个正整数,判断能否组成三角形,如果能够组成三角形,则输出三角形的面积,否则输出错误。三角形面积公式:area=sqrt(s(s-a)(s-b)(s-c)),其中s=1/2(a+b+c)。(提示:sqrt(x)属于math.h) #includestdio.h #includemath.h main() { int a,b,c; printf(请输入三边边长:); scanf(%d,%d,%d,a,b,c); if (a+bca+cbb+ca) { float s,area; s=(a+b+c)/2.0; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(三角形面积为%f,area); } else printf(输出错误); } 7 判定用户输入一个不大于999的正整数是否为一个回文数。回文数是指正读和反读都相同的数。 main( ) { long ge,bai ,x; scanf(%ld,x); bai=x/100; ge=x%10; if (ge==bai) printf(this number is a huiwen\n); else printf(this number is not a huiwen\n); } 8 从键盘输入一个两位数的正整数a,将其转换形成一个整数b并输出b。转换的方式是:将a中较大的数码作为b的十位,剩余的数码作为b的个位。例如,当输入a=49,则结果b=94。 #includestdio.h main() { int a,b,x,y; printf(please input a number ); scanf(%d,a); if(9aa100) { x=a/10; y=a%10; if(x=y) { b=a; } else { b=10*y+x; } printf(the result is %d,b); } else printf(a wrong number); } 9 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 #include stdio.h#include math.hi
显示全部
相似文档