C语言复习资料(8)

2019-04-14 17:34

数学科学学院C语言复习资料

1、下列程序是输入三角形的三边长(设为整数),判断是否能构成三角形?能构成等腰三角形?若不能构成三角形,则输出0;若能构成三角形,则输出1;若能构成等腰三角形,则再输出2;请填写程序中缺少的内容。 main() {int a,b,c;

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

if ((a+b<=c)||(a+c<=b))||(b+c<=a)) printf(“0\\n”); else

{ printf(“1\\n”);

if ( ) printf(“2\\n”); } }

2、下列程序的主要功能是输出下列图形,请填写程序中缺少的内容 ** **** ****** ******** main() {int i,j;

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

{for(j=1;j<= ;j++) printf(“%c”,? ?); for(j=1; ;j++) printf(“%c%c”,?*?,?*?); printf(“\\n”); } }

3、下列程序的主要功能是输入一个正整数,统计并输出其所有的因子(不含1,但包含重复因子),填写缺少的内容。 main() {int x,p=2;

do scanf(“%d”,&x); while (x<=0); while (x!=1)

{if ( ) {printf(“%d\\n”,p);

36

数学科学学院C语言复习资料

x=x/p;

} p++; }

}

4、下列程序可求出矩阵a的两条对角线之和,请填空。 main()

{int a[3][3]={1,3,6,7,9,11,14,15,17},sum1=0,sum2=0,i,j; for(i=0;i<3;i++) for(j=0;j<3;j++)

if (i= =j) sum1=sum1+a[i][j]; for(i=0;i<3;i++)

for( ; ;j--) if (i+j= =2) sum2=sum2+a[i][j]; printf(“sum1=%d,sum2=%d\\n”,sum1,sum2); }

5、以下程序的功能是求数组num中小于0的数据之和,请填空。 main()

{int num[20]={10,20,1,-20,203,-21,2,-2,-2,11,-21,22,12,-2,-234,-90,22, 90,-45,20} int sum=0,i;

for(i=0;i<=19;i++)

if ( ) sum= ; printf(“sum=m”,sum); }

6、下面程序可将十进制整数转换为n进制,请填空。 main()

{int i=0,base,n,j,num[20];

printf(“Enter data that will be converted \\n ”); scanf(“%d”,&n);

printf(“Enter base\\n”); scanf(“%d”,&base);

37

数学科学学院C语言复习资料

do {i++;

num[i]=n base; n=n base; } while (n!=0);

printf(“The data %d has been converted into the %d—base data:\\n ”,n,base); for ( ) printf(“%d”,num[j]); }

7、下列程序将输出computer,请填空。 main() {int i,j=0;

char c[]=”it?s a computer”; for(i=0; ;i++) { ;printf(“%c”,c[j]);} } 8、输入一行字符, 统计其中英文字母, 空格, 数字和其它字符的个数. 其程序如下:

#include main() {

char c;

___________________________________________ printf(\ while((c = getchar()) != '\\n') {

if(c >= 'a' && c <= 'z' || c >= 'A' && c < 'Z') letter++; else if(c == ' ') space++;

else if(c >= '0' && c <= '9') digit++; else other++;

38

数学科学学院C语言复习资料

}

printf(\= %d, Spaces = %d, Digits = %d, Others = %d\\n\letter, space, digit, other); }

9、求出所有“水仙花数”。所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。其程序如下: #include main() {

int i, j, k, n;

printf(\水仙花数' 是: \ for(n = 100; n < 1000; n++) {

i = n/100;

_____________ k = n;

if(n == i*i*i + j*j*j + k*k*k) printf(\ }

printf(\}

10、求一分数序列前50项之和。该分数序列为

21,,,,...,325385FnFn?1,...

,其中Fn为Fibonacci数。其程序如下: #include main() {

int i, t, n = 50;

double a = 2, b = 1, s =0; for(i = 1; i <= n; i++) {

s = s + a/b; t = a;

39

数学科学学院C语言复习资料

a = a + b; __________ }

printf(\}

11、以下程序中的函数fun是计算 S=1+1/2!+1/3!+…+1/n! 请填空。 main()

{int a;double sum=0.0; double fun(int); scanf(\sum=fun(a);

printf(\}

double fun(int n)

{double s=0.0,fac=1.0;int i; for(i=1;i<=n;i++) {fac=fac ; s=s+fac; }

return s; }

12、下面程序的作用是将以下给出的字符按其格式读入数组ss中,然后输出行、列号之和为3的数组元素,请在____处填入正确内容。 A a f c B d e b c g f D main() {

static char ss[4][3]={'A','a','f','c','B','d','e','b','C','g','f','D'}; int x,y,z;

for(x=0; 【1】 ;x++) for(y=0; 【2】 ;y++)

40


C语言复习资料(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:五(上)品社教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: