高级语言程序设计
学校: 无
问题 1: 1. 以下不能对二维数组a 进行正确初始化的语句是( )。
选项:
• A. int a[2][3]={0};
• B. int a[][3]={{1,2},{0}};
• C. int a[2][3]={{1,2},{3,4},{5,6}}
• D. int a[][3]={1,2,3,4,5,6};
答案: int a[2][3]={{1,2},{3,4},{5,6}}
问题 2: 2. 在一个C程序中,( )。
选项:
• A. main函数必须出现在所有函数之前
• B. main函数可以在任何地方出现
• C. main函数必须出现在所有函数之后
• D. main函数必须出现在固定位置
答案: main函数可以在任何地方出现
问题 3: 3. 若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。
选项:
• A. 3 5
• B. 3,5
• C. 3;5
• D. 35
答案: 3;5
问题 4: 4. 当执行以下程序段时,程序的执行情况是( )。
x=-1;
do { x=x*x;} while( !x);
选项:
• A. 循环体将执行一次
• B. 循环体将执行两次
• C. 循环体将执行无限次
• D. 系统将提示有语法错误
答案: 循环体将执行一次
问题 5: 5. 有以下程序
#include
main()
{ int a;
scanf("%d" ,&a);
if(a++<9) printf("%d\n",a);
else printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是 。
选项:
• A. 10
• B. 11
• C. 9
• D. 8
答案: 10
问题 6: 6. 若用数组名作为函数调用的实参,则传递给形参的是( )。
选项:
• A. 数组的首地址
• B. 数组的第一个元素的值
• C. 数组中全部元素的值
• D. 数组元素的个数
答案: 数组的首地址
问题 7: 7. 有以下程序
#include
main()
{
int a=1,b=0;
if(--a) b++;
else if(a==0) b+=2;
else b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是 。
选项:
• A. 0
• B. 1
• C. 2
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 8: 8. 下列条件语句中输出结果与其他语句不同的是 。
选项:
• A. if(a==0) printf(“%d\n”,y); else printf(“%d\n”,x);
• B. if(a) printf(“%d\n”,x); else printf(“%d\n”,y);
• C. if(a==0) printf(“%d\n”,x); else printf(“%d\n”,y);
• D. if(a!=0) printf(“%d\n”,x); else printf(“%d\n”,y);
答案: 请关注公众号【渝开搜题】查看答案
问题 9: 9. C语言中while 和do-while 循环的主要区别是( )。
选项:
• A. do-while 的循环体不能是复合语句
• B. while 的循环控制条件比do-while 的循环控制条件严格
• C. do-while 允许从外部转到循环体内
• D. do-while的循环体至少无条件执行一次
答案: 请关注公众号【渝开搜题】查看答案
问题 10: 10. 以下不正确的概念是( )。
选项:
• A. 一个C程序必须包含一个main函数
• B. 一个C程序可以只有一个语句
• C. 一个C程序可以由一个或多个函数组成
• D. 一个C语言函数可以没有任何可执行语句
答案: 请关注公众号【渝开搜题】查看答案
问题 11: 11. 在C语言中,数字018是一个( )。
选项:
• A. 十进制数
• B. 八进制数
• C. 十六进制数
• D. 非法数
答案: 请关注公众号【渝开搜题】查看答案
问题 12: 12. 两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是 。
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
答案: 请关注公众号【渝开搜题】查看答案
问题 13: 13. 以下哪一个不是C语言中的数据类型( )。
选项:
• A. 实型
• B. 浮点型
• C. 空类型
• D. 关系型
答案: 请关注公众号【渝开搜题】查看答案
问题 14: 14. 写出下面程序的执行结果 。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}
选项:
• A. 1 7 0
• B. 3 7 0
• C. 5 5 0
• D. 1 5 1
答案: 请关注公众号【渝开搜题】查看答案
问题 15: 15. 定义一个void型函数意味着调用该函数时,函数( )。
选项:
• A. 通过return返回一个用户所希望的函数值
• B. 返回一个系统默认值
• C. 没有返回值
• D. 返回一个不确定的值
答案: 请关注公众号【渝开搜题】查看答案
问题 16: 16. 以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是 。
选项:
• A. i=1 a=1 b=3
• B. i=3 a=2 b=3
• C. i=4 a=1 b=4
• D. i=4 a=2 b=4
答案: 请关注公众号【渝开搜题】查看答案
问题 17: 17. 写出下面程序的执行结果 。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}
选项:
• A. 1 5 1
• B. 3 7 0
• C. 5 5 0
• D. 1 7 0
答案: 请关注公众号【渝开搜题】查看答案
问题 18: 18. 写出下面程序的执行结果 。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}
选项:
• A. 1 5 1
• B. 1 7 0
• C. 3 7 0
• D. 5 5 0
答案: 请关注公众号【渝开搜题】查看答案
问题 19: 19. 如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量( )。
选项:
• A. 为全局变量,在本程序文件范围内有效
• B. 为局部变量,只在该函数内有效
• C. 为局部变量,只在该复合语句中有效
• D. 定义无效,为非法变量
答案: 请关注公众号【渝开搜题】查看答案
问题 20: 20. 以下能对二维数组a 进行正确初始化的语句是( )。
选项:
• A. int a[2][]={{1,0,1},{5,2,3}};
• B. int a[][3]={{1,2,3},{4,5,6}};
• C. int a[2][4]={{1,2,3},{4,5},{6}};
• D. int a[][3]={{1,0,1},{},{1,1}};
答案: 请关注公众号【渝开搜题】查看答案
问题 21: 21. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )。
for (i=4;i;i--)
for (j=0;j<5;j++){...}
选项:
• A. 20
• B. 24
• C. 25
• D. 30
答案: 请关注公众号【渝开搜题】查看答案
问题 22: 22. 以下哪一个可以作为正确的变量名( )。
选项:
• A. for
• B. $abc
• C. 3*x
• D. _file
答案: 请关注公众号【渝开搜题】查看答案
问题 23: 23. 有如下嵌套的if语句
if(a
if(a
else k=c;
if(b
else k=c;
以下选项中与上述if语句等价的语句是 。
选项:
• A. k=(a;k=(b<c)?b:c;
• B. k=(a)?((b<c)?a:b)((b>c)?b:c);
• C. k=(a)?((a<c)?a:c)((b<c)?b:c);
• D. k=(a)?a:b;k=(a<c)?a:c;
答案: 请关注公众号【渝开搜题】查看答案
问题 24: 24. 若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,代表换行符)
1 2
A B C
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。
选项:
• A. scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();
• B. scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();
• C. scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);
• D. scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);
答案: 请关注公众号【渝开搜题】查看答案
问题 25: 25. 以下哪一个不是正确的C语言常量( )。
选项:
• A. 0x2ac
• B. 3.25e-8
• C. 800
• D. 0486
答案: 请关注公众号【渝开搜题】查看答案
问题 26: 26. 两次运行下面的程序,如果从键盘上分别输入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
答案: 请关注公众号【渝开搜题】查看答案
问题 27: 27. 写出下面程序的执行结果 。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
选项:
• A. 1 7 0
• B. 3 7 0
• C. 5 5 0
• D. 1 5 1
答案: 请关注公众号【渝开搜题】查看答案
问题 28: 28. 已知if (x>y||xz);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为: 。
选项:
• A. x=50, y=80, z=80
• B. x=50, y=30, z=30
• C. x=30, y=50, z=80
• D. x=80, y=30, z=50
答案: 请关注公众号【渝开搜题】查看答案
问题 29: 29. 以下程序的输出结果是( )。
#include
void main( )
{ int a,b;
for(a=1,b=1;a<=100;a++)
{ if (b>=10) break;
if (b%5==1) { b+=5; continue; } }
printf("%d\n",a); }
选项:
• A. 101
• B. 6
• C. 4
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 30: 30. 假定所有变量均已正确说明,下列程序段运行后x的值是 。
a=b=c=0;x=35;
if(!a) x=-1;
else if(b);
if(c) x=3;
else x=4;
选项:
• A. 34
• B. 4
• C. 35
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 31: 31. 以下叙述中,不正确的是( )。
选项:
• A. 在同一C程序文件中,不同函数中可以使用同名变量
• B. 在main函数体内定义的变量是全局变量
• C. 形参是局部变量,函数调用完成即失去意义
• D. 若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用
答案: 请关注公众号【渝开搜题】查看答案
问题 32: 32. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是( )。
选项:
• A. float
• B. long
• C. int
• D. double
答案: 请关注公众号【渝开搜题】查看答案
问题 33: 33. struct student
{long int num;
char name[20];
char sex;
char addr[20];
}______。
以下能够正确定义的是
选项:
• A. a={"Li Lin",10101,'M',"123 Beijing Road"};
• B. a={10101,"Li Lin","123 Beijing Road",'M'};
• C. a={10101,"Li Lin",'M',"123 Beijing Road"};
• D. a={"123 Beijing Road","Li Lin",'M',10101};
答案: 请关注公众号【渝开搜题】查看答案
问题 34: 34. 若有说明:int a[3][4];则对a 数组元素的非法引用是( )。
选项:
• A. a[0][2*1]
• B. a[1][3]
• C. a[4-2][0]
• D. a[0][4]
答案: 请关注公众号【渝开搜题】查看答案
问题 35: 35. 若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。
选项:
• A. 3 5
• B. 3,5
• C. 3#5
• D. 35
答案: 请关注公众号【渝开搜题】查看答案
问题 36: 36. 若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是 。
选项:
• A. 1
• B. 0
• C. 2
• D. 不知道a的值,不能确定
答案: 请关注公众号【渝开搜题】查看答案
问题 37: 37. 有两个字符数组a,b,则以下正确的输入语句是( )。
选项:
• A. gets(a,b);
• B. scanf("%s%s",a,b);
• C. scanf("%s%s",&a,&b);
• D. gets("a"),gets("b");
答案: 请关注公众号【渝开搜题】查看答案
问题 38: 38. 若有说明:int a[3][4];则对a 数组元素的非法引用是( )。
选项:
• A. a[0][2*1]
• B. a[1][3]
• C. a[4-2][0]
• D. a[0][4]
答案: 请关注公众号【渝开搜题】查看答案
问题 39: 39. 以下程序的运行结果是( )。
#include
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}
选项:
• A. 6
• B. 8
• C. 10
• D. 12
答案: 请关注公众号【渝开搜题】查看答案
问题 40: 40. 以下程序运行的输出结果是 。
main()
{ int p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }
选项:
• A. 0
• B. 1
• C. 2
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 41: 41. 以下关于函数的叙述中不正确的是( )。
选项:
• A. C程序是函数的集合,包括标准库函数和用户自定义函数
• B. 在C语言程序中,被调用的函数必须在main函数中定义
• C. 在C语言程序中,函数的定义不能嵌套
• D. 在C语言程序中,函数的调用可以嵌套
答案: 请关注公众号【渝开搜题】查看答案
问题 42: 42. 在C语言程序中( )。
选项:
• A. main函数必须放在程序最前头
• B. main函数必须放在程序最后
• C. main函数必须放在所有函数之前
• D. main函数可以放在程序任何允许放置函数的位置
答案: 请关注公众号【渝开搜题】查看答案
问题 43: 43. 以下程序的运行结果是 。
main( )
{
int c,x,y;
x=1; y=1; c=0;
c=x++||y++;
printf(“\n%d%d%d\n”,x,y,c);
}
选项:
• A. 110
• B. 011
• C. 211
• D. 001
答案: 请关注公众号【渝开搜题】查看答案
问题 44: 44. 假定所有变量均已正确说明,下列程序段运行后x的值是 。
a=b=c=0;x=35;
if(!a) x=-1;
else if(b);
if(c) x=3;
else x=4;
选项:
• A. 35
• B. 34
• C. 4
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 45: 45. 若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,代表换行符)
1,2
A,B,C
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。
选项:
• A. scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();
• B. scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();
• C. scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);
• D. scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);
答案: 请关注公众号【渝开搜题】查看答案
问题 46: 46. 以下叙述正确的是()
选项:
• A. 计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。
• B. 汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。
• C. 高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。
• D. 用高级语言编写的源程序只能经过解释程序边解释边执行。
答案: 请关注公众号【渝开搜题】查看答案
问题 47: 47. 以下哪一个不是C语言中的数据类型( )。
选项:
• A. 集合型
• B. 双精度型
• C. 复数型
• D. 布尔型
答案: 请关注公众号【渝开搜题】查看答案
问题 48: 48. 以下关于函数的叙述中正确的是( )。
选项:
• A. C语言程序将从源程序中第一个函数开始执行
• B. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
• C. C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
• D. main可作为用户标识符,用以定义任意一个函数
答案: 请关注公众号【渝开搜题】查看答案
问题 49: 49. 两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是 。
main( )
{ int x;
scanf(“%d”,&x);
if(x++>5) printf(“%d”,x);
else printf(“%d\n”,x++);
}
选项:
• A. 1和2
• B. 10和11
• C. 1和10
• D. 2和11
答案: 请关注公众号【渝开搜题】查看答案
问题 50: 50. 若有说明:int a[10];,则对a数组元素的正确引用是( )。
选项:
• A. a[10]
• B. a[3.5]
• C. a(5)
• D. a[10-10]
答案: 请关注公众号【渝开搜题】查看答案
问题 51: 51. 以下程序的运行结果是 。
main( )
{
int c,x,y;
x=1; y=1; c=0;
c=x++||y++;
printf(“\n%d%d%d\n”,x,y,c);
}
选项:
• A. 110
• B. 211
• C. 011
• D. 001
答案: 请关注公众号【渝开搜题】查看答案
问题 52: 52. 以下关于函数叙述中,错误的是( )。
选项:
• A. 函数未被调用时,系统将不为形参分配内存单元
• B. 实参与形参的个数应相等,且实参与形参的类型必须对应一致
• C. 当形参是变量时,实参可以是常量、变量或表达式
• D. 形参可以是常量、变量或表达式
答案: 请关注公众号【渝开搜题】查看答案
问题 53: 53. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )。
for (i=5;i;i--)
for (j=0;j<4;j++){...}
选项:
• A. 25
• B. 20
• C. 24
• D. 30
答案: 请关注公众号【渝开搜题】查看答案
问题 54: 54. 以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是 。
选项:
• A. switch(a) {case 1:a=b;break; default:a++; }
• B. switch(a==1) {case 0:a=b;break;case 1:a++; }
• C. switch(a) {default:a++;break;case 1:a=b;}
• D. switch(a==1) {case 1:a=b;break; case 0:a++;}
答案: 请关注公众号【渝开搜题】查看答案
问题 55: 55. 有以下程序
#include
main()
{
int a=1,b=0;
if(--a) b++;
else if(a==0) b+=2;
else b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是( )。
选项:
• A. 0
• B. 1
• C. 2
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 56: 56. #include
void main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的( )。
选项:
• A. 素数
• B. 奇数
• C. 偶数
• D. 水仙花数
答案: 请关注公众号【渝开搜题】查看答案
问题 57: 57. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是( )。
选项:
• A. 实参与其对应的形参共占存储单元
• B. 只有当实参与其对应的形参同名时才共占存储单元
• C. 实参与对应的形参分别占用不同的存储单元
• D. 实参将数据传递给形参后,立即释放原先占用的存储单元
答案: 请关注公众号【渝开搜题】查看答案
问题 58: 58. 以下程序的输出结果是( )。
#include
void main( )
{ int a,b;
for(a=1,b=1;a<=100;a++)
{ if (b>=10) break;
if (b%5==1) { b+=5; continue; } }
printf("%d\n",a); }
选项:
• A. 101
• B. 6
• C. 4
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 59: 59. 有如下嵌套的if语句
if(a
if(a
else k=c;
if(b
else k=c;
以下选项中与上述if语句等价的语句是 。
选项:
• A. k=(a)?((a<c)?a:c)((b<c)?b:c);
• B. k=(a)?((b<c)?a:b)((b>c)?b:c);
• C. k=(a;k=(b<c)?b:c;
• D. k=(a)?a:b;k=(a<c)?a:c;
答案: 请关注公众号【渝开搜题】查看答案
问题 60: 60. 以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)
选项:
• A. printf(“%c\n”,’A’-32)
• B. printf(“%d\n”,’A’);
• C. printf(“%c\n”,65);
• D. printf(“%c\n”,’B’-1);
答案: 请关注公众号【渝开搜题】查看答案
问题 61: 61. 合法的数组说明语句是( )。
选项:
• A. int a[ ]="string";
• B. int a[5]={0,1,2,3,4,5};
• C. char a ="string";
• D. int a[ ]={0,1,2,3,4,5};
答案: 请关注公众号【渝开搜题】查看答案
问题 62: 62. 有如下程序
int func(int a,int b)
{ return(a+b); }
main( )
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf("%d\n",r); }
该程序的输出结果是( )。
选项:
• A. 12
• B. 13
• C. 14
• D. 15
答案: 请关注公众号【渝开搜题】查看答案
问题 63: 63. 以下C语言源程序的书写格式不正确的是( )。
选项:
• A. 正确的函数首部,其后必须加上分号
• B. 分号是语句的一部分
• C. 一行上可以书写多条语句
• D. 一个语句可以写在多行之上
答案: 请关注公众号【渝开搜题】查看答案
问题 64: 64. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )。
for (i=5;i;i--)
for (j=0;j<4;j++){...}
选项:
• A. 20
• B. 24
• C. 25
• D. 30
答案: 请关注公众号【渝开搜题】查看答案
问题 65: 65. 若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是( )
选项:
• A. a=a++,i++;
• B. i=(a+k)<=(i+k);
• C. i=A%11;
• D. i=!a;
答案: 请关注公众号【渝开搜题】查看答案
问题 66: 66. 写出下面程序的执行结果 。
main( )
{ int x,y=1;
if(y!=0) x=5;
printf(“%d\t”,x);
if(y= =0) x=3;
else x=5;
printf(“%d\t\n”,x);
选项:
• A. 1 3
• B. 1 5
• C. 5 3
• D. 5 5
答案: 请关注公众号【渝开搜题】查看答案
问题 67: 67. 若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )。
for (i=5;i;i--)
for (j=0;j<4;j++){...}
选项:
• A. 30
• B. 25
• C. 24
• D. 20
答案: 请关注公众号【渝开搜题】查看答案
问题 68: 68. 以下程序的运行结果是( )。
#include
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);
选项:
• A. 7
• B. 8
• C. 9
• D. 10
答案: 请关注公众号【渝开搜题】查看答案
问题 69: 69. 以下程序的运行结果是 。
main( )
{
int c,x,y;
x=1; y=1; c=0;
c=x++||y++;
printf(“\n%d%d%d\n”,x,y,c);
}
选项:
• A. 110
• B. 011
• C. 211
• D. 001
答案: 请关注公众号【渝开搜题】查看答案
问题 70: 70. 两次运行下面的程序,如果从键盘上分别输入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
答案: 请关注公众号【渝开搜题】查看答案
问题 71: 71. 若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是( )。
选项:
• A. float myadd( float a,b);
• B. float myadd(float b, float a);
• C. float myadd(float, float);
• D. float myadd(float a, float b);
答案: 请关注公众号【渝开搜题】查看答案
问题 72: 72. 当执行以下程序段时,程序的执行情况是( )。
x=-1;
do { x=x*x;} while( !x);
选项:
• A. 循环体将执行一次
• B. 循环体将执行两次
• C. 循环体将执行无限次
• D. 系统将提示有语法错误
答案: 请关注公众号【渝开搜题】查看答案
问题 73: 73. 一个完整的C源程序是( )。
选项:
• A. 要由一个主函数或一个以上的非主函数构成
• B. 由一个且仅由一个主函数和零个以上的非主函数构成
• C. 要由一个主函数和一个以上的非主函数构成
• D. 由一个且只有一个主函数或多个非主函数构成
答案: 请关注公众号【渝开搜题】查看答案
问题 74: 74. 以下对一维整型数组a 的正确说明是( )。
选项:
• A. int a(10);
• B. int n=10,a[n];
• C. int n; scanf("%d",&n); int a[n];
• D. int a[3*5+2];
答案: 请关注公众号【渝开搜题】查看答案
问题 75: 75. 若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。
选项:
• A. 0和1
• B. 0和20
• C. 10和1
• D. 10和20
答案: 请关注公众号【渝开搜题】查看答案
问题 76: 76. 在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。
选项:
• A. 整型常量
• B. 整型表达式
• C. 整型常量、变量或表达式
• D. 任何类型的表达式
答案: 请关注公众号【渝开搜题】查看答案
问题 77: 77. 已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为: 。
if (x>y||xz)
z=x; x=y; y=z;
选项:
• A. x=50, y=80, z=80
• B. x=50, y=30, z=30
• C. x=30, y=50, z=80
• D. x=80, y=30, z=50
答案: 请关注公众号【渝开搜题】查看答案
问题 78: 78. 假定所有变量均已正确说明,下列程序段运行后x的值是 。
a=b=c=0;x=35;
if(!a) x=-1;
else if(b);
if(c) x=3;
else x=4;
选项:
• A. 34
• B. 4
• C. 35
• D. 3
答案: 请关注公众号【渝开搜题】查看答案
问题 79: 79. 若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是( )。
选项:
• A. int 型
• B. float 型
• C. double 型
• D. 由系统当时的情况而定
答案: 请关注公众号【渝开搜题】查看答案
问题 80: 80. 下列条件语句中输出结果与其他语句不同的是 。
选项:
• A. if(a) printf(“%d\n”,x); else printf(“%d\n”,y);
• B. if(a==0) printf(“%d\n”,y); else printf(“%d\n”,x);
• C. if(a!=0) printf(“%d\n”,x); else printf(“%d\n”,y);
• D. if(a==0) printf(“%d\n”,x); else printf(“%d\n”,y);
答案: 请关注公众号【渝开搜题】查看答案
问题 81: 81. 只有同类型的结构体变量才能互相赋值。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 82: 82. 调用有参函数时,需要提供实参。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 83: 83. 指针变量可指向结构体数组中的元素。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 84: 84. 有参函数实参可以是常量、变量或者表达式。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 85: 85. 数组只能存放同一类型的数据。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 86: 86. 引用数组元素可以用下标法,也可以用指针法。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 87: 87. 如果p是一个指向struct Student类型对象的指针变量,那么执行p++时,p的增量是结构体struct Student的长度。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 88: 88. 函数的参数可以是整型、浮点型、字符型等数据。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 89: 89. 指针变量可指向结构体变量。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 90: 90. 在调用一个函数的过程中,可以又调用另一个函数。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 91: 91. C语言的函数定义是相互平行、独立的。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 92: 92. 一个变量的指针的含义包括两个方面,一是以存储单元编号表示的纯地址,一是它指向的存储单元的数据类型。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 93: 93. struct Person leader[3]中leader是结构体数组名。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 94: 94. 在调用一个函数的过程中允许直接调用该函数本身。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 95: 95. 指向整型数据的指针类型表示为“int *”,读作“指向int的指针”或简称“int指针”。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 96: 96. 指向是通过地址来体现的。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 97: 97. 不能嵌套定义函数。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 98: 98. 由于通过地址能找到所需变量单元,可以说,地址指向该变量单元。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 99: 99. 若有int a[10]; p=&a; 则p+1的值是数组a第1个元素的地址。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 100: 100. (++p)->num的计算过程是先使p自加1,然后得到p指向的元素中的num成员值。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 101: 101. 能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是 。
选项:
• A. (x<=-10)||(x>=-5)&&(x<=0)||(x>=100)
• B. (x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)
• C. (x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)
• D. (x<=-10)||(x>=-5)||(x<=0)||(x>=100)
答案: 请关注公众号【渝开搜题】查看答案
问题 102: 102. 写出下面程序的执行结果 。
main( )
{ int x,y=1;
if(y!=0) x=5;
printf(“%d\t”,x);
if(y= =0) x=3;
else x=5;
printf(“%d\t\n”,x);
}
选项:
• A. 1 3
• B. 1 5
• C. 5 3
• D. 5 5
答案: 请关注公众号【渝开搜题】查看答案
问题 103: 103. 以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是 。
选项:
• A. switch(a)
{ case1:a=b; break;
default:a++;
}
• B. switch(a==1)
{ case 0:a=b; break;
case 1:a++;
}
• C. switch(a)
{ default:a++;break;
case1:a=b;
}
• D. switch(a==1)
{ case 1:a=b;break;
case 0:a++;
}
答案: 请关注公众号【渝开搜题】查看答案
问题 104: 104. 以下不正确的叙述是( )。
选项:
• A. 一个#include命令只能指定一个被包含文件
• B. 一个#include命令可以指定多个被包含文件
• C. 在#include命令中,文件名可以用尖括号或双引号括起来
• D. 一个C程序中,可以使用多个#include文件包含命令
答案: 请关注公众号【渝开搜题】查看答案
问题 105: 105. 结构体数组的每一个数组元素都是一个结构体类型的数据。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 106: 106. struct Person leader[3]={};中,{}内应填写初值列表。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 107: 107. 如果p是一个指向struct Student类型对象的指针变量,则它不应用来指向stu数组元素中的某一成员。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 108: 108. 指针变量的基类型必须与结构体变量的类型相同( )。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 109: 109. (p++)->num的计算过程是先求得p->num的值,然后再使p自加1。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 110: 110. 结构体类型不占存储单元,但结构体类型变量占存储单元。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 111: 111. 指针已指向一个数组元素时,可以执行p--,--p。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 112: 112. 可以嵌套调用函数。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 113: 113. 如a为数组名,则可采用*(a+i)的方法引用数组元素。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 114: 114. 指针已指向一个数组元素时,可以执行p-1。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 115: 115. 如p是指针变量,a为数组名,p=a,则可采用*(p+i)的方法引用数组元素。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 116: 116. 指针已指向一个数组元素时,可以执行p++,++p。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 117: 117. 若有说明:int a[3][4]={0};则下面正确的叙述是( )。
选项:
• A. 只有元素a[0][0]可得到初值0
• B. 此说明语句不正确
• C. 数组a 中各元素都可得到初值,但其值不一定为0
• D. 数组a 中每个元素均可得到初值0
答案: 请关注公众号【渝开搜题】查看答案
问题 118: 118. 以变量名作为函数参数时,要求形参的类型是变量名;以数组名作为函数参数时,要求形参的类型是数组名或指针变量。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 119: 119. 指针类型的数据可以作为函数参数。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 120: 120. 可以在声明类型的同时定义变量。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 121: 121. 以变量名作为函数参数时,实参类型是变量名;以数组名作为函数参数时,实参类型是数组名。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 122: 122. 可以引用结构体变量成员的地址,也可以引用结构体变量的地址
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 123: 123. 数组元素的指针就是数组元素的地址。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 124: 124. 可以通过指针引用字符串。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 125: 125. 结构体数组的每个元素都包含多个成员。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 126: 126. 数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方都可以用数组元素代替。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 127: 127. 以变量名作为函数参数时,不能改变实参变量的值;以数组名作为函数参数时,可以改变实参数组的值。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 128: 128. C语言的特点之一就在于允许函数的递归调用。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 129: 129. 可以用下标法引用一个数组元素,也可以用指针法引用一个数组元素。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 130: 130. 对结构体变量的成员可以像普通变量一样进行各种运算
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 131: 131. 二维数组只是逻辑上的概念,在计算机内存中是连续存放的,不是二维的,是线性的。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 132: 132. 可以不指定类型名而直接定义结构体类型变量。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 133: 133. 存储单元的地址和存储单元的内容是相同的概念。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 134: 134. 以变量名作为函数参数时,传递的信息是变量的值;以数组名作为函数参数时,传递的信息是实参数组首元素的地址。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 135: 135. p1和p2都指向同一个数组元素时,可以执行p1-p2或p1+p2。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 136: 136. 可以先声明结构体类型,再定义该类型的变量。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 137: 137. C语言允许把(*p).num用p_>num来代替( )。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 138: 138. 实参数组名代表一个固定的地址,或者说是指针常量,但形参数组名并不是一个固定的地址,而是按指针变量处理。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 139: 139. 若有int a[10]; p=&a[2]; 则p-1的值是数组a第1个元素的地址。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 140: 140. 地址指向变量单元。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 141: 141. C语言中没有字符串类型,也没有字符串变量,字符串是存放在字符型数组中的。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 142: 142. 计算机程序设计语言分为机器语言、汇编语言、高级语言和自然语言。
选项:
答案: 请关注公众号【渝开搜题】查看答案
问题 143: 143. 可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名
选项:
答案: 请关注公众号【渝开搜题】查看答案
微信扫码添加好友
如二维码无法识别,可拨打 13662661040 咨询。