文档库 最新最全的文档下载
当前位置:文档库 › 北京理工大学网络教室C语言编程题库及答案

北京理工大学网络教室C语言编程题库及答案

北京理工大学网络教室C语言编程题库及答案
北京理工大学网络教室C语言编程题库及答案

Hello world.1.

输入:无输出:Hello world.

程序:#include<>int main(){ printf(Hello world.\n); return 0;} Welcome to Beijing.2.

程序:#include <>int main(){printf(Welcome\n);

printf( o\n);

printf(Beijing.\n);

return 0;

}求3. A+B输入:整数1 整数2

输出:整数1+整数2=和

程序:

#include<>

int main()

{

int a,b;

scanf(%d,&a);

scanf(%d,&b);

printf(%d+%d=%d\n,a,b,a+b);

return 0;

}

4. 求 x 的 3次方

输入:一个整数。

输出:该整数的 3 次方值。

程序:

#include<>

int main()

{

int x;

scanf(%d,&x);

printf(%d\n,x*x*x);

return 0;

}

5. 学习打印你的第一个图形

编写一个小程序,要求输出的是 4 行由*号组成的等腰三角形。

程序:

#include<>

int main()

{

printf( *\n);

printf( ***\n);

printf( *****\n);

printf(*******\n);

return 0;

}

6. 一年级的算术题

输入:接受两个整数,每个整数之间使用空格分隔。例如输入格式为:123 444之后的运行结果。/、、* 输出:分别输出按照整型数据进行 +、-、*

程序: #include<>int main(){ int a,b; scanf(%d %d,&a,&b); printf(%d+%d=%d\n,a,b,a+b); printf(%d-%d=%d\n,a,b,a-b);

printf(%d*%d=%d\n,a,b,a*b); printf(%d/%d=%d\n,a,b,a/b);

printf(%d%%%d=%d\n,a,b,a%b); return 0;}7. 求两个变量的最小值输入:两个整型数两个整型值中的最小值输出:

程序: #include<>int main().

{ int a,b; scanf(%d%d,&a,&b); printf(min=%d\n,a

return 0;}8. 判断三角形的形状

输入:三角型的3条边的长度(int型)。

输出:等边三角形:equilateral triangle

等腰三角形:isoceles triangle

不构成三角形:non-triangle

一般三角形:triangle

程序:

#include<>

int main()

{

int a,b,c;

scanf(%d%d%d,&a,&b,&c);

if(a+b>c&&a+c>b&&b+c>a)

{

if (a==b&&b==c&&a==c)

printf(equilateral triangle.\n);

else if(a==b||a==c||b==c)

printf(isoceles triangle.\n);

else

printf( riangle.\n);

}

else

printf(

on-triangle.\n);

return 0;

}

9. 计算圆柱的侧面积及体积

输入:第一行输入圆柱的底面半径r

第二行输入圆柱的高 h

>,v=< 圆柱的体积 > 圆柱的侧面积输出:s=<

要求型类度精为定量有1. 所变都义双结果精确到小数点后两位2.

程序: #include<>#define PI

int main().

{ double r,h,s,v; scanf(%lf,&r); scanf(%lf,&h); s=2*PI*r*h;

v=PI*r*r*h; printf(s=%.2f,v=%.2f\n,s,v); return 0;}10. 计算时钟的夹角背景:

。180 ) 包括 0 和钟面上的时针和分针之间的夹角总是在 0 ~180之间 (

,180 0 ,而在六点的时候夹角为举例来说,在十二点的时候两针之间的夹角为之间任意一个时间 11:59 本题要解决的是计算 12:00 到在三点的时候为

90 。的夹角。输入:小于等于大于 0 每组测试数据包含两个数字:第一个数字代表小时 (

。 [0, 59] ( 在区间上 ) 12) ,第二个数字代表分输出:

对应每组测试数据,用常用格式显示时间以及这个时候时针和分针间的最小夹角,精确到小数点后一位。输出格式如下所示。

程序: #include<>#include<>int main(){ int h,m; float d1,d2,d; scanf(%d%d,&h,&m); d1=30*(h+m/; d2=m*360/; d=fabs(d1-d2);

if(d>180) d=360-d; printf(At %d:%d the angle is %.1f

degrees.\n,h,m,d);

return 0;}找出最大素数11.

素数是指一个只能被1和它本身整除的数,在数论中占有重要的研究地位,在当代密码学中也被广泛应用。

输入:取值范围

输出:该范围内的最大素数

程序: #include<>

int main()

{

int n,i,j;

scanf(%d,&n);

for(i=n;i>=1;i--)

{ for(j=2;j

if(i%j==0)

break;

if(j==i)

{

printf(The max prime number is %d.\n,i);

break;

}

}

} 3位数值12. 求最后输入:a 和 n 的值。假设 a<=150 。

输出:求 a 的 n 次方的最后 3 位数。

程序:

#include<>

int main()

{

long int s=1;

int a,n,i=1,t=1;

scanf(%d%d,&a,&n);

if(n==0)

printf(The last 3 numbers is 1.\n);

else

{

for(i=1;i<=n;i++)

{

s=(s*a)_x0010_00;

}

t=s_x0010_00;

if(t>=0&&t<10) printf(The last 3 numbers is 00%d.\n,t);

if(t>=10&&t<100) printf(The last 3 numbers is 0%d.\n,t);

if(t>=100&&t<1000) printf(The last 3 numbers is %d.\n,t);

}

return 0;

}

13. 贪吃的猴子

有一只猴子,第一天摘了若干个桃子,当即吃了一半,但还觉得不过瘾,就又多吃了一个。第2天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。以后每天早上都吃了前一天剩下的一半加天数个(例如,第5天吃了前一天剩下的一般加5个)。到第n天早上再想吃的时候,就只剩下一个桃子了。输入:天数n

输出:第一天的桃子个数

程序:

#include<>

int main()

{

int i,n,amount=1;

scanf(%d,&n);

for(i=n-1;i>=1;i--)

amount=2*(amount+i);

printf(The monkey got %d peachs in first day.\n,amount);

}

14. 黑色星期五

在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。

输入:年份

输出:判断该年是否包含黑色星期五,如包含,给出具体日期

程序:

#include<>

int main()

{

int i,n=0,year,month[12]={0};

int a[13]={0,13,44,73,104,134,165,195,226,257,287,318,348};

int b[13]={0,13,44,72,103,133,164,194,225,256,286,317,347};

scanf(%d,&year);

for(i=1;i<13;i++)

{

if ((year%4==0 && year_x0010_0!=0)||year@0==0)

{

if((year-1+((year-1)/4)-((year-1)/100)+((year-1)/400)+a[i])%7==5)

{

n++;

month[n]=i;

}

}

else

if((year-1+((year-1)/4)-((year-1)/100)+((year-1)/400)+b[i])%7==5)

{

n++;

month[n]=i;

}

}

if(n==1)

{

printf(There is %d Black Friday in year %d.\n,n,year);

printf(It is:\n);

printf(%d/%d/13\n,year,month[1]);

}

else

{

printf(There are %d Black Fridays in year %d.\n,n,year);

printf(They are:\n);

for (i=1;i<=n;i++)

{

printf(%d/%d/13\n,year,month[i]);

}

}

return 0;

}

15.你会输出一行星号

我们才开始上机,现在需要我们用最简单得办法,在一行中输出N个星号。

输入:N值

输出:一行中N个星号。

程序:

#include<>

int main()

{

int i,n;

scanf(%d,&n);

for(i=1;i<=n;i++)

printf(*);

printf(\

);

}

16. 计算SUM的值

已知公式:SUM = 1 + 1/2 + 1/3 + 1/4 + ... + 1/n

输入: n 输出:表达式 sum 的值。结果保留 6 位小数。

程序:

#include<>

int main()

{

int i,n;

double sum=0;

scanf(%d,&n);

for (i=1;i<=n;i++)

sum+=i;

printf(sum=%.6lf\n,sum);

return 0;

}

17. 寻找特殊整数

请编写一个程序寻找一种特殊整数:一个 n 位的正整数等于其各位数字的n次方之和。例如:407=4×4×4+0×0×0+7×7×7。所以407就是一个特殊数。输入:正整数的位数n(n<=6)。

输出:

所有此n位特殊数。每个数占一行。若不存在符合条件的特殊数,则输出提示:“No output.”;若存在,则从小到大进行输出。

说明:

假设输入为4,在4位整数中,有3个4位的特殊数,则输出格式为(输出中的1111、2222和9999并不是4位特殊数,只是格式样例):

1111

2222

9999

程序:

#include<>

#include <>

int main()

{

int n,i,j,num,t,s=0,t1,flag=0;

scanf(%d,&n);

t=pow(10,n-1);

for (i=t;i

{

t1=i;

s=0;

for (j=1;t1!=0;j++)

{

num=t1_x0010_;

s+=pow(num,n);

t1=t1/10;

}

if(s==i)

{

flag=1;

printf(%d\n,i);

}

}

if(flag==0)

printf(No output.\n);

return 0;

}

18. 空心的倒三角型

输入:输入三角形的高度(h >= 0)。

输出:打印相应的空心倒三角形。图样参见测试用例。

程序:

#include<>

#include <>

int main()

相关文档