湖南理工学院南湖学院C语言期末考试试题

更新时间:2024-07-09 06:15:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

程序设计题

求出只要能被2,7,9之一整除的1000以内的正整数的个数。(||)

#include \main() {

int i,count=0;

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

{ if( i%2==0||i%7==0||i%9==0) count++;

} printf(\}

<标准答案>619

编程序求出100到800之间同时满足除4余1和除5余3条件的数的个数。(&&)

#include main()

{int i,count=0;

for(i=100;i<=800;i++)

if(i%4==1&&i%5==3) count++; printf(\

<标准答案>35

编程序求出1000到2000之间同时满足除3余2和除5余3条件的数的个数。 #include main()

{ int i,count=0;

for(i=1000;i<=2000;i++)

if(i%3==2&&i%5==3) count++; printf(\}

<标准答案>66

编程序求出3000到5000之间同时满足除3余2和除5余3条件的数的个数。 #include main()

{ int i,count=0;

for(i=3000;i<=5000;i++)

if(i%3==2&&i%5==3) count++; printf(\}

<标准答案>133 编写程序,求10! #include main()

{int i=1,s=1;

while(i<=10) { s=s*i; i++;} printf(\<标准答案>3628800

求出只要能被2,7,9之一整除的800以内的正整数的个数。 #include main() { int i,num=0; for (i=1;i<=800;i++) if(i%2==0 ||i%7==0 || i%9==0 ) num++; printf(\}

<标准答案>496

求出只要能被2,7,9之一整除的600以内的正整数的个数 #include main() { int i,num=0; for (i=1;i<=600;i++) if(i%2==0 ||i%7==0 || i%9==0 ) num++; printf(\} 。

<标准答案>372

编程序求出1到500之间同时满足除3余2和除4余2条件的数的和。 <标准答案>10416

求[105,625]间能同时被7和11整除的自然数之和。

#include main()

{ int x,sum=0;

for(x=105;x<=625;x++) if(x%7==0&&x==0) sum=sum+x; printf(\

<标准答案>2695

计算S=3!+5!+7!+...+N!,求直到S>=680000为止的奇数N。

#include #include int f(int n)

{ int s;

if(n==0||n==1) s=1; else s=n*f(n-1); return s;} main() { int i=3,s=0; while(s<680000) { s=s+f(i);i=i+2;} printf(\

<标准答案>11

1!+2!+3!+....+n! 当s大于61000时结束累加,求n。 <标准答案>9

求1+3+5+7+9+11+...这样的奇数之和.若累加数大于500时, 则结束累加。答案为: #include \void main() {

int i,s=0;

for(i=1;s<=500;i+=2) s=s+i;

printf(\}

<标准答案>529

已知函数f是判断素数的函数。编写程序计算100-300之间素数个数。请将运算结果填入文本框。 f(long n) {

long i,j=n/2; if(n<2)return 0; for(i=2;i<=j;i++) if(n%i==0)return 0; return 1; }

<标准答案>37

已知函数f是判断素数的函数。编写程序计算300-600之间素数个数。请将运算结果填入文本框。 f(long n) {

long i,j=n/2; if(n<2)return 0; for(i=2;i<=j;i++) if(n%i==0)return 0; return 1; }

<标准答案>47

已知函数f是判断素数的函数。编写程序计算600-900之间素数个数。请将运算结果填入文本框。 f(long n) {

long i,j=n/2; if(n<2)return 0; for(i=2;i<=j;i++) if(n%i==0)return 0; return 1; }

<标准答案>45

已知函数f是判断素数的函数。编写程序计算0-100之间素数个数。请将运算结果填入文本框。 f(long n) {

long i,j=n/2; if(n<2)return 0; for(i=2;i<=j;i++) if(n%i==0)return 0; return 1; }

<标准答案>25

已知函数f是判断素数的函数。编写程序计算900-1000之间素数个数。请将运算结果填入文本框。 f(long n) {

long i,j=n/2; if(n<2)return 0; for(i=2;i<=j;i++) if(n%i==0)return 0; return 1; }

<标准答案>14

已知函数f是判断水仙花数的函数。编写程序计算[100,999]之间的水仙花数的和。请将运算结果填入文本框。 f(long n) {

long i,j,k;

if(n<100||n>999)return 0; i=n/100; j=n/10; k=n;

if(n==i*i*i+j*j*j+k*k*k)return 1;

return 0; }

<标准答案>1301

已知函数f是判断水仙花数的函数。编写程序计算100-300之间水仙花数的个数。请将运算结果填入文本框。 f(long n) {

long i,j,k;

if(n<100||n>999)return 0; i=n/100; j=n/10; k=n;

if(n==i*i*i+j*j*j+k*k*k)return 1; return 0; }

<标准答案>1

已知函数f是判断水仙花数的函数。编写程序计算300-600之间水仙花数的个数。请将运算结果填入文本框。 f(long n) {

long i,j,k;

if(n<100||n>999)return 0; i=n/100; j=n/10; k=n;

if(n==i*i*i+j*j*j+k*k*k)return 1; return 0; }

<标准答案>3

已知函数f是判断水仙花数的函数。编写程序计算300-400之间水仙花数的个数。请将运算结果填入文本框。 f(long n) {

long i,j,k;

if(n<100||n>999)return 0; i=n/100; j=n/10; k=n;

if(n==i*i*i+j*j*j+k*k*k)return 1; return 0; }

<标准答案>2

已知函数f是判断回文数的函数。编写程序计算1000-3000之间回文数的和。请将运算结果填入文本框。

{if ((i+j)%2==0) n=n+1; j=j+1; } i=i+1; } printf(\}

<标准答案>20

已知一个数列的前三个数是1,2,3,从第四个数起,每个数都是前三个数之和。下面的程序是求出该数列的第15个数。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

int a[15]={1,2,3},i=4; while (i=15)

{a[i]=a[i-1]+a[i-2]+a[i-3]; i=i+1; }

printf(\}

<标准答案>4841

下列程序用于计算0~50范围内各位数字之和大于各位数字之积的所有数的个数。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

int i,a,b,s=0;

for(i=0;i<=50;i++) {

a=i/10; b=i;

if(a+b>=a*b)s++; }

printf(\}

<标准答案>26 main()

{ int i,a,b,s=0; for(i=0;i<=50;i++) { a=i; b=i/10; if(a+b>=a*b)s++; }

printf(\}

下列程序用于计算0~50范围内各位数字之和大于等于各位数字之积的所有数的个数。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main()

{

int i,a,b,s=0;

for(i=0;i<=50;i++) {

a=i/10; b=i;

if(a+b>a*b)s++; }

printf(\}

<标准答案>28 main() {

int i,a,b,s=0;

for(i=0;i<=50;i++) {

a=i/10; b=i;

if(a+b>=a*b)s++; }

printf(\}

下列程序用于计算0~50范围内各位数字之和大于等于各位数字之积的所有数的总和。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

int i,a,b,s=0;

for(i=0;i<=50;i++) {

a=i/10; b=i;

if(a+b>=a*b)s++; }

printf(\}

<标准答案>445 main() {

int i,a,b,s=0;

for(i=0;i<=50;i++) {

a=i/10; b=i;

if(a+b>=a*b)s+=i;

}

printf(\}

下列程序用于计算1+2+3+···+999。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

long i,s=0;

for(i=1;i<=999;i++) {

s=s+1; }

printf(\}

<标准答案>499500

下列程序用于计算1+2+3+···+888。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

long i,s;

for(i=1;i<=888;i++) {

s=s+i; }

printf(\}

<标准答案>394716

下列程序用于计算1+3+5+···+999。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

long i,s=0;

for(i=1;i<=999;i++) {

s=s+i; }

printf(\}

<标准答案>250000

下列程序用于计算2+4+6+···+888。程序可能有错误,如有错误请改正,将运算结果填入文本框。 main() {

long i,s;

for(i=2;i<=888;i+=2) {

s=s+i; }

printf(\}

<标准答案>197580

求 s=1!+4!+7!+10!。程序可能有错误,如有错误请改正,将运算结果填入文本框。 #include \ main()

{ long s=0,f; int i,j;

for (i=1; i<=10; i+=3) { f = 1;

for (j=1; j<=i; j++) f = f*i; s += f; }

printf(\<标准答案>3633865

已知 f(n)=f(n-1)+2f(n-2)-5f(n-3), f(0)=1,f(1)=2,f(2)=3, 求 f(0)+f(1)+……+f(20)。程序可能有错误,如有错误请改正,将运算结果填入文本框。 #include \main()

{ long f0=1,f1=2,f2=3,f,s,I; s=f0+f1+f2; for (I=3; I<=20; I++)

{ f=f2+2*f1-5*f0; s+=f; f0=f1; f1=f2; f2=f; }

printf(\ }

<标准答案>4946

求解方程 x^2- 7912x +12976 = 0 的最大实根。程序可能有错误,如有错误请改正,将运算结果填入文本框。 #include \ #include \ main()

{ float b,c,d,x; b=-7912.0; c=12976.0;

d=b*b-4*c; d=sqrt(d); x=(-b-d)/2; printf(\<标准答案>7910.36

下列程序中fun()函数的功能是通过形参得到圆的面积。试求半径为13.437 的圆的二分之一面积。程序可能有错误,如有错误请改正,将运算结果填入文本框。 #include \

#include \ double fun(double r) {

double s;

s=1/2*3.14159*r*r; return(s); } main() {

double r=13.437;

printf(\ }

<标准答案>283.6117

下列程序的功能是:已知a、b、c,求二元一次方程 ax^2+bx+c=0的最大的 根的程序。程序可能有错误,如有错误请改正,将运算结果填入文本框。 #include \ #define a 1.3 #define b -4 #define c -11 main()

{ double x; double d;

d=sqrt(b*b-4*a*c); x=-b+d; if (x<-b-d) x=-b-d; x=x/2*a;

printf(\ }

<标准答案>4.8291

程序填空题

下列程序用于计算各位数字之和等于30的4位偶数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,s=0;

for(i=1000;i<=9998;i+=2) {

a=i/1000; b=i/100;

c=__i/10_______; d=i;

if(a+b+c+d==30)s++; }

printf(\

}

<标准答案>34

下列程序用于计算各位数字之和等于30的4位数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,s=0;

for(i=1000;i<=9999;i++) {

a=i/1000; b=_________; c=i0/10; d=i;

if(a+b+c+d==30)s++; }

printf(\}

<标准答案>84

下列程序用于计算各位数字之和等于28的4位数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,s=0;

for(i=1000;________;i++) {

a=i/1000; b=i/100; c=i0/10; d=i;

if(a+b+c+d==28)s++; }

printf(\}

<标准答案>165

下列程序用于计算各位数字之和等于28的4位偶数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,s=0;

for(i=1000;i<=9999;______) {

a=i/1000; b=i/100; c=i0/10;

d=i;

if(a+b+c+d==28)s++; }

printf(\}

<标准答案>70

下列程序用于计算各位数字之和等于32的4位数的最大值。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d;

for(i=9999;i>=1000;i--) {

a=i/1000; b=i/100; c=i0/10; d=i;

if(__________) { printf(\ break; } } }

<标准答案>9995

下面程序的功能是求1-100之间的能被9除余8的数之和。请将程序填写完整。算出结果填入文本框。 main() {

int n, sum=0;

for(n=1;n<=100;n++) {

if(__________) sum=sum+n; }

printf(\}

<标准答案>583

下面的程序段功能是统计100-999之间所有满足三个数字之积为24,三个数字之和为12的数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int x,y,z,count=0; for(x=1;x<=9;x++)

for(y=0;y<=9;y++) for(z=0;z<=9;z++) {if(__________) count++; }

printf(\}

<标准答案>6 鸡兔共有30只,脚共有90只,下面的程序段是计算兔子最少有多少只。请将程序填写完整。算出结果填入文本框。(注:x代表兔子,y代表鸡) main() {

int x,y;

for(x=1;x<=30;x++) {y=30-x;

if(__________){printf(\} }

<标准答案>15

求4*(1-1/3+1/5-1/7+…)的值,直到最后一项的绝对值小于10的负6次方为止。请将程序填写完整。算出结果填入文本框。 #include\main( ) {

int s=1;

float n=1.0,t=1,pi=0; while(fabs(t)>=1e-6) {

pi=__________; n=n+2;

s=__________; t=s/n; }

printf(\}

<标准答案>3.141594

下面的程序段功能是求满足方程:x*x+y*y+z*z=88*88 (注:要求x>y>z)的方程的整数解的个数(包括负整数)。请将程序填写完整。算出结果填入文本框。

#include \#include \main()

{

int x,y,z,count=0;

for(x=-88;x<=88;x++) for(y=-88;y

{if(x*x+y*y+z*z==88*88) __________; }

printf(\}

<标准答案>10

下面的程序段功能是统计100-999之间所有满足三个数字之积为24,三个数字之和为12的数的个数,请补充程序并将运行结果填空: main() {

int x,y,z,count=0; for(x=1;x<=9;x++) for(y=0;y<=9;y++) for(z=0;z<=9;z++) {if(_____________) count++; }

printf(\}

<标准答案>10

已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[1,100]之间第15个能被其因子数目整除的正整数。 #include main()

{ int i,n=0,t,j; for(i=1;i<=100;i++) { t=0; for(j=1;j<=i;j++) if(i%j==0) t++; if(___i%t==0____) n++; if(n==15) break; } printf(\}

<标准答案>88

已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[200,300]

之间第8个能被其因子数目整除的正整数。 #include main()

{ int i,n=0,t,j; for(i=200;i<=300;i++) { t=0; for(j=1;j<=i;j++) if(i%j==0) t++; if(__i%t==0____)

n++; if(n==8) break; } printf(\}

<标准答案>276

下列程序用于计算各位数字之和等于32的4位数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,n=0;

for(i=9999;i>=1000;i--) {

a=i/1000; b=______; c=i0/10; d=i; if(______) n++; }

printf(\ }

<标准答案>35

下列程序用于计算各位数字之和等于24的4位数的个数。请将程序填写完整。算出结果填入文本框。 main() {

int i,a,b,c,d,n=0;

for(i=9999;i>=1000;i--) {

a=i/1000; b=i/100; c=_________;

d=i; if( ) n++; }

printf(\ }

<标准答案>405

下面程序的功能是输出1到100之间每位数的乘积大于每位数的和的数之和。例如数字26,各位数字的乘积12大于数字之和8。 main()

{ int n,k,s,m,sum=0; for(n=1;n<=100;n++) { k=1; s=0;

_m=n______;

while(___m>10__) { k*=m; s+=m; m=m/10; }

if(k>s)

sum=sum+n; }

printf(\ }

<标准答案>3850

下面程序的功能是输出1到100之间每位数的乘积小于每位数的和的数之和。例如数字21,各位数字的乘积2小于数字之和3。 main()

{ int n,k,s,m,sum=0; for(n=1;n<=100;n++) { k=1; s=0;

__m=n_____; while(m!=0) { k*=m; s+=m;

__m=m/10______; }

if(k

sum=sum+n; }

printf(\

}

<标准答案>1133

下面程序的功能是输出50到200之间每位数的乘积大于每位数的和的数之和。 main()

{ int n,k,s,m,sum=0; for(n=50;n<=200;n++) { k=1; s=0;

_______; while(m!=0) { k*=m; s+=m; ________; }

if(k>s)

sum=sum+n; }

printf(\ }

<标准答案>12915

本文来源:https://www.bwwdw.com/article/gwf.html

Top