江苏省计算机等级考试 - 学年 第学期 c程序设计试卷 ( )题号一二三四五六七八九总 分得分一、选择题(本题共20 道小题,共40 分。)1. 若有说明, double *p,a; 则能通过 scanf 语句正确给输入项读入数据的程序段是A)*p=&a; scanf("%lf",p); B)p=(double*)malloc(8);scanf("%f",p); C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p); 2. 两次运行下面的程序,如果从键盘上分别输入6 和 4,则输出结果是main( ) { int x; scanf("%d",&x); if(x + + >5) printf("%d",x); else printf("%d\n",x - -); } A) 7 和 5 B) 6 和 3 C) 7 和 4 D) 6 和 4 3. 下面程序的输出是A) xyzabcABC B) zabcABC C) yzabcABC D) xyabcABC #include #include main() { char *p1="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n", str);} 4. 若有以下说明 : int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g; 则数值为 4 的表达式是A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c] 5. 以下叙述中不正确的是A)在不同的函数中可以使用相同名字的变量B)函数中的形式参数是局部变量C)在一个函数内定义的变量只在本函数范围内有效D)在一个函数内的复合语句中定义的变量6. 请选出以下程序段的输出结果#include #define MIN(x,y) (x)<(y)? (x):(y) main() { int i,j,k; i=10; j=15; k=10*MIN(i,j); printf("%d\n",k); } A) 15 B) 100 C) 10 D)150 7. 在 C 程序中 ,可把整型数以二进制形式存放到文件中的函数是A) fprintf函数B) fread 函数C) fwrite 函数D) fputc 函数8. 设有以下语句:struct st {int n; struct st *next;}; static struct st a[3]={5,&a[1],7,&a[2],9,'\0'},*p; p=&a[0]; 则表达式 _____的值是 6。A)p + + ->n B) p->n + + C) (*p).n + + D) + + p->n 9. C 语言中形参的缺省存储类别是A)自动 (auto) B)静态 (static) C)寄存器 (register) D)外部 (extern) 10. 执行下面的程序段后,变量 k 中的值为int k=3, s[2]; s[0]=k; k=s[1]*10; A) 不定值B) 33 C) 30 D) 10 11. 已知字母 A 的 ASCII 码为十进制的65,下面程序的输出是main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d...