• [单选题]执行下面程序中的输出语句后,a的值是()。includemain(){int a; printf("%d\n",(a=3*5,a
  • 执行下面程序中的输出语句后,a的值是( )。 #include stdio.h> main() { int a; printf("%d\n",(a=3*5,a*4));

  • 正确答案 :A
  • 15

  • 解析:解析:本题考查对逗号运算符的理解。逗号运算符的求解过程是从左至右,依次求解各个表达式的值,所以在该题中,先使a的值等于15,再计算a*4,此时整个表达式的值为60,但a的值并未改变,仍为15。

  • [单选题]为了把一个记录型变量的内容写入文件中指定的位置,所使用的语句的格式为______。
  • 正确答案 :D
  • Put文件号,记录号,变量名

  • 解析:解析:Put语句的格式为:Put[#]filenumber,[recnumber], vamame

  • [单选题]有以下程序段: int x=3; do {printf("%d",x-=2);) while(!(--x)); 其输出结果是( )。
  • 正确答案 :C
  • 1 -2

  • 解析:本题考查do-while循环,先执行d0输出的x的值为1,接着执行while语句,此时--x的值为0,x也为0,而非0为1,循环成立,接着执行do输出X值为-2,执行--x后,表达式为-2,而!(--x)为0,退出循环。

  • [单选题]有下列程序: main {int i,s=0,t[]={1,2,3,4,5,6,7,8,9); for(i=0;i<9;i+=2)s+=*(t+i); printf("%d\n",s); } 程序执行后的输出结果是( )。
  • 正确答案 :C
  • 25

  • 解析:在for循环语句中自变量i从0开始,每次自加2,执行s+=*(t+i)语句,因为C语言规定数组名做表达式相当于数组的首地址,也就是第一个元素的地址。因此,*(t+i)代表数组的第i+1个元素。所以程序运行的结果是1+3+5+7+9=25,即变量S的值等于25。

  • [单选题]有以下程序: #includestring.h> void f(char *s,char *t) {char k; k=*s; +s=*t; *t=k; S++; t--; if(*s) f(s,t); } main() {char.str[10]="abcdefg",*p; p=str+strlen(str) /2+1; f(p,p-2); printf("%s\n",str); } 程序运行后的输出结果是 ______。
  • 正确答案 :A
  • gfedcba

  • 解析:解析:本程序的作是将字符串str倒序。语句“p=str+strlen(str)/2+1;”用于将指针变量p指向e字符所在的存储单元,p-2指向了c字符所在的存储单元,在函数f中将这两个存储单元的内容交换,并使得f函数中指向c字符的指针变量s加1。指向c字符的指针变量t减1,然后继续将s和t指向的存储单元的内容进行交换,直到s指向的存储单元的内容为空为止。所以本题程序输出的结果是字符串“abcdefg”的倒序形式“gfedcba”。

  • 查看原题 点击获取本科目所有试题

    推荐下载科目: 计算机二级 计算机四级 微软认证 华为认证 软考高级 职称计算机 通信工程师 计算机操作员中级 计算机操作员高级 计算机辅助设计
    @2019-2026 不凡考网 www.zhukaozhuanjia.com 蜀ICP备20012290号-2