编程题库.docx
- 文档编号:3284272
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:30
- 大小:24.90KB
编程题库.docx
《编程题库.docx》由会员分享,可在线阅读,更多相关《编程题库.docx(30页珍藏版)》请在冰豆网上搜索。
编程题库
1.编程:
要求输入整数a和b,若a*a+b*b大于100,则输出a*a+b*b百位以上的数字,否则输出两数之和a+b。
#include
main()
{
inta,b;
scanf("%d%d",&a,&b);
if(a*a+b*b>100)
printf("%d",(a*a+b*b)/100);
else
printf("%d",a+b);
}
2.编程:
根据以下函数关系:
当x<=0,y=0;当0
(提示:
sin(x)属于math.h)
#include
#include
main()
{
floatx,y;
printf("pleaseinputthemunberofx:
");
scanf("%f",&x);
if(x<0)
y=0;
elseif(x>0&&x<=10)
y=x;
elseif(x>10&&x<=20)
y=10;
elseif(x>20)
y=(float)sin(x);
printf("thenumberofyis%f\n",y);
}
3.编程:
根据以下函数关系:
当x<0,y=-1;当0
(提示:
sin(x)、sqrt(x)属于math.h)
#include
#include
main()
{
floatx,y;
printf("pleaseinputthemunberofx:
");
scanf("%f",&x);
if(x<0)
y=-1;
elseif(x>0&&x<=1)
y=x;
elseif(x>1&&x<=2)
y=(float)sqrt(x);
elseif(x>2)
y=(float)sin(x);
printf("thenumberofyis%f\n",y);
4.}编程:
输入三个正整数x,y,z,将这三个数由小到大输出。
#include
main()
{
intx,y,z,t;
printf("pleaseinputthemunberofx,yandz:
")
scanf("%d%d%d",&x,&y,&z);
if(x>y)
t=x,x=y,y=t;
if(x>z)
t=x,x=z,z=t;
if(y>z)
t=z,z=y,y=t;
printf("%d%d%d\n",x,y,z);
}
5.编程:
从键盘输入一个年号,判断该年号是否为闰年,并输出结果。
闰年是能被4整除但不能被100整除;或能被100整除且能被400整除的年号。
#include
main()
{
intyear;
printf("Pleaseinputayear:
");
scanf("%d",&year);
if(((year%4==0)&&(!
(year%100==0)))||((year%100==0)&&(year%400==0)))
printf("Theyearisaleapyear\n");
else
printf("Theyearisnotaleapyear\n");
}
6.编程实现四位电话号码的升位。
原来电话号码为1、3、5、7、9打头的号码前加2,原来电话号码为2、4、6、8打头的加3,例如:
输入1234,则输出:
21234。
#include
main()
{
intphonenumber;
printf("Pleaseinputaphonenumber:
");
scanf("%d",&phonenumber);
if((phonenumber/1000)%2==0)
printf("Thenewphonenumberis%d\n",phonenumber+20000);
else
printf("Thenewphonenumberis%d\n",phonenumber+30000);
7.}编程实现四位电话号码的升位。
原来电话号码为1、2、3、4、5打头的号码前加3,原来电话号码为6、7、8、9打头的加2,例如:
输入1234,则输出:
31234。
#include
main()
{
intphonenumber;
printf("Pleaseinputaphonenumber:
");
scanf("%d",&phonenumber);
if((phonenumber/1000)<=5)
printf("Thenewphonenumberis%d\n",phonenumber+30000);
else
printf("Thenewphonenumberis%d\n",phonenumber+20000);
}
编程:
已知分段函数:
当x>10时,y=2*x+1;当1 #include main() { floatx,y; printf("Pleaseinputanumberofx: "); scanf("%f",&x); if(x>10) y=2*x+1; elseif(x>1&&x<=10) y=5*(x+1)*(x-2); else y=1-2*x; printf("thenumberofyis%f\n",y); } 8.编程: 输入3个正整数,判断能否组成三角形,如果能够组成三角形,则输出三角形的面积,否则输出错误。 三角形面积公式: area=sqrt(s(s-a)(s-b)(s-c)),其中s=1/2(a+b+c)。 (提示: sqrt(x)属于math.h) 没做呢#include #include intabsolute(intx,inty); main() { inta,b,c,x,y,z; floats,area; printf("pleaseinputnumberofa,bandc: "); scanf("%d%d%d",&a,&b,&c); x=absolute(a,b); y=absolute(c,b); z=absolute(c,a); if((a+b<=c)||(a+c<=b)||(c+b<=a)||(x>=c)||(y>=a)||(z>=b)) { printf("facult\n"); } else { s=(float)(a+b+c)/2; area=(float)sqrt(s*(s-a)*(s-b)*(s-c)); printf("theareaofthetriangleis%f\n",area); } } intabsolute(intx,inty) { ints; s=x-y; if(x-y<0) s=y-x; returns; } 9.编程: 已知分段函数,当x<=0时,y=3*x;当0 #include main() { floatx,y; printf("pleaseinputanumberofx: "); scanf("%f",&x); if(x<=0) y=3*x; elseif(x>0&&x<=10) y=(x+1)*(x-2); else y=2*x*x; printf("thenumberofyis%f\n",y); } 编程: 判定用户输入一个不大于999的正整数是否为一个回文数。 回文数是指正读和反读都相同的数。 #include main() { intx,i,j; printf("pleaseinputanintergernomorethan999: "); scanf("%d",&x); if(x<10) printf("%disahuiwenshu\n",x); elseif(x>=10&&x<100) { i=x/10; j=x%10; if(i==j) { printf("%disahuiwenshu\n",x); } elseprintf("%disnotahuiwenshu\n",x); } elseif(x>=100&&x<1000) { i=x/100; j=x%10; if(i==j) { printf("%disahuiwenshu\n",x); } elseprintf("%disnotahuiwenshu\n",x); } } 10.编程: 从键盘输入一个两位数的正整数a,将其转换形成一个整数b并输出b。 转换的方式是: 将a中较大的数码作为b的十位,剩余的数码作为b的个位。 例如,当输入a=49,则结果b=94 #include main() { inta,i,j; printf("pleaseinputanintergerthatmorethan0andlessthan100: "); scanf("%d",&a); i=a/10; j=a%10; if(i printf("theresultofthechangebis%d\n",10*j+i); elseprintf("theresultofthechangebis%d\n",a); } 编程: 从键盘输入一个两位数的正整数a,将其转换形成一个整数b并输出b。 转换的方式是: 将a中较大的数码作为b的十位,剩余的数码作为b的个位。 例如,当输入a=49,则结果b=94。 #include main() { inta,i,j; printf("pleaseinputanintergerthatmorethan0andlessthan100: "); scanf("%d",&a); i=a/10; j=a%10; if(i printf("theresultofthechangebis%d\n",10*j+i); elseprintf("theresultofthechangebis%d\n",a); } 编程: 从键盘输入一个两位数的正整数a,将其转换形成一个整数b并输出b。 转换的方式是: 将a中较小的数码作为b的十位,剩余的数码作为b的个位。 例如,当输入a=54,则结果b=45。 #include main() { inta,i,j; printf("pleaseinputanintergerthatmorethan0andlessthan100: "); scanf("%d",&a); i=a/10; j=a%10; if(i printf("theresultofthechangebis%d\n",10*j+i); elseprintf("theresultofthechangebis%d\n",a); } 初始化数组a中包含10个不同的整数,要求从键盘输入一个整数,若这个整数在数组中则从数组中删除这个整数并输出删除后的数组,否则输出no。 #include main() { inta[10]={1,2,3,4,5,6,7,8,9,10},i,j,k,l; printf("pleaseinputaninterger: "); scanf("%d",&i); for(j=0;;j++) { if(i==a[j]) { printf("%disinthe%dposition\n",i,j+1); for(k=j;k<9;k++) { a[k]=a[k+1]; } a[9]=0; for(l=0;l<9;l++) { printf("%d",a[l]); } break; } if(j==10) { printf("no\n"); break; } } } 11.初始化一字符串(字符串中的每个字符各不同),要求从键盘输入一个字符,删除字符串中和输入字符相同的字符,输出处理后的字符串。 #include #include main() { chari,a[]="qwertyuiopasdfghjklzxcvbnm"; intj,k,l,m; printf("pleaseinputanchar: "); scanf("%c",&i); m=strlen(a); for(j=0;;j++) { if(i==a[j]) { printf("%cisinthe%dposition\n",i,j+1); for(k=j;k { a[k]=a[k+1]; } a[m-1]=0; break; } if(j==m) { printf("%cisnotfounded\n",i); break; } } for(l=0;l { printf("%c",a[l]); } } 12.计算一个4*4矩阵的主对角线的元素之和以及最大元素的值。 要求初始化矩阵,输出计算结果并输出该矩阵。 #include main() { inta[4][4]={18,21,3,45,51,16,-97,86,9,0,-1,-29,-34,28,56,-90},i,j,k=0,min,sum=0; for(i=0;i<4;i++) { sum+=a[i][i]; } min=a[0][0]; for(i=0;i<4;i++) { for(j=0;j<4;j++) { if(a[i][j] min=a[i][j]; k++; printf("%d",a[i][j]); if(k%4==0) printf("\n"); } } printf("对角线元素之和是%d,最小值是%d\n",sum,min); } 13.计算一个3*3矩阵的所有元素之和以及所有元素中的最大元素的值。 要求初始化矩阵,输出计算结果并输出该矩阵。 #include main() { inta[3][3]={18,21,3,45,51,16,-97,86,9},i,j,k=0,max,sum=0; max=a[0][0]; for(i=0;i<3;i++) { for(j=0;j<3;j++) { sum+=a[i][j]; if(a[i][j]>max) max=a[i][j]; k++; printf("%d",a[i][j]); if(k%3==0) printf("\n"); } } printf("所有元素之和是%d,最大值是%d\n",sum,max); } 初始化一字符串(长度小于20个字符),取出第3个字符到第7个字符组成的子串,输出该子串。 #include main() { chara[]={"abcndeerhurh"}; inti; printf("子串是: "); for(i=2;i<7;i++) { printf("%c",a[i]); } printf("\n"); } 编程计算一个a[3][4]数组的最小值所在位置,输出该位置以及a[3][4]矩阵。 要求初始化矩阵。 #include main() { inta[3][4]={21,-2,93,54,-5,-26,-7,18,39,-10,-11,32},min; inti,j,l=0,c=0,r=0; min=a[0][0]; for(i=0;i<3;i++) { for(j=0;j<4;j++) { if(min>a[i][j]) { min=a[i][j]; c=i,r=j; } printf("%d",a[i][j]); l++; if(l%4==0) printf("\n"); } } printf("theminis%d,andit'sinthe%drow,the%dcolumn",min,c+1,r+1); } 14.初始化一矩阵a[4][4],计算每行的最大元素值,要求输出原始矩阵以及每行的最大元素值。 #include main() { inta[4][4]={21,-2,93,54,-5,-26,-7,18,39,-10,-11,32,29,57,46,-82},max[4]; inti,j,l=0; for(i=0;i<4;i++) { max[i]=a[i][0]; for(j=0;j<4;j++) {
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 题库