答案
答案
答案
答案
16.若变量a,i已正确定义,且i已正确赋值,合法的语句是 A)a==1 B)++i; C)a=a++=5; D)a=int(i);
A B C D
17.已知 int t=0; while (t=1) {...} 则以下叙述正确的是 A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法 D)以上说法都不对
A B C D
18.有如下程序 main() { int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2: a++;b++; } printf("a=%d,b=%d\n",a,b); } 该程序的输出结果是 A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2
A B C D
19.有以下程序 main() { int i=1,j=1,k=2; if((j++||k++)&& i++) printf("%d,%d,%d\n",i,j,k); } 执行后输出结果是 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3
A B C D
20.有如下程序 main() { int n=9; while(n>6){n--; printf("%d",n);} } 该程序的输出结果是 A)987 B)876 C)8765 D)9876
A B C D
答案
21.在下列选项中,没有构成死循环的是 A)int i=100; while(1) { i=i0+1; if(i>100)break; } B)for(;;); C)int k=10000; do{ k++; }while(k>10000); D)int s=36; while(s)--s;
A B C D
22.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是 A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参
A B C D
23.有以下程序 float fun(int x,int y) { return(x+y);} main() { int a=2,b=5,c=8; printf("%3.0f\n",fun((int)fun(a+c,b),a-c)); } 程序运行后的输出结果是 A)编译出错 B)9 C)21 D)9.0
A B C D
24.若有以下调用语句,则不正确的fun函数的首部是 main() { … int a[50],n; … fun(n, &a[9]); … } A)void fun(int m, int x[]) B)void fun(int s, int h[41]) C)void fun(int p, int *s) D)void fun(int n, int a)
A B C D
25.设有以下说明语句 struct stu { int a; float b; } stutype; 则下面的叙述不正确的是 A)struct是结构体类型的关键字 B)struct stu是用户定义的结构体类型 C)stutype是用户定义的结构体类型名 D)a和b都是结构体成员名
A B C D
26.若运行时给变量x输入12,则以下程序的运行结果是 main() { int x,y; scanf("%d",&x); y=x>12?x+10:x-12; printf("%d\n",y); } A)0 B)22 C)12 D)10
A B C D
27.以下说法正确的是 A)C语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分
A B C D
28.有以下程序 #define F(X,Y)(X)*(Y) main() { int a=3, b=4; printf("%d\n", F(a++, b++)); } 程序运行后的输出结果是 A)12 B)15 C)16 D)20
A B C D
29.下列程序执行后的输出结果是 void func(int *a,int b[]) { b[0]=*a+6; } main() { int a,b[5]={0}; a=0; b[0]=3; func(&a,b); printf("%d\n",b[0]); } A)6 B)7 C)8 D)9
A B C D
30.若有下面的程序段 char s[]="china";char *p; p=s; 则下列叙述正确的是 A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等 C)s数组长度和p所指向的字符串长度相等 D)*p与s[0]相等
A B C D
答案
31.以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序 void sort(int a[],int n) { int i,j,t; for(i=0;ifor(j=i+1;jif(a[i]} main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(&aa[3],5); for(i=0;i<10;i++)printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1, C)1,2,3,8,7,6,5,4,9,10, D)1,2,10,9,8,7,6,5,4,3,
A B C D
32.以下程序的运行结果是 #include "stdio.h" main() { struct date { int year,month,day;}today; printf("%d\n",sizeof(struct date)); } A)6 B)8 C)10 D)12
A B C D
33.若执行下述程序时,若从键盘输入6和8时,结果为 main() { int a,b,s; scanf("%d%d",&a,&b); s=a; if(as=b; s*=s; printf("%d",s); } A)36 B)64 C)48 D)以上都不对
A B C D
34.下列关于C语言数据文件的叙述中正确的是 A)文件由ASCII码字符序列组成,C语言只能读写文本文件 B)文件由二进制数据序列组成,C语言只能读写二进制文件 C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
A B C D
35.有以下程序 void ss(char *s,char t) { while(*s) { if(*s==t)*s=t-′a′+′A′; s++; } } main() { char str1[100]="abcddfefdbd",c=′d′; ss(str1,c); printf("%s\n",str1); } 程序运行后的输出结果是 A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd
A B C D
答案
答案
6.下列程序的输出结果是 【6】 。 maim () { char b[]="Hello you"; b[5]=0; printf ("%s\n",b); }
输入答案,中间不含空格:
7.以下程序的输出结果是 【7】 。 main() { int a=0; a+=(a=8); printf("%d\n",a); }
输入答案,中间不含空格:
8.函数 void fun(float *sn, int n)的功能是根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。 void fun( float *sn, int n) { float s=0.0, w, f=-1.0; int i=0; for(i=0; i<=n; i++) { f= 【8】 * f; w=f/(2*i+1); s+=w; } 【9】=s; }
输入答案,中间不含空格:
9.函数fun的功能是根据以下公式求p的值,结果由函数值返回。m与n为两个正数且要求m>n。 例如:m=12,n=8时,运行结果应该是495.000000。请在题目的空白处填写适当的程序语句,将该程序补充完整。 #include #include float fun (int m, int n) { int i; double p=1.0; for(i=1;i<=m;i++) 【10】 ; for(i=1;i<=n;i++) 【11】 ; for(i=1;i<=m-n;i++)p=p/i; return p; } main () { clrscr(); printf ("p=%f\n",fun (12,8)); }
输入答案,中间不含空格:
10.该程序运行的结果是 【12】 。 #include #include #define M 100 void fun(int m, int *a, int *n) { int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i==0) a[j++]=i; *n=j; } main() { int aa[M],n,k; clrscr(); fun(10,aa,&n); for(k=0;k if((k+1) ==0)printf("\n"); else printf("M",aa[k]); printf("\n"); }
输入答案,中间不含空格:
答案
11.下列程序的功能是求出ss所指字符串中指定字符的个数,并返回此值。 例如,若输入字符串123412132,输入字符1,则输出3,请填空。 #include #include #define M 81 int fun(char *ss, char c) { int i=0; for(; 【13】 ;ss++) if(*ss==c)i++; return i; } main() { char a[M], ch; clrscr(); printf("\nPlease enter a string: "); gets(a); printf("\nPlease enter a char: "); ch=getchar(); printf("\nThe number of the char is: %d\n", fun(a,ch)); }
输入答案,中间不含空格:
12.下面程序把从终端读入的文本(用@作为文本结束标志)输出到一个名为bi.dat的新文件中,请填空。 #include "stdio.h" FILE *fp; { char ch; if((fp=fopen( 【14】 ))==NULL)exit(0); while((ch=getchar( ))!=′@′)fputc (ch,fp); fclose(fp); }
输入答案,中间不含空格:
13.设有如下宏定义 #define MYSWAP(z,x,y) {z=x;x=y;y=z;} 以下程序段通过宏调用实现变量a,b内容交换,请填空。 float a=5,b=16,c; MYSWAP( 【15】 ,a,b);
输入答案,中间不含空格: