scanf(\ p->next='\\0'; return(ph); } main()
{ struct list *head; head=creatlist();}
4. 设有以下程序: main()
{ int a, b, k=4, m=6, *p1=&k, *p2=&m; a=pl==&m; b=(*p1)/(*p2)+7; printf(\printf(\}
执行该程序后,a的值为_________,b的值为__________。
5. 以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中的值在main函数中读入。 #include
{ int t; if(i for(i=0;i for(i=0;i 五、编程题(本题共2道小题,共20分。) 1. 计算1-1/2+1/3-1/4-...+1/99-1/100的值,并显示出来。 2. 从键盘输入一个5*5整型数组赋值,找出其中的最小值并显示出来。 江苏省C等级考试(五) 一、选择题(本题共20道小题,共40分。) 1. C 36 2. C 3. D 4. D 5. D 6. B 7. D 8. B 9. D 10. C 11. A 12. B 13. C 14. A 15. B 16. C 17. C 18. B 19. C 20. C 二、填空题(每空1分,共10分。) 1. 0 , 数据类型 2. 1 ,2 ,4 ,4 3. 函数 ,main() ,函数 4. a+i或*(a+i) 三、判断题(本题共10道小题,共10分。) 1. 错 2. 对 3. 对 4. 错 5. 对 6. 对 7. 错 8. 对 9. 错 10. 对 四、程序填空(本题共5道小题,每题4分,共20分。)1. (c=getchar()) , +65 或 +'A' 2. I , return 1 或 return (1) 3. struct list * , q 37 4. 0 , 7 5. i+1 , i 五、编程题(本题共2道小题,共20分。) 1. #include \ main() { int c,s; float ch; ch=0; for (c=1;c<100;c++) {if(c%2==0) s=-1; else s=1; ch+=s*(1/(float)c); } printf(\} 2. #include \ main() { int i=0,j=0,Max=0; int but[5][5]; for(i=0;i<5;i++) for(j=0;j<5;j++) scanf(\scanf(\Max=but[0][0]; for(i=0;i<5;i++) for(j=0;j<5;j++) if (Max>but[i][j]) Max=but[i][j]; printf(\最小值是%d\} 江苏省二级C语言考试一、选择题(本题共20道小题,共40分。) 1. 有下列程序 #include 38 { union { int k; char i[2]; }*s,a; s=&a; s->i[0]=0x39;s->i[1]=0x38; printf(\} 输出结果是 A)3839 B)3938 C)380039 D)390038 2. 设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值:scanf(\ 为了把100和765.12分别赋给i和f,则正确的输入为 A)100<空格>765.12<回车> B)i=100,f=765.12<回车> C)100<回车>765.12<回车> D)x=100<回车>,y=765.12<回车> 3. 设已有定义: char *st=\下列程序段中正确的是 A) char a[11], *p; strcpy(p=a+1,&st[4]); B) char a[11]; strcpy(++a, st); C) char a[11]; strcpy(a, st); D) char a[], *p; strcpy(p=&a[1],st+2); 4. 设j为int型变量,则下面for循环语句的执行结果是 for(j=10;j>3;j--) { if(j%3)j--; --j;--j; printf(\} A)6 3 B)7 4 C)6 2 D)7 3 5. 以下程序的输出结果是 main() { int i,k,a[10],p[3]: K=5; for (i=0;i<10;i++) a[i]=i; for (i=0;i<3;i++) p[i]=a[i*(i+1)]; 39 for (i=0;i<3;i++) k=p[i]*2; printf(\} A)20 B)21 C)22 D)23 6. 若有以下说明: int w[3][4]o={{0,1},{2,4},{5,8}}; int(*p)[4]=w; 则数值为4的表达式是 A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1] 7. 若k是int型变量,且有下面的程序片段: k=-3 if(k<=0) printf(\else printf(\上面程序片段的输出结果是 A) #### B) &&&& C) ####&&&& D) 有语法错误,无输出结果 8. 以下程序运行后,输出结果是 main( ) { int y=18,i=0,j,a[8]; do { a[i]=y%2;i++; y=y\\2; } while(y>1=1); for(j=i-1;j>=0;j--) printf(\,a[j]); printf(\} A)10000 B)10010 C)00110 D)10100 9. 以下叙述中不正确的是 A)在不同的函数中可以使用相同名字的变量 B)函数中的形式参数是局部变量 C)在一个函数内定义的变量只在本函数范围内有效 D)在一个函数内的复合语句中定义的变量 10. 请读程序: #include 40