发布时间 : 星期日 文章C语言练习材料(2014)及选择题解答更新完毕开始阅读
C语言补充材料(2014.6)
a[i]=a[i]+32; for(i=0; i<5; i++)
printf(”<”, a[i]); A) A B C D E B)A b C d E C)a b c d e D)a B c D e
53、以下程序段执行后sum的值是( )。 int i, sum=0;
int a[3][5]={11,12,13,14,15,16,17,18,19,20, 22,24,26,28,31}; for(i=0; i<3; i++) sum+=a[i][i+2];
A)58 B)63 C)61 D)60
54. 若已定义:
char sa[20]={“dictionary”}, sb[20]; 则( )语句是正确的。 A)sb[0]=sa[0] B) sb[ ]=sa[ ];
C)printf(“%d”, sa[ ]); D)scanf(“%s “, &sb[ ]);
55、以下程序段的运行结果是( )。 char
a[5][3]={??Y?,?o?,?u?,?a?,?r?,?e?,?\\0?,?w?,?e?,?l?,?c?,?o?,?m?,?e?};
printf(“%s”,&a[0][0]);
A)You B)You are C)You are welcome D)You are wel
四、函数
56. puts(char *str)函数的功能是向终端输出( )。
A) str指向的第一个字符 B) str指向的字符串 C) 一个整数变量的值 D) 一个实型变量的值
57. 以下语句中fun( )函数所含的实参个数有( )个。 fun((1,2,3),(4,5),(6, 7+8)); A)7 B)5 C)3 D)8
58. 以下程序段的运行结果是( )。
char a[ ]=“Teacher”;
char b[ ]=”Driver”; strcpy(a,b);
printf(”%s %c”, a, a[5]);
A)Teacher r B)Driver e C)Teacher e D) Driver r
59. 以下程序段的运行结果是( )。 char s[80]={“super”}; strcat(s, “market”); printf(“%d”, strlen(s));
A)9 B)12 C)10 D)11
60.以下程序段的运行结果是() int x=5 ;
char *s1 = “music”,*s2=s1; x=strcmp(s1,s2); printf(“%d\\n”,x);
A) -1 B) 5 C)0 D)1
61. 以下程序的运行结果是( )。 #include
printf(“%d ”, a); }
void main( ) { int a=3, b=6; fun(b);
printf(“%d ”, a); }
A)7 3 B)3 7 C)3 3 D)7 7
62. 以下程序的运行结果是 () #include
for (i=0;i<3;i++)
printf (“-”,a [i][0]); printf (“\\n”); }
void main () {
int a [3][3]={1,2,3,1,3,2,2,1,3};
f (a) ;
5
}
A 1 2 3 B 2 3 1 C 1 1 2 D 3 2 3
63. 以下程序的运行结果是( )。 #include
void main( )
{ int a=11, b=2, c; c=fun(a,b);
printf(“c=%d\\n”, c); }
A)c=32 B)22 C)c=22 D)32
64. 以下程序的运行结果是( )。 #include
{ static int y=2; y=y+x; return(y); }
void main( ) { int i, s=0;
for(i=1;i<=2; i++)
s=s+fun(2); printf(”%d\\n”,s); }
A)10 B)6 C)4 D)8
65. 下列叙述错误的是( )。
A)宏定义中的符号常量(宏名)可以用小写字母表示
B)宏定义中的符号常量(宏名)只能用大写字母或数字字符
C)编译预处理命令行都必须以“#”开始 D)文件包含使用预处理命令“#include <文件名>”来实现
66. 下列叙述正确的是( )。 A) 可以使用命令define定义变量
B) 为区别语句结束符,编译预处理命令行必
须以逗号结束
C) 符号常量必须用大写字母表示 D) define是宏定义命令
67. 下列正确定义符号常量的命令是( )。 A)#define PR=3.3; B)#define PR 3.3 C)#define PR 3.3; D)#define PR=3.3
68. C源程序中, 预处理命令的位置可以在( )。
A) printf( )函数中 B) putchar( )函数中 C) scanf( )函数中 D) 文件首部
69. 下列叙述错误的是()
A) 预处理命令行都必须以“#“号开始。 B) 在预处理命令行 #define WT 5 中,符号变量(宏名)是WT
C) #include “math.h”属于预处理命令
D) 预处理命令只能位于C源程序文件的首部
五、指针
70. 若已定义:int *p1, *p2; 无意义的运算是( )。
A)p1-p2 B)p1>p2 C)p1+p2 D)p1 71. 若已定义:int a=3, *p; 执行语句p=&a; 后下列( )均能表示a的地址。 A)*p, &a B)*p, a C)p, a D)p, &a 72. 以下程序段的运行结果是( ) int a=5, b=2, c, *p1, *p2; p1=&a; p2=&b; if(*p1<*p2) c=*p1+2; else c=*p2+4; printf(“%d\\n”, c); A)9 B)4 C)7 D)6 73. 以下程序段的运行结果是( ) int a=6, b=3, m,n,p,q; 6 C语言补充材料(2014.6) p=&a; q=&b; m=(*p)/(*q)+8; n=(*p)+(*q)*8; printf(“m=%d, n=%d\\n”, m,n); A)m=8, n=80 B)m=10, n=30 C)m=10, n=8 D)m=8, n=30 74. 以下程序段的运行结果是( )。 int a[ ]={1,2,3,4,5,6,7,8,9,10}, i; int *p; p=a; for(i=0; i<10; i++, i++) printf(“”=”, *(p+i)); printf(“\\n”); } A)2 4 6 8 10 B)6 7 8 9 10 C)1 2 3 4 5 D)1 3 5 7 9 75. 以下程序段的运行结果是( )。 int a=1, b=2, sum, *p, *q; p=&a; q=&b; sum=*p+*q; a=*q; printf(“%d, %d\\n”, a, sum); A)2, 4 B)1, 4 C)2, 3 D)1, 3 76、以下程序段的运行结果是( )。 int a[6]={1,2,3,4,5,6}; int *p; p=a; *(p+3)+=3; printf(”=, =\\n”,*p, *(p+3)); A)1,4 B)4, 4 C)1,7 D)7,7 77. 若已定义: char a[ ]=”student”,*p=a; 能正确指向存放字符?u?单元的表达式是( )。 A)p+s B)*(p+2) C)*(a+s) D)a+2