关于二的问题.docx
《关于二的问题.docx》由会员分享,可在线阅读,更多相关《关于二的问题.docx(11页珍藏版)》请在冰豆网上搜索。
关于二的问题
二、选择题(每题3分,共45分)
1.定义一个变量使之保存值的范围是0-65535,应该选择()类型。
A.unsignedshortintB.int
C.shortintD.longint
2.设x、y、z都是整型变量,x、y的初值都是5,执行z=(++x)+(y--)+1后,x、y、z三变量的值按顺序是()。
A.5,5,11B.6,6,13C.4,6,12D.6,4,12
3.下列字符中不属于转义字符的是()
A.\nB.\tC.\bD.\k
4.下列不正确的标识符是()
A._charB.a?
bC.xD.st2_flag
5.C语言的源程序()主函数
A.可以没有B.可以有多个
C.有且只有一个D.若有,只有一个
6.在内存中应该开辟()多少个字节来存放字符‘\n’.
A.1B.2C.3D.4
7.下面的()不是合法的c语言常量。
A.123B.‘M’C.0892D.“Flag”
8.下面()对变量的说明是错误的。
A.charc1,intx;B.inta,b;floatx,y;
C.inta;intb;D.charc1;intx;
9.有变量说明inta=3;,则表达式a<1&&--a>1的运算结果和a的值应该是()
A.0和2B.0和3C.1和2D.1和3
10.设intx=12;,则执行完语句a+=a-=a*a;后,a的值是()
A.552B.264C.-264D.144
11.c语言中,运算对象必须是整型数的运算符是()
A.%B./C.%和\D.%和/
12.以下关于break语句的描述,只有()是正确的。
A.在循环语句中必须使用break语句。
B.break语句只能用于switch语句中。
C.在循环语句中可以根据需要使用break语句。
D.break语句可以强制跳出所有循环。
13.下面的叙述中,不正确的是()
A.在main函数中说明的变量的作用域是整个程序。
B.全局变量在程序运行期间一直占用分配给它的存储单元。
C.形式参数是局部变量。
D.return()语句中括号内可以是常量、有确定值的变量或表达式。
14.定义函数时,默认的函数类型是()
A.autoB.registerC.staticD.extern
15.c语言中的函数()
A.可以嵌套定义B.嵌套调用和递归调用均可
C.不可以嵌套调用D.可以嵌套调用,但不可以递归调用
三、阅读下列程序,写出执行结果(每题5分,共15分)
1.#include
main()
{
intx,m,n,a,b;
m=n=a=b=8;
x=(m=a>b)&&(n=a>b);
printf(“x=%d,m=%d,n=%d\n”,x,m,n);
}
2.#include
main()
{
inta,b,c;
a=2;b=3;c=1;
if(a>b)
if(a>c)
printf(“%d\n”,a);
else
printf(“%d\n”,b);
printf(“end\n”);
}
3.#include
main()
{
ints=0,k;
for(k=7;k>=0;k--)
{
switch(k)
{
case1;
case4;
case7;
s++;
break;
case2;
case3;
case6;
Break;
case0;
case5;
s+=2;
break;
}
}
printf(“s=%d\n”,s)
}
四、程序设计题(每题10分,共20分)
1.整形数组a有五个元素,其值分别为:
1、2、3、4、5,移动该数组的数,使其变成2、3、4、5、1
2.用户从键盘输入一个字符串(字符中不包含空格),当输入回车时认为输入结束,统计输入字符串中小写英文字母、大写英文字母、数字字符、其他字符的个数
我来帮他解答
2008-6-1014:
12
满意回答
才30分……,觉得答得好多多加分!
你的鼓励是我努力的方向!
o(∩_∩)o...哈哈
二、选择题(每题3分,共45分)
1.定义一个变量使之保存值的范围是0-65535,应该选择(A)类型。
A.unsignedshortintB.int
C.shortintD.longint
2.设x、y、z都是整型变量,x、y的初值都是5,执行z=(++x)+(y--)+1后,x、y、z三变量的值按顺序是(D)。
A.5,5,11B.6,6,13C.4,6,12D.6,4,12
3.下列字符中不属于转义字符的是(D)
A.\nB.\tC.\bD.\k
4.下列不正确的标识符是(B)
A._charB.a?
bC.xD.st2_flag
5.C语言的源程序(C)主函数
A.可以没有B.可以有多个
C.有且只有一个D.若有,只有一个
6.在内存中应该开辟(A)多少个字节来存放字符‘\n’.
A.1B.2C.3D.4
7.下面的(C)不是合法的c语言常量。
A.123B.‘M’C.0892D.“Flag”
8.下面(A)对变量的说明是错误的。
A.charc1,intx;B.inta,b;floatx,y;
C.inta;intb;D.charc1;intx;
9.有变量说明inta=3;,则表达式a<1&&--a>1的运算结果和a的值应该是(A)
A.0和2B.0和3C.1和2D.1和3
10.设intx=12;,则执行完语句a+=a-=a*a;后,a的值是(C)//应该是a=12
A.552B.264C.-264D.144
11.c语言中,运算对象必须是整型数的运算符是()//题目有问题,选项C是什么东东?
?
A.%B./C.%和\D.%和/
12.以下关于break语句的描述,只有(C)是正确的。
A.在循环语句中必须使用break语句。
B.break语句只能用于switch语句中。
C.在循环语句中可以根据需要使用break语句。
D.break语句可以强制跳出所有循环。
13.下面的叙述中,不正确的是(A)
A.在main函数中说明的变量的作用域是整个程序。
B.全局变量在程序运行期间一直占用分配给它的存储单元。
C.形式参数是局部变量。
D.return()语句中括号内可以是常量、有确定值的变量或表达式。
14.定义函数时,默认的函数类型是(A)
A.autoB.registerC.staticD.extern
15.c语言中的函数(B)
A.可以嵌套定义B.嵌套调用和递归调用均可
C.不可以嵌套调用D.可以嵌套调用,但不可以递归调用
三、阅读下列程序,写出执行结果(每题5分,共15分)
1.#include
main()
{
intx,m,n,a,b;
m=n=a=b=8;
x=(m=a>b)&&(n=a>b);
printf(“x=%d,m=%d,n=%d\n”,x,m,n);
}
答:
x=0,m=0,n=8
2.#include
main()
{
inta,b,c;
a=2;b=3;c=1;
if(a>b)
if(a>c)
printf(“%d\n”,a);
else
printf(“%d\n”,b);
printf(“end\n”);
}
答:
end
3.#include
main()
{
ints=0,k;
for(k=7;k>=0;k--)
{
switch(k)
{
case1;
case4;
case7;
s++;
break;
case2;
case3;
case6;
Break;
case0;
case5;
s+=2;
break;
}
}
printf(“s=%d\n”,s)
}
答:
S=7
四、程序设计题(每题10分,共20分)
1.整形数组a有五个元素,其值分别为:
1、2、3、4、5,移动该数组的数,使其变成2、3、4、5、1
#include
Main{
Inti,temp;
Inta[5]={1,2,3,4,5};
temp=a[0];
for(i=0;i<4;i++)
{
a[i]=a[i+1];
}
a[4]=temp;
}
}
2.用户从键盘输入一个字符串(字符中不包含空格),当输入回车时认为输入结束,统计输入字符串中小写英文字母、大写英文字母、数字字符、其他字符的个数
#include"stdio.h"
#include"string.h"
voidmain()
{
inti=0;//小写英文字母数量
intj=0;//大写英文字母数量
intk=0;//数字字符数量
intothers=0;//其他字符数量
chartemp;//接收字符。
inttempcounter;
printf("Pleaseinputthestring");
for(tempcounter=0;;tempcounter++)
{scanf("%c",&temp);
if(temp=='\n')
break;
else
{
if((temp>='a')&&(temp<='z'))
{
i=i+1;
continue;
}
if((temp>='A')&&(temp<='Z'))
{
j=j+1;
continue;
}
if((temp>='0')&&(temp<='9'))
{
k=k+1;
continue;
}
others=others+1;
}
}
printf("小写英文字母数量:
%d\n",i);
printf("大写英文字母数量:
%d\n",j);
printf("数字数量:
%d\n",k);
printf("其他:
%d\n",others);
}