当前位置: 首页 > news >正文

2024/2/14

1.1、若有下面的变量定义,以下语句中合法的是( A   )。

int i,a[10],*p;

A) p=a+2;       B) p=a[5];    

        C) p=a[2]+2;      D) p=&(i+2);

1.2、有以下程序

main()

{

   int  a[3][3],*p,i;

   p=&a[0][0];

   for(i=0;i<9;i++)

      p[i]=i;

   for(i=0;i<3;i++)

      printf("%d ",a[1][i]);

}

程序运行后的输出结果是 _____D_______

A)0 1 2

B)1 2 3

C)2 3 4

D)3 4 5

1.3、有以下程序

int  main()

{   int  a[3][2]={0},   (*ptr)[2],i,j;    

    for(i=0;i<2;i++)

    {   ptr=a+i;

        scanf("%d",*ptr);

        *ptr++;

    }

    for(i=0;i<3;i++)

    {

        for(j=0;j<2;j++)

           printf("%2d",a[i][j]);

        printf("\n");

    }

}

若运行时输入:1  2  3<回车>,则输出结果为 _______A____

A)产生错误信息

B)1 0

    2 0

    0 0

C)1 2

    3 0

    0 0

D)1 0

    2 0

    3 0

1.4、有以下程序

main()

{   int  a[]={1,2,3,4,5,6,7,8,9,0},*p;

    for(p=a;p<a+10;p++)

      printf("%d,",*p);

}

程序运行后的输出结果是 ___A_______

   A)1,2,3,4,5,6,7,8,9,0,

   B)2,3,4,5,6,7,8,9,10,1,

   C)0,1,2,3,4,5,6,7,8,9,

   D)1,1,1,1,1,1,1,1,1,,1,

1.5、有以下程序

main()

{

   char  s[]="159",*p;

   p=s;

   printf("%c",*p++);

   printf("%c",*p++);

}

程序运行后的输出结果是___A_____

A)1 5  B)1 6   C)1 2   D)5  9

1.6、有以下程序

point(char  *p)

{

   p+=3;

}

int  main()

{   char  b[4]={'a','b','c','d'},  *p=b;

    point(p);    printf("%c\n",*p);

}

程序运行后的输出结果是 ____D______

A)a    B)b    C)c      D)d

1.7、设有如下定义语句 int m[ ]={2,4,6,8},   *k=m;

以下选项中,表达式的值为 6的是A

A *(k+2)  B k+2 C *k+2   D *k+=2

1.8、若有定义语句:int year=2009,*p=&year;,以下不能使变量 year 中的值增至 2010 的语 句是(A )。

A)*p+=1; B)( *p)++; C)++(*p); D)*p++;

1.9、设有定义:double x[10],*p=x;,以下能给数组 x 下标为 6 的元素读入数 据的正确语句是D

A)scanf("%f",&x[6]);   B)scanf("%lf",*(x+6));

C)scanf("%lf",p+6);      D)scanf("%lf",p[6]);

1.10、若有定义语句:char s[3][10],   (*k)[3],   *p; ,则以下赋值语句正确的是___A_

    A)p=s;       B)p=s[0];    C)p=k;     D)k=s;

1.11、有定义语句:int *p[4]; 以下选项中与此语句等价的是C

A)int p[4];    B)int **p;   C)int *(p[4]);    D)int (*p)[4];

1.12、若有定义语句:int a[4][10], *p, *q[4]; 且 0≤i<4,则错误的赋值 是D

A)p=a  B)q[i]=a[i]  C)p=a[i]  D)p=&a[2][1]

1.13、若有以下定义

int x[10],*pt=x;

则对 x 数组元素的正确应用是 B

A)*&x[10]    B)*(x+3)

3C)*(pt+10) D)pt+3

1.14、有以下程序

#include <stdio.h>

main()

{ int a[ ]={1,2,3,4},y,*p=&a[3];

--p; y=*p; printf(“y=%d\n”,y);

}

程序的运行结果是D

A)y=0   B)y=1    C)y=2   D)y=3

1.15、设char  *s = “\ta\017bc”;则指针变量s指向的字符串所占的字节数是____C___

   A)  6   B)  2   C)   5   D) 9

1.16、  若有定义语句:char s[3][10],  (*k)[3],   *p;,则以下赋值语句正确的是C

 A)p=s; B)p=k; C)p=s[0]; D)k=s;

