itgle.com
更多“下面程序段的输出结果是()。 s="python''|'很t有趣n" print(len(s)) 知识点:转义字符”相关问题
  • 第1题:

    有以下程序 main() { char s[]="abcde"; s+=2; printf("%d\n",s[0]); } 执行后的结果是______。

    A.输出字符a的ASCⅡ码

    B.输出字符c的ASCⅡ码

    C.输出字符c

    D.程序出错


    正确答案:D
    解析:此题中s是—个字符数组,而字符数纽是在编绎时为它分配内存单元的,即此字符数组的地址在编译时是确定的,所以对此地址变量并不能赋值,故语句“s+=2;”错误,故程序出错。

  • 第2题:

    执行下面的程序,输出的结果是 ______ 。 Private Sub Command1_Click() ch $ = "Welcome to China!" n = Len(ch $ ) For i =1 To n-1 s$ =Mid(ch$ ,i,1) If s$ ="o" Then m=m + 1 Next i Print m End Sub

    A.1

    B.2

    C.8

    D.0


    正确答案:B
    解析:此题的功能是统计字母。在字符串中出现的次数。注意两个字符串函数的使用:Len()求字符中中字符的个数,Mid()是取子串。此题即依次取串中的字符,逐个与字母。进行比较,如果相等,则对计数变量m加1。

  • 第3题:

    下面程序段的输出结果是 ______。 char *s="12345"; s+=2; cout<<*s;

    A.345

    B.字符'3'

    C.字符'3'的地址

    D.无确定的输出结果


    正确答案:A

  • 第4题:

    有以下程序: #include<stdio.h> main { char s[]="rstuv"; printf("%c\n",*s+2); } 程序运行后的输出结果是( )。

    A.tuv

    B.字符t的ASCIl码值

    C.t

    D.出错


    正确答案:C
    本题中,语句printf函数输出的是字符指针S所指变量的ASCIl表对应值,即ASCIl表中值为s[0]+2的字符。所以选C。

  • 第5题:

    以下程序段的输出结果是 char s[]="\\141\141abc\t"; printf ("%d\n",strlen(s));

    A.9

    B.12

    C.13

    D.14


    正确答案:A
    解析:本题考核的知识点是字符串的长度。字符数组中可以存放字符串,但字符数组的长度并不是字符串的长度,字符串的长度是指字符数组中存放的有效字符个数,即,'\0'之前的字符数。字符数组s中依次存放的字符是:'\\"1"4"1"141"a"b"c"\t'和最后一个字符串结束标记'\0',故字符串的长度是9。所以,4个选项中A为所选。

  • 第6题:

    以下程序的输出结果是______。includeincludefun(char*w,int n){ char t,*s

    以下程序的输出结果是______。 #include<stdio.h> #include<string.h> fun(char*w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=*s2-; *s2=t; } } main() { char*p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C
    解析:在子函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环, w="1711717"。

  • 第7题:

    以下程序的输出结果是______。includeincludefun(char *w,int n){ char t,*

    以下程序的输出结果是______。 #include<stdio.h> #include<siring.h> fun(char *w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=*s2-; *s2=t; } } main() { char *p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C
    解析:在子函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环,w=“1711717”。

  • 第8题:

    请读程序段: char str[]="ABCD",*p=str print("%d\n",*(p+4)); 程序段的输出结果是______。

    A.68

    B.O

    C.字符'D'的地址

    D.不确定的值


    正确答案:B
    解析:在对字符数组赋字符串值时,系统会自动在字符串的末尾加上—个字符串结束标志'\0',故指向字符数组的指针p的*(p+4)的值为'\0'。由于'\0'的编码值就是0,所以本题输出为0。

  • 第9题:

    下面程序的输出结果是。 Private Sub Commandl_Click ch$=“ABCDEF” proc ch:Print ch End Sub Private Sub proc(ch As Stnng) s=“” For k=Len(ch) TO 1 Step -1 s=s&Mid(ch,k,1) Next k ch=s End Sub A.ABCDEF B.FEDCBA C.A D.F


    正确答案:C

  • 第10题:

    下面程序输出的结果是()。includemain(){char *a="1234";fun(a);printf("\n");}fun(cha

    下面程序输出的结果是( )。 #include<stdio.h> main() { char *a="1234"; fun(a); printf("\n"); } fun(char *s) { char t; if(*s) { t=*S++;fun(s);} else return; if(t!='\0') putchar(t); }

    A.1234

    B.4321

    C.1324

    D.4231


    正确答案:B
    解析:本题的fun()函数是用递归法实现逆序输出一个字符串。函数中首先定义一个局部变量t,然后s所指的内容是否为字符串结束符,不是的话将s所指的内容赋给t,同时使s后移一位,然后递归调用fun(s)。到这条语句为止是递归过程,即接下来连续递归调用fun(s)都只会执行到这一半,直到回朔条件(s所指内容是字符串结束符)出现,fun()函数连续返回,判断t不等于0的话,就输出t,所以输入的字符串被逆序输出,故本题的正确答案应该是B。

  • 第11题:

    以下程序段的输出结果是()。     char s[]= “\\140\140abc\t”;       prntf(“%d\n”,strlen(s));


    正确答案:9

  • 第12题:

    单选题
    有以下程序 main() { char s[]="abcde"; s+=2; printf("%d/n",s[0]); } 执行后的结果是()
    A

    输出字符a的ASCII码

    B

    输出字符c的ASCII码

    C

    输出字符c

    D

    程序出错


    正确答案: D
    解析: 暂无解析

  • 第13题:

    有如下程序,运行输出的结果是 ______ 。 s=0 Do s=(s+1)*(s+2) n=n+1 Loop Until s>=30 Print n; s

    A.0 1

    B.30 30

    C.4 30

    D.3 182


    正确答案:D
    解析:此循环的功能是不断根据表达式修改变量s的值,直到其值大于等于30才退出循环。变量n用于记录循环的次数。第一次循环时,s=1*2=2;第二次循环时,s=3*4=12;第三次循环时,s=13*14=182,随即退出循环,因此共循环了3次,即n=3。

  • 第14题:

    下面运行程序后,单击命令按钮,输出的结果是 【 】 。

    Private Sub Command1_Click()

    Dim a%(1 To 5),i%, s#

    For i=1 To 5

    a(i)=i

    Next

    s=Fun(a)

    Print "s="; s;

    End Sub

    Function Fun(a() As Integer)

    Dim t#, i%

    t=1

    For i=LBound(a) To UBound(a)

    t=t  a(i)

    Next

    Fun=t

    End Function


    正确答案:S=120
    S=120 解析:程序首先调用循环语句为数组a、b赋值,其中a(i)=i;b(i)=i,且数组a的上下界分别为1和5,接着将数组a作为参数调用Fun过程,在Fun过程中,定义了两个变量t及i,i作为循环语句For的变量,它的初始值和终值分别为数组的上下界,循环体为t = t*a(i),即将a(i)的值乘以t,然后再赋给t,当循环结束后,程序返回的就是数组a中各元素的积,输出结果为:s=120。

  • 第15题:

    以下程序的输出结果是【 】。include defineN 5 int fun(int *s,int a,int n) {int j; *s=

    以下程序的输出结果是【 】。

    include <stdio.h>

    define N 5

    int fun(int *s,int a,int n)

    { int j;

    *s=a j=n;

    while(a!=s[j]) j-;

    return j;

    main()

    { int s[N+1]; int k:

    for(k=1 ;k<=N;k++) s[k]=k+1:

    print f("%d\n",fun(s,4,N));

    }


    正确答案:3
    3 解析:本题主函数中定义了一个一维数组s,并通过for循环给s[1]到s[5]的元素分别赋值为2、3、4、5、6。然后调用 fun函数,使指针变量s与数组s共用同一存储单元。在函数fun中,a=4,n=5,所以while的条件表达式首先判断的是 4!=s[5]是否成立,由于s[5]=6,所以成立,执行j-;接着判断4!=s[4]是否成立,由于s[4]=5,所以成立,执行j-;然后判断4!=s[3]是否成立,由于s[3]=4,所以条件表达式不成立,返回j的值3。

  • 第16题:

    哪个选项是下面代码的执行结果()s='PYTHON'print("{0:3}".format(s))

    A、PYTHON

    B、PYT

    C、PYTH

    D、PYTHON


    答案:A

  • 第17题:

    下面程序段的运行结果是 include void main( ) {char*s="abcde"; S+=2;

    下面程序段的运行结果是 #include<iostream.h> void main( ) { char*s="abcde"; S+=2; cout<<&s;}

    A.cde

    B.字符'c'

    C.字符'c'的地址

    D.无确定的输出结果


    正确答案:C
    解析:对于字符串指针,其保留的是整个串的首地址,即为第一个字符的起始地址,当该指针做算术运算时,就是该指针根据其类型向后移动相应的存储空间。

  • 第18题:

    执行以下语句后,输出的结果是 s$=“ABCDEFGHI” Print Mid$(s$,3,4) Print Len(s$)

    A.ABCD 11

    B.CDEF 11

    C.EFGH 11

    D.HIJK 11


    正确答案:B
    解析:Mid(s$,i,n)表示从字符串s$的第i个字符开始向后截取n个字符,Len(s$)返回字符串s$的长度。

  • 第19题:

    若有以下程序段: int r=8; print("%d\n",r>>1): 输出结果是( )。 A.16B.8S

    若有以下程序段: int r=8; print("%d\n",r>>1): 输出结果是( )。

    A.16

    B.8

    C.4

    D.2


    正确答案:C
    本题考查移位运算。将8转为二进制数为1000,右移一位不足补0,结果为0100,转化为十进制结果为4。

  • 第20题:

    下面程序的输出结果是 ( ) char b[]="ABCD"; main() { char * chp; for ( chp=b; * chp;chp + =2 )printf("%s",chp); print{("\n"); }

    A.ABABCD

    B.ABCDAB

    C.ABCDD

    D.ABCDCD


    正确答案:D

  • 第21题:

    有以下程序 int a=2; int f(int n) { static int a=3; int t=0; if(n%2) {static int a=4; t+=a++;} else {static int a=5; t+=a++;} return t+a++; } main ( ) { int s=a, i; for (i=0;i<3; i++) s+=f (i) print f ("%d\n" , s ); } 程序运行后的输出结果是

    A.26

    B.28

    C.29

    D.24


    正确答案:C
    解析:全局变量的生存期是整个程序的运行期间,作用域是从变量定义的位置开始,到整个源文件结束止。但是,若全局变量和某一函数或语句块中的局部变量同名,则在该函数或语句块中,此全局变量被屏蔽,即在该函数或语句块内,访问的是局部变量,与同名的全局变量不发生任何关系。静态局部变量的生存期与全局变量相同,作用域和局部变量一样都是整个函数成语旬块内有效。程序第一行定义了一个全局变量a,在f()函数开头也定义了一个静态局部变量a,而且在后面if语句的两个子句中都定义了静态局部变量a。这4个变量a虽然名字一样,但却是4个独立的变量,而且在整个程序运行期都存在。在主函数中,在定义变量s时将s初始化为全局变量a的值2,然后使用一个for循环分别调用了3次f(0)、f(1)、f(2),并将得到的值累加到变量s中。第1次调用n=0为偶数,执行else子句,此时t累加的是else子句中的变量a,所以执行后else子句中的a变为6,t变为5,然后return语句中的a是函数f()开头定义的a,执行后函数开头的a变为4,所以返回值是5+3=8。第2次调用n为1是奇数,执行if子句,所以t变为4,if子句中的a变为5,然后返回时函数开头的a变为5,返回值是4+4=8。第3次调用n为2是偶数,又执行else子句,else子句中的a现在还是上次执行后的值6,所以t=6,然后返回时加上函数开头的a的当前值5,最后返回11。所以s最终的值是2+8+8+11=29。故应该选择C。

  • 第22题:

    下面程序段的输出结果是【 】。

    p = 0

    s = 0

    Do

    p = p + 2

    s = s + p

    Loop While p<11

    Print “s=”; s


    正确答案:s=42
    s=42

  • 第23题:

    以下程序段的输出结果是()。    Char s[]I=”/1238/080abc”;    printf(”%d/n”,strlen(s));


    正确答案:2

  • 第24题:

    填空题
    以下程序段的输出结果是()。     char s[]= “\\140\140abc\t”;       prntf(“%d\n”,strlen(s));

    正确答案: 9
    解析: 暂无解析