分源程序给出如下。请勿改动主函数main和其
它函数中的任何内容,仅在函数fun的花括号中填
入所编写的若干语句。
------------------------------------------------*/
#include "stdio.h"
int fun(int n)
{/**********Program**********/
int gw,sw,bw ,qw,sum;
qw=n/1000;
bw=(n%1000)/100;
sw=(n%100)/10;
gw=n%10;
sum=gw*gw*gw+sw*sw*sw+bw*bw*bw+qw*qw*qw;
return(sum);
/********** End **********/}
main()
{int k;
k=fun(1234);
printf("k=%d\n",k);}
如果一个字符串,其中第十个字符为\n,则此字符的有效字符为9个。N
函数strlen("ASDFG\n")的值是7N
4. double x;scanf("%lf",&x);不可以赋值给x变量的常量是(D).
(A).123
(B).100000
(C).'A'
(D)."abc"
3用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是(C).
long a=0xffffff;
int b; char c;
(A).0ffffff 和0x61
(B).-1和98
(C).-1和97
(D).指向同一地址
5.语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是
(说明:'\b'是退格符)(c).
(A).a\bre\'hi\'y\\\bou
(B).a\bre\'hi\'y\bou
(C).re'hi'you
(D).abre'hi'y\bou
6.以下程序段的执行结果是(C).
double x;x=218.82631; printf("%-6.2f\n",x);
(A).输出格式描述符的域宽不够,不能输出
(B).输出为21.38e+01
(C).输出为218.83
(D).输出为218.82631
10.在以下给出的表达式中,与 do--while(E)语句中的(E)不等价的
表达式是(C).
(A).(!E==0)
(B).(E>0||E<0)
(C).(E==0)
(D).(E!=0)
11.若i为整型变量,则以下循环执行次数是(B).
for(i=2;i==0;) printf("%d",i--);
(A).无限次
(B).0次
(C).1次
(D).2次
12.设j和k都是int类型,则for循环语句
for(j=0,k=0;j<=9&&k!=876;j++) scanf("%d",&k);(A).
(A).最多执行10次
(B).最多执行9次
(C).是无限循环
(D).循环体一次也不执行
14.char a[]="This is a program.";输出前5个字符的语句是(A).
(A).printf("%.5s",a);
(B).puts(a);
(C).printf("%s",a);
(D).a[5*2]=0;puts(a);
17.以下错误的描述是:函数调用可以(D).
(A).出现在执行语句中
(B).出现在一个表达式中
(C).做为一个函数的实参
(D).做为一个函数的形参
18.以下正确的描述是:在C语言程序中(B).
(A).函数的定义可以嵌套,但函数的调用不可以嵌套
(B).函数的定义不可以嵌套,但函数的调用可以嵌套
(C).函数的定义和函数的调用均不可以嵌套
(D).函数的定义和函数的调用均可以嵌套
19.以下程序的输出结果为(B).
main()
{int a=1,b=2,c=3,d=4,e=5;
printf("%d\n",func((a+b,b+c,c+a),(d+e)));
}
int func(int x,int y)
{
return(x+y);
}
(A).15
(B).13
(C).9
(D).函数调用出错
20.以下对C语言函数的描述中,正确的是(A).
(A).C程序必须由一个或一个以上的函数组成
(B).C函数既可以嵌套定义又可以递归调用
(C).函数必须有返回值,否则不能使用函数