2、填空题

2.1以下程序的输出结果是_7______

#include<stdio.h>

main()

{ int a[5]={2,4,6,8,10}, *p;

p=a+2; 

printf(“%d”,*p++); 

}

2.2、以下程序段的定义语句中,x[1]的初值是__2___,程序运行后输出的内容是_______

#include<stdio.h>

 main()

{ int x[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;

for(i=0;i<4;i++)

{ p[i]=&x[2*i+1]; printf(“%d ”,p[i][0]);

}

printf(“\n”);

}

2

 4

6

7

    2.3  以下程序段的输出结果是( )

#include <sthio.h>

mian()

{ char *ch[4]={“red”,”green”,”blue”}; int  i=0;

while(ch[i]);

{ putchar(ch[i][0];    i++;   }

}

r

g

b

       2.4、以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。 请在输出语句中填写代表最大值的输出项。

#include   <stdio.h>  

int   main()

{ int a[10], *p, *s;

for(p=a; p-a<10; p++)

scanf(“%d”,  p);

for(p=a,s=a;p-a<10;p++)

if(*p>*s) s=p;

printf(“max=%d,  序号:%d\n” , _*s, s - a__________ );

}

2.5 有以下程序,输出结果为_____2,5____

      main()

{  

int a[5]={1,2,3,4,5};    

int *ptr=(int *)(&a+1);    

printf("%d,%d",*(a+1),*(ptr-1));

}  

2.6  以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。 请在输出语句中填写代表最大值的输出项。

#include <stdio.h>

int main( )

{ int a[10], *p, *s;

for(p=a;p-a<10; p++)

scanf(“%d”,p);

 for(p=a,s=a;p-a<10;p++)

 if(*p>*s) s=p;

printf(“max=%d\n” ,  __*s____ );

3、编程题

3.1、 有一个整型数组int [10] = {10,20,30,40,50,60,70,80,90,100};标准输入一个整型数值m(0<m<10) ,使前面10-m个数值向后移动m个位置,最后m个数变成前面的m个数

  #include <stdio.h>int main() {int arr[10] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100};int m;printf("请输入一个整数 m(0 < m < 10):");scanf("%d", &m);// 向后移动 10-m 个数值 m 个位置for (int i = 10 - m - 1; i >= 0; i--) {arr[i + m] = arr[i];}// 最后 m 个数变成前面的 m 个数for (int i = 0; i < m; i++) {arr[i] = arr[10 - m + i];}printf("移动后的数组:");for (int i = 0; i < 10; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}

http://www.lryc.cn/news/299928.html

相关文章:

  • 跟廖雪峰老师学习Git(持续更新)
  • 2024,欢迎来到性价比时代
  • 【国产MCU】-CH32V307-通用定时器(GPTM)-输入捕获模式测量脉冲
  • sqlserver char,nchar varchar nvarchar的区别
  • FT2232调试记录(2)
  • 网络学习:数据链路层VLAN原理和配置
  • Docker的常见命令以及命令别名
  • 2024.02.14作业
  • SpringMVC原理(设计原理+启动原理+工作原理)
  • Java+SpringBoot构建智能捐赠管理平台
  • ubuntu远程桌面配置以及常见问题
  • 数据结构:并查集讲解
  • Stable Diffusion主流UI详细介绍
  • webpack5 常用插件使用
  • 利用Python和pandas库进行股票技术分析:移动平均线和MACD指标
  • whisperspeech 英文TTS的实现
  • P1000 超级玛丽游戏(洛谷)
  • 数据卷的常见命令,如何创建Nginx容器,修改nginx容器内的html目录下的index.html文件
  • CFS三层靶机
  • C语言——oj刷题——获取月份天数
  • Java面试题2024(Java面试八股文)
  • Uniapp(uni-app)学习与快速上手教程
  • 如何开始深度学习,从实践开始
  • PostgreSQL的学习心得和知识总结(一百二十九)|深入理解PostgreSQL数据库GUC参数 update_process_title 的使用和原理
  • 【并发编程】ThreadPoolExecutor类
  • auto关键字详讲
  • 8 scala的伴生对象
  • Redis相关介绍
  • Transformer实战-系列教程13:DETR 算法解读
  • 代码随想录刷题笔记 DAY 25 | 组合问题 No.77 | 组合求和III No.216 | 电话号码的字母组合 No.17