提示:内容已经过期谨慎付费,点击上方查看最新答案

C语言程序设计

  1. C语言的函数,函数体中可以没有任何语句。( )

  2. A:错 B:对
    答案:正确
  3. int *p();表示该函数的返回值是一个指针。( )

  4. A:对 B:错
    AI参考:正确答案是B:错。int *p()表示的是一个指向整型的指针的函数,而不是函数的返回值是一个指针。所以这句话是错误的。'
  5. 在C语言中,所谓指针型数据,即指该数据是一个地址。( )

  6. A:对 B:错
    答案:正确
  7. 有如下程序段:int i, j = 2, k, *p = &i;k = *p + j;这里出现的两个“*”号,含义是一样的。( )

  8. A:对 B:错
    答案:错AI参考:答案:B。第一个“*”是取指针变量p指向的变量i的值,第二个“*”是取变量j的值,所以两个“*”的含义不一样。因此本题是错误的。'
  9. 对于指向单个变量的指针变量,像p+n、p++、p- -等运算是无意义的。( )

  10. A:对 B:错
    答案:×AI参考:答案是B:错。对于指向单个变量的指针变量,像p+n、p++、p--等运算是无意义的。这些运算符会改变指针变量的值,使其指向下一个或上一个位置,而不是指向另一个变量。因此,这种运算是有意义的。'
  11. 变量根据其作用域的范围可以分作局部变量和全局变量。( )

  12. A:错 B:对
    答案:正确AI参考:答案是B:对。变量根据其作用域的范围可以分作局部变量和全局变量,这是正确的。局部变量是在函数内部定义的,只在其被声明的代码块内有效;而全局变量是在函数外部定义的,在整个程序中有效。因此,这个判断题是正确的。'
  13. 设p是指向数组a的指针变量,则a[i]和p[i]等价。( )

  14. A:对 B:错

  15. 数组中的每一个元素,若要让一个指针变量指向它,必须用“&数组元素”的方法向该指针变量赋值。( )

  16. A:错 B:对
    AI参考:正确答案是【对】。指针变量需要指向数组中的某个元素,可以通过取地址符&获取该元素的地址,再将该地址赋值给指针变量。因此,要让一个指针变量指向数组中的元素,必须用“&数组元素”的方法向该指针变量赋值。'
  17. 一个C源程序可以由多个函数组成。( )

  18. A:对 B:错

  19. ++*p等价于++(*p)。( )

  20. A:对 B:错
    AI参考:答案:B:错。++*p等价于(*p)++,即先解引用p,然后将结果加1。而++(*p)则是先将p指向的地址加1,然后再试图将这个新地址赋给*p,这可能不会得到预期的结果,因为原来的值可能已经被销毁或者被其他变量覆盖了。所以++*p和++(*p)的语义是有区别的。因此,选项B“错”是正确的。'
  21. int i=1;
    while(i<5)
    {
    if(i>1) continue;
    if(i==3) break;
    i++;
    }
    上述程序中while 循环的执行次数是( )。

  22. A:1次 B:4次 C:0次 D:无数次
    AI参考:在给定的程序中,变量`i`从1开始,每次循环`i`都会自增1。如果`i`大于1,则执行`continue`语句跳过当前循环体中的剩余语句,直接进入下一次循环。如果`i`等于3,则执行`break`语句跳出循环。由于在循环体中没有其他操作,所以最终循环次数取决于`i`的值。在给定的代码中,当`i`等于3时,循环会立即跳出。因此,循环的执行次数取决于`i`从1到3的变化次数。由于初始值为1,因此循环至少会执行一次。当`i`等于3时,循环结束。因此,最终的执行次数为2次(包括初始执行的一次)。因此,正确答案是B:4次。'

  23. void fun(int *x,int i)
    {*x=*(x+i);}
    int main()
    {
    int a[8]={1,2,3,4,5,6,7,8},i;
    fun(a,5);
    for(i=0;i<8;i++)
    printf("%d",a[i]);
    return 0;
    }
    上列程序的运行结果是( )。

  24. A:72345678 B:34567892 C:12345678 D:62345678
    AI参考:代码中的 `fun` 函数是用来将数组 `a` 的指定索引位置的值向后移动一位。这里使用的是指针运算,所以首先 `*x` 是取出数组中指针 `x` 所指向的元素的值,然后再加上 `i`,把结果赋值给 `*x`。这样 `a[i]` 的值就会按照指定的偏移量移动。因此,当你调用 `fun(a,5)` 时,`a[5]` 的值会被移动到 `a[6]` 的位置,`a[6]` 的值会被移动到 `a[7]` 的位置,以此类推。所以,当你运行主函数中的循环时,你会看到数组 `a` 的所有元素都被打印出来,顺序是 62345678。所以正确答案是 D:62345678。'
  25. 在C语言中,能正确表示数学关系“10<a<20”的表达式为( )。

  26. A:a>10 & a<20 B:a>10 | | a<20 C:a>10 && a<20 D:a>10 | a<20
    AI参考:正确选项是C:a>10 && a<20。在C语言中,逻辑与运算符(&&)用于连接两个布尔表达式,只有当两个表达式都为真时,整个表达式才为真。因此,要表示“10<a<20”这个数学关系,需要使用两个小于运算符(<),一个大于运算符(>),并将它们用逻辑与运算符连接起来。正确的表达式应该是a>10 && a<20。因此,选项C是正确答案。'
  27. C语言中,函数的数据类型是指( )。‍

  28. A:函数返回值的数据类型 B:调用该函数时的实参的数据类型 C:函数形参的数据类型 D:任意指定的数据类型

  29. 有以下程序:
    ‍‌#include<stdio.h>
    int main()
    ‍‌{‍‌ int i,j,s=0;
    int a[3][3]={1,2,3,0,2,4,3,6,9};
    for(j=0;j<3;j++)
    {
    i=j;
    if(i>1) i=2-j;
    s+=a[i][j];
    }
    printf("%d\n",s);
    ‍}
    以下程序执行后的输出结果是( )。

  30. A:21 B:9 C:12 D:‍6

  31. 若有定义:double a[3][5];则a数组中行、列下标的下限分别为( )。

  32. A:3 5 B:3 3 C:5 5 D:2 4

  33. 以下叙述正确的是( )。

  34. A:do-while语句构成的循环不能用其它语句构成的循环来代替 B:用do-while语句构成的循环,在while后的表达式为零时结束循环。 C:用do-while语句构成的循环,在while后的表达式为非零时结束循环 D:do-while语句构成的循环只能用break语句退出

  35. 关于实参与形参,以下说法正确的是( )。

  36. A:形参是虚拟的,不占用存储单元 B:实参和与其对应的形参共享一个存储单元 C:‏实参和与其对应的形参各占用独立的存储单元 D:只有当形参和与其对用的实参同名时才共享存储单元

  37. 有以下程序
    #include <stdio.h>
    main()
    {int x;
    scanf(“%d”,&x);
    if(x<=3);
    else if(x!=10)
    printf(“%d\n”,x);}程序运行时,
    输入的值在哪个范围才会有输出结果( )。

  38. A:大于3或等于10的整数 B:不等于10的整数 C:大于3且不等于10的整数 D:小于3的整数
    AI参考:程序运行时,输入的值在大于3且不等于10的整数范围才会有输出结果,因此正确选项为C。程序中的if语句和else if语句用于判断输入的整数x是否满足大于3且不等于10的条件,只有当x满足这个条件时才会输出结果。其他选项都不符合程序逻辑。'
  39. 有以下程序:
    int fun(int a[][3])
    { int i,j,sum=0;
    for (i=0;i<2;i++)
    for(j=0;j<3;j++)
    sum=sum+a[i][j];
    return(sum);
    }
    int main()
    {
    int a[2][3]={1,2,3,4,5,6},s;
    s=fun(a);
    printf("s=%d\n",s);
    return 0;
    }
    下列程序的运行结果是:( )

  40. A:0 B:21 C:s=21 D:s=0
    AI参考:程序的运行结果是选项 B:21。程序中的函数 `fun` 接受一个二维数组 `a` 作为参数,并返回一个整数值,该值是二维数组中所有元素的总和。在主函数中,我们定义了一个二维数组 `a`,并将其传递给 `fun` 函数进行计算。程序中,二维数组 `a` 的大小为 2x3,因此其元素总数为 6。在 `fun` 函数中,我们使用两个嵌套的循环遍历数组中的所有元素,并将它们相加得到总和。由于数组中的所有元素都被加在一起,所以总和为 21。因此,程序的输出结果为 `s=21`。选项 C 和 D 都是错误的,因为它们都包含了一个错误的变量名 `s`。选项 A 也是错误的,因为程序中并没有任何变量名为 `0`。'
  41. 有以下程序
    #include<stdio.h>
    int main()

    int y=5;
    while(y--);
    printf(”y=%d\n”,y);
    return 0;

    程序执行后的输出结果是( )

  42. A:y=1 B:while构成无限循环 C:y=0 D:y= -1

  43. 以下选项中,能用作数据常量的是( )。

  44. A:0118 B:o115 C:1.5e1.5 D:115L

  45. 有以下程序:
    void fun(int n)
    {
    if(n/2>0)
    fun(n/2);
    printf("%d",n);
    }
    int main()
    {
    fun(6);
    printf("\n");
    return 0;
    }
    程序的运行结果是:( )

  46. A:631 B:61 C:136 D:16
    AI参考:程序的运行结果是:B:61。程序中的fun函数是一个递归函数,它会不断地调用自身,直到n为0为止。在main函数中,我们调用了fun(6)函数,所以初始的n值为6。在递归过程中,当n为3时,fun(3)会被调用,此时n的值为3。当n为1时,fun(1)会被调用,此时n的值为1。最后,printf函数会输出n的值,即61。因此,程序的运行结果是61。'
  47. 设有数组定义: char array[ ]="China"; 则数组array所占的空间为( )

  48. A:7个字节 B:5个字节 C:不确定的值 D:4个字节

  49. C语言对嵌套if语句的规定时:else语句总是与( )配对。



  50. A:缩进位置相同的if B:第一个if C:其之前最近的且尚未配对的 D:其之前最近的if

  51. 若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是( )

  52. A:&a,&*point ,point B:*&point,*point,&a C:a,point,*&a D:&*a,&a,*point

  53. int p[7]={1,2,3,4,5,6,7},i=0,k=0;
    while(i<3&&*(p+i)%2) {k=k+*(p+i); i++;}
    printf("%d\n",k);
    有以上程序段定义,则运行后的结果是( )

  54. A:3 B:0 C:1 D:2
    AI参考:选项B:0解释:程序段中的while循环遍历数组p中的元素,通过取余操作判断是否为偶数,当数组元素为奇数时,将该元素的值加到变量k上。因此,循环结束后,变量k的值将为初始值0加上数组中前三个奇数(即1、3、5)的值,即k=0+1+3=4。而题目要求输出的是k的值,因此答案为0。程序代码分析:* `int p[7]={1,2,3,4,5,6,7}`:定义了一个包含7个整数的数组p。* `i=0`:初始化循环变量i为0。* `while(i<3&&*(p+i)%2)`:循环条件为i小于3且p+i的值为奇数。* `k=k+*(p+i);`:当p+i的值为奇数时,将p+i的值加到变量k上。* `printf("%d",k);`:输出变量k的值。注意:在C语言中,数组的索引是从0开始的,因此数组p的第一个元素的索引为0,而不是1。所以循环只会遍历数组的前三个元素。'
  55. void fun(int x,int *y)
    {
    printf("%d%d",x,*y);
    x=5;
    *y=6;
    }
    int main()
    {
    int x=1,y=2;
    fun(y,&x);
    printf("%d%d",x,y);
    return 0;
    }
    上述程序的运行结果是( )。

  56. A:2162 B:5662 C:2165 D:5656
    AI参考:在C语言中,函数参数传递时,如果参数是数组或者指针类型,那么在函数内部对该参数的修改会影响到主函数中的原始值。在这个程序中,`fun`函数接收一个整数`x`和一个指向整数的指针`y`。在函数内部,我们首先打印出`x`和`*y`的值(即y指向的整数值),然后将`x`的值改为5,最后将`y`指向的值改为6。在主函数中,我们首先创建了变量`x`和`y`,并将它们的初始值分别设为1和2。然后我们调用`fun`函数,并将返回值赋给`x`(即修改了主函数中的原始值)。最后,我们打印出`x`和`y`的值。所以,程序运行的结果应该是:2165。这是因为主函数中的变量`x`被修改了,所以打印出来的结果也改变了。所以,正确答案是选项C:2165。'
  57. main()
    {int a=2,b=7,c=5;
    switch(a>0)
    {case 1:switch(b<0)
    {case 1:switch(“@”); break;
    Case 2: printf(“!”); break;
    }
    case 0: switch(c==5)
    { case 0: printf(“*”); break;
    case 1: printf(“#”); break;
    case 2: printf(“$”); break;
    }
    default : printf(“&”);
    }
    printf(“\n”);
    }
    以上程序的运行结果是( )。

  58. A:#$& B:#& C:*# D:#$
    AI参考:程序运行结果为:#$&程序首先判断a是否大于0,如果是,则进入第一个switch语句,判断b是否小于0,如果是,则进入第二个switch语句,判断“@”这个字符。由于“@”不在switch语句的范围内,因此不会执行任何操作,直接跳出当前case语句。接下来,程序判断a是否大于0的后续情况,此时a的值为2,因此进入case 0的switch语句。在这个case中,程序会判断c是否等于5,如果等于5,则进入第一个case 0的printf语句输出“*”,并跳出当前case语句。由于c不等于5,因此不会执行任何printf语句,直接跳出当前case语句。最后,程序执行default语句,输出“&”。由于已经执行了前面的case语句,因此不会再次输出“&”。因此,程序的运行结果是#$&。所以正确选项为A:#$&。'
  59. int main()
    {
    int a=1,b=2;
    for(;a<6;a++) {b+=a; a+=2;}
    printf("%d,%d\n",a,b);
    return 0;
    }
    程序运行后的输出结果是( )

  60. A:10,14 B:9,18 C:8,11 D:7,7
    AI参考:程序运行后的输出结果是【B:9,18】。程序中使用了for循环,循环条件是a小于6,在每次循环中,b加上a的值并更新a的值,所以循环结束后b的值是a的值加上2到6之间的所有奇数的和。因此,当a从1增加到6时,b的值从1增加到18。最后,程序输出a和b的值,所以输出结果是9和18。'
  61. 已知int x=10,y=20,z=30;
    if(x>y) z=x; x=y; y=z;
    以上语句执行后x,y,z的值是( )。

  62. A:x=20, y=30, z=30 B:x=20, y=30, z=20 C:x=10, y=20, z=30 D:x=20, y=30, z=10

  63. 有以下程序,
    #include <stdio.h>
    ____________________
    int main( )
    {
    double x,y,z;
    scanf("%lf%lf",&x,&y);
    z=mul(x,y);
    printf("%f\n",z);
    return 0;
    }
    double mul(double a,double b)
    { return (a*b); }
    请在______处填写( )语句,使程序可正常编译运行。( )

  64. A:doule mul(double a,double b); B:doule mul(double a,double b) C:mul(double a,double b) D:doule mul(a, b);
    AI参考:根据程序逻辑,`doule mul(double a,double b)` 需要作为函数的定义出现在程序的开头。这是正确的选项。`double`是数据类型,用于存储浮点数。该函数被调用并返回两个输入值的乘积。`doule`是大写的,这是C语言中函数定义的正确格式。所以,正确的答案是A: `doule mul(double a,double b);`。'
  65. 有以下程序:
    #include<stdio.h>
    int sub(int a,int b)
    { int c;
    c=a-b;
    return c;
    }
    void print(int z)
    { printf("z=%d\n",z); }
    int main()
    { int x,y,z;
    x=10; y=5;
    z=sub(x,y);
    print(z);
    return 0;
    }
    程序的运行结果是:( )

  66. A:5 B:z=5 C:0 D:z=0

  67. void fun(char *a, char *b)
    { *a=*a+32;
    *b=*b-32;
    }
    int main()
    {
    char c1='A',c2='a',*p1,*p2;
    p1=&c1;
    p2=&c2;
    fun(p1,p2);
    printf("%c%c\n",c1,c2);
    return 0;
    }
    以上程序的运行结果是( )。

  68. A:AA B:aA C:aa D:Aa

  69. int i=0,a=0;
    while(i<10)
    {
    for(;;)
    {
    if(i%2==0) break;
    else i--;
    }
    i+=2;
    a+=i;
    }
    printf("%d",a);
    以上程序的运行结果是( )。

  70. A:30 B:28 C:32 D:26
    AI参考:在代码中,`while`循环中的条件是`i < 10`,但`i`的值会在循环内部改变,因此在执行`while`循环的过程中,当`i`的值为偶数时,使用`break`退出循环,`i`会继续减1并再次进入循环,以此类推,当循环结束时,`i`的值为2、4、6、8,但是有一个循环没有结束,所以最后的值为8。对于for循环内部的代码,每次循环都会执行一次if条件判断,如果`i`是偶数,那么就会执行`break`退出循环。所以当i为偶数时,不会执行for循环内部的代码。所以,当循环结束后,变量a的值应该是:```ci = 8, a = i + (i+2) = 8 + (8+2) = 18```再根据printf函数,输出a的值。因此程序的运行结果是:D:26。'
  71. 已定义以下函数
    void fun(char *p2, char *p1)
    { while((*p2=*p1)!='\0'){ p1++;p2++; } }
    函数的功能是( )



  72. int a[10]={0,1,2,3,8,5,6,4,7,9},*p=a+3;
    printf("%d",*p+5);
    以上程序已定义,则运行结果是( )。

  73. A:8 B:6 C:9 D:7
    AI参考:在给定的程序中,数组`a`的元素被初始化为从0到9的连续整数。指针`p`被初始化为指向数组`a`中第3个元素(即a[3])。当程序运行`printf("%d", *p + 5);`时,它将计算指针`p`所指向的元素(即a[3] + 5 = 8)并打印出来。所以,结果应为选项A:8。'
  74. 若有以下数组说明,
    int a[10]={1,5,4,10,2,7,8,11,3,6}, int i=5;
    则a[a[i]]元素数值是( )。

  75. A:5 B:7 C:11 D:2
    AI参考:这个问题中的数组a被赋予了一个数组值,数组元素值是按照顺序排列的。在给定的数组中,a[i]的值是10,那么a[a[i]]就意味着在数组中索引为10的元素。但是,数组的索引是从0开始的,所以实际上,a[a[i]]实际上是访问数组中的第6个元素,即a[5]。这个元素的值是8。因此,正确答案是D:2。'
  76. 下面叙述中正确的是( )

  77. A:若定义函数时函数的返回类型缺省,则函数的默认数据类型为int B:函数必须返回一个值 C:‏函数体为空的函数,不完成任何操作,所以在程序设计中没有用处 D:声明函数时只需要说明返回类型

  78. 以下关于C语言的叙述中正确的是( )。

  79. A:C语言的数值常量中夹带空格不影响常量值的正确表示 B:C语言中的变量可以在使用之前的任何位置进行定义 C:在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致 D:C语言中的注释不可以夹在变量名或关键字的中间

  80. C程序中函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是( )

  81. A:函数返回值 B:参数的形实结合 C:同名的局部变量 D:全局变量

  82. 若有说明:int i, j=2,*p=&i;,则能完成i=j赋值功能的语句是( )

  83. A:*p=j; B:p=*j; C:p=&j D:p=

  84. 若变量已正确定义,有以下程序段
    int a=3,b=5,c=7;
    if(a>b) a=b; c=a;
    if(c!=a) c=b;
    printf("%d,%d,%d\n",a,b,c);
    其输出结果是( )。

  85. A:程序段有语法错 B:3,5,5 C:3,5,7 D:3,5,3

  86. 执行语句x = ( a = 3, b= a - -)后 ,x , a , b 的值依次为( )。

  87. A:3 ,2, 3 B:2 ,3 ,2 C:3 ,2 ,2 D:3 ,3 ,2
    AI参考:执行语句x = ( a = 3, b= a - -)后,x的值是3,a的值是2,b的值是2。解释:- 首先,a = 3赋值给x,所以x的值为3。- 然后,b = a - -中,- -是一个短横线,在Python中表示“从当前值中减去1”。所以b = a - -相当于b = a - 1。此时a的值已经是3,所以b = 3 - 1 = 2。所以答案是选项B: 2 ,3 ,2。'
  88. 以下结构体类型说明和变量定义中正确的是( )。

  89. A:typedef struct B:typedef struct REC ; C:struct {int n=0; char c=’A’;}t1,t2; {int n;char c;}REC t1,t2; D:struct REC; {int n; char c;}REC; {int n; char c;}; REC t1,t2; REC t1,t2;

  90. main()
    {
    int a=1,b;
    for(b=1;b<=10;b++)
    {
    if(a>=8) break;
    if(a%2==1) { a+=5; continue;}
    a-=3;
    }
    printf("%d\n",b);
    }
    程序运行后的输出结果是( )。

  91. A:5 B:4 C:6 D:3
    AI参考:程序运行后的输出结果是(B:4)。程序中,变量a的值在循环中被改变,但每次循环结束后都会恢复为上一次循环结束时的值。因此,在第一次循环中,a的值是1,循环会执行到if(a%2==1)这个条件判断,由于a是奇数,所以执行continue语句,跳过本次循环的剩余部分,直接进入下一次循环。此时,b的值是2。在第二次循环中,a的值被更新为6(没有改变的上一次循环结束时的值),if(a>=8)这个条件不满足,因此不会执行break语句跳出循环。因此,此时b的值应该是第一次循环结束时的值,即2。这样依次执行下去,直到程序结束。所以程序输出的结果应该是b的值,即4。因此选项B是正确的。'
  92. 以下是if语句的基本形式:
    if(表达式)
    语句
    其中“表达式”( )。

  93. A:可以是任意合法的表达式 B:必须是逻辑表达式或关系表达式 C:必须是关系表达式 D:必须是逻辑表达式

  94. ‍假设a、c均为字符数组,则以下正确的输入语句是( )。‍

  95. A:gets(a,c); B:scanf("%s %s",a,c); C:gets("a"); gets("c"); D:scanf("%s %s",&a,&c);

  96. #include <stdio.h>
    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;
    case 3: a++; b++;
    }
    printf(“a=%d,b=%d\n”,a,b);
    }
    程序的运行结果是( )。

  97. A:a=1,b=1 B:a=2,b=2 C:a=2,b=1 D:a=1,b=0

  98. 有以下程序
    main()
    { int i=1,j=2,k=3;
    if(i++==1&&(++j==3||k++==3))
    printf("%d %d %d\n",i,j,k);
    }
    程序运行后的输出结果是( )。

  99. A:2 3 3 B:1 2 3 C:2 2 3 D:2 3 4

  100. 有以下程序
    main()
    {int i,j,x=0;
    for(i=0;i<2;i++)
    {x++
    for(j=0;j<=3;j++)
    {if(j%2)continue;
    x++
    }
    x++
    }
    printf(x=%d\n,x);
    }
    程序执行后的输出结果是( )。

  101. A:x=4 B:x=8 C:x=12 D:x=6

  102. 能表示x为偶数的表达式是( ) 。

  103. A:x%2 B:x%2!=0 C:x%2==0 D:x%2==1
    AI参考:正确选项为:C:x%2==0。解释:表达式x%2表示取x除以2的余数,如果余数为0,则x为偶数;如果余数不为0,则x为奇数。因此,选项C x%2==0能表示x为偶数。选项A、B、D都只能表示x为奇数。'
  104. 有以下程序:
    #include <stdio.h>
    int x=10,y=5;
    void fun(int y)
    { x--;
    y--;
    }
    int main()
    {
    int x=20;
    fun(x);
    printf("%d",x-y);
    }
    程序的运行结果是:( )

  105. A:20 B:15 C:10 D:5

  106. 以下fun函数的功能是:找出具有N个元素的一维数组中的最大值,并作为函数值返回。
    int fun(int a[N])
    {
    int i,k=0;
    for(i=0;i<N;i++)
    if(a[i]>a[k]) k=i ;
    return ___________;
    }
    空白处,应填入( )。

  107. A:a[N] B:a[k] C:a[0] D:a[i]
    AI参考:答案:B解析:本题中,函数的功能是找出数组中的最大值,并返回。在for循环中,k被设定为数组中的最小值,如果数组中的某个元素大于k,则k被更新为该元素的下标。因此,函数返回的是数组中的最大值,即a[k]。所以空白处应填入a[k]。'
  108. 阅读以下程序:
    ‏#include <stdio.h>‏
    ‏int main( )‏
    ‏{ ‏
    char str[][20]={"china","beijing","shanghai"};
    int i ;
    for(i=0;i<3;i++)
    {
    printf("%s-", (str[i]+i));
    }
    return 0;
    ‏}
    程序的输出结果为( )。‏

  109. A:china-eijing-anghai B:china-beijing-shanghai C:china-eijing-hanghai- D:china-eijing-anghai-

温馨提示支付 ¥2.00 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部