C语言程序设计
一、
单项选择题1、 在VC 6.0环境中用RUN命令运行一个C程序时,实际所运行的程序的
后缀是:
A) .CPP B) .C C) .OBJ D) .EXE
2、 结构化程序设计所规定的三种基本控制结构是
A) 输入、处理、输出 B) 树形、网形、环形 C) 顺序、选择、循环 D) 主程序、子程序、函数 3、 以下正确的整型常量是:
A) 16. B) -26 C) 1,000 D) 3 5 7
4、 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符
常量‘\\101’是
A) 字符A B)字符a C)字符e D)非法的常量 5、 以下有4组用户标识符,其中合法的一组是
A) For B) 4d C) f2_G3 D) WORD
-sub DO ELSE void Case Size abc define 6、以下非法的赋值语句是
A) n=(i=2,++i); B)j++; C) ++(i+1);
D)x=j>0;
7、C语言中运算对象必须是整型的运算符是: A) % B) / C) ! D) **
8、设 a、b、c、d、m、n均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达
式 (m=a>b)&&(n=c>d)运算后,n的值位为
A) 0 B) 1 C)2 D) 3
9、 C语言中,字符(Char)型数据在微机内存中的存储形式是: A) 反码 B) 补码 C) EBCDIG 码 D) ASCII码 10、 以下叙述正确的是:
A) C语言总是从第一个定义的函数开始执行
B) 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行
1
D) C语言程序中的main()函数必须放在程序的开始部分
11、若已定义int型的三个量a、b、c,则以下正确的输入语句是: A) read(a,b,c); B) scanf(\C) scanf(\; 12、以下叙述中正确的是
A) C程序中注释部分可以出现在程序中任意合适的地方 B) 花括号“{”和“}”只能作为函数体的定界符
C) 构成C程序的基本单位是函数,所有函数名都可以由用户命名 D) 分号是C语句之间的分隔符,不是语句的一部分 13、以下数组定义中不正确的是 A) int a[2][3];
B) int b[][3]={0,1,2,3}; C) int c[100][100]={0};
D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}}; 14、有以下程序
fun(int x, int y, int z) { z=x*x+y*y; } main()
{ int a=31; fun(5,2,a);
printf(“%d”,a); } 程序运行后的输出结果是 A) 0 B) 29
C) 31 D) 无定值
15、有以下程序 main()
{ char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf(“%d”,*--p); }
程序运行后的输出结果是
A) 非法 B)a[4]的地址 C)5 D)3 16、有以下程序
#define M(x,y,z) x*y+z main()
{ int a=1,b=2, c=3;
printf(“%d\\n”, M(a+b,b+c, c+a)); } 程序运行后的输出结果是
A) 19 B) 17 C) 15 D) 12
17、 有以下程序 main()
{ int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a
printf(\程序运行后的输出结果是
A) 0,0 B) 0,1 C) 1,0 D) 1,1 18、有以下程序 main()
{ int a=3,b=4,c=5,d=2; if(a>b) if(b>c)
printf(\ else
printf(\ printf(\程序运行后的输出结果是
A) 2 B) 3 C) 43 D) 44
3xn19、与数学式子2x?1对应的C语言表达式是 A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)
C) 3*pow(x,n)*(1/(2*x-1))
D) 3*pow(n,x)/(2*x-1)
20、若变量c为char类型,能正确判断出c为小写字母的表达式是 A) ‘a’<=c<= ‘z’ B) (c>= ‘a’)||(c<= ‘z’) C) (‘a’<=c)and (‘z’>=c) D) (c>= ‘a’)&&(c<= ‘z’)
21、有以下程序 main()
{ char a[ ]={‘a’,‘b’,‘c’,‘d’, ‘e’, ‘f’, ‘g’,‘h’,‘\\0’}; int i,j;
i=sizeof(a); j=strlen(a);
printf(“%d,%d\\b”i,j); } 程序运行后的输出结果是
A)9,9 B)8,9 C)1,8 D)9,8
22、有以下程序
#include
{ char *p=“abcde\\Ofghjik\\0”; 二、填空题 printf(“%d\\n”,strlen(p)); }
程序运行后的输出结果是
A) 12 B) 15 C) 6 D) 5 23、 以下叙述中不正确的是
A)C语言中的文本文件以ASCⅡ码形式存储数据 B)C语言中对二进制文件的访问速度比文本文件快 C)C语言中,随机读写方式不适用于文本文件 D)C语言中,顺序读写方式不适用于二进制文件
24、设有如下定义: struck sk { int a; float b; }data; int *p;
若要使P指向data中的a域,正确的赋值语句是
A) p=&a; B) p=data.a; C) p=&data.a; D) *p=data.a;
25、有以下程序 main()
{ char *s[]={\ p=s[1];
printf(\执行后输出结果是
A) n,two B) t,one C)w,one
D) o,two
26、以下选项中,与k=n++完全等价的表达式是
A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1 27、有如下程序 main()
{ int i,sum;
for(i=1;i<=3;sum++) sum+=i; printf(“%d\\n”,sum); } 该程序的执行结果是
2
A) 6 B) 3 C) 死循环 D) 0 28、有以下程序 main()
{ int i;
for(i=0;i<3;i++) switch(i)
{ case 1: printf(\ case 2: printf(\ default: printf(\ } }
执行后输出结果是
A) 011122 B) 012 C) 012020 D) 120
29、 有如下程序 main()
{ int x=23; do
{ printf(“%d”,x--);} while(!x); } 执行后输出结果是
A) 321 B) 23 C) 不输出任何内容 D) 陷入死循环30、若有定义:int x,*px; 则正确的赋值表达式是: A) px=&x B) px=x C) *px=&x D) *px=*x 1、以下程序段的输出结果是 _______ 。 int i=11;
printf(\
2、执行以下程序后,输出‘#’号的个数是 ___________ 。 #include
{ int i,j;
for(i=1; i<5; i++)
for(j=2; j<=i; j++) putchar('#'); }
3、以下程序运行后的输出结果是 ________________ 。 main()
{ int a,b,c; a=26; b=026; c=0x26;
printf(\
4、 以下程序运行后的输出结果是____________ 。 main()
{ int a=1, b=3, c=5;
if (c=a+b) printf(\else printf(\
5、 以下程序运行后的输出结果是 __________ 。 fun(int x)
{ if (x/2>0) fun(x/2); printf(\main()
{ fun (6); }
6、以下程序运行后的输出结果是 _______ 。 main()
{ int x=1,y=0,a=0,b=0; switch(x)
{case 1:switch(y)
{ case 0:a++; break; case 1:b++; break; }
case 2:a++;b++; break; }
printf(\}
7、以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,
输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。 #include
{ char s[80], d[80]; int i, j; gets(s);
3
for(i=j=0; s[i]!=‘\\0’; i++)
if( _______________ ) { d[j]=s[i]; j++;} d[j]=‘\\0’; puts(d); }
8、以下程序运行后的输出结果是 ___________ 。 main()
{ char a[]=\ p=a;
while(*p)
{ if(i%2==0) *p='*'; p++;i++; }
puts(a); }
9、 若有定义:double w[10];
则w数组元素下标的上限是 。 10、若有以下程序 main()
{ char a;
a='K'-'H'+'0';
print(\执行后的输出结果是_____ 。
三、编程题
1、请编写程序实现如下功能:用户从键盘输入一个整数,系统自动判断该数是否为素数,并给
出判断的结果。
2、请编写程序实现如下功能:定义一个2行3列的整型二维数组(初始值任意给定),将该数
组的行列元素互换,结果存放到新的3行2列的数组中。
4
5
相关推荐: