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

(C)一些题6

1.正确定义符号常量PI的宏定义为

A.define  PI  3.14
B.define  PI  3.14:
C。#define  PI  3.14
D #define  PI  3.14;

2。关于字符数组的描述中错误的是()
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入和输出
C。可以在赋值语句中通过运算符“=”对字符数组整体赋值

D。不可以用关 系运算符对字符数组中的字符 进行比较


3.若要求从键盘读入含有空格字符的字符串应使用函数(

A. getc()B. gets() C. getchar() D. scanf()

4..若有表达式(w) ? (-x):(++y),则其中GW等价的表达式是
A.w==1
B.w==0
C.w!=1
b.w!=0

5.程序的输出结果是

#include<stdio.h>
#include<string.h>
main()
{
char *pl="abc",*p2="ABC",str[50]= "xyz";

strcpy(str+2,strcat(pl,p2));
printf("%s'n",str);

A. xyzabcABC
B. zabcABC
C。xyabcABC

D. yzabcABC
补充: strnepy(str1,str2,2)作用是将str2中最前面2个字符复制到str1中,str1中原有的最前面的2个字符
 

答案:CCBDC

1.要有#,不能有;

5.stract(pl,p2)为”abcABC“,str+2此时指向”z“,即从”z“处将”abcABC“复制进去

6.有以下程序,程序运行后的输出结果是 Qian , f ,95,92

# include < stdio . h >
# include < string . h >
 typedef struct 
{
 char name [9];
 char sex ;
 float score [2];
}STU ;
void f(STU_a)
{
 STU_b={" Zhao ",' m ',85.0,90.0);
int i; 
 strcpy (a.name,b.name);
 a . sex = b . sex ;
 for ( i =0; i <2; i ++)
 a . score [i ]= b . score [ i ];
 printf ("% s ,% c ,%2.Of,%2.0f\ r , a . name , a . sex , a . score [0], a . score [1]);
}
 void main()
{
 sTU_c={"Qian",'f',95.0,92.0};
 f ( c );
 printf ("% s ,% c ,%2.0f,%2.0f\ n ", c . name , c . sex , c . score [0], c . score [1]);

分析:1.值传递。  2.%m。n(输出数据的占m列,其中有n位小数),所以是95,不是95.0



7.以下程序统计从终端输入的字符中大写字母的个数。 num [0]中统计字母 A 的个数, num [1]中统计字母 B 的个数,其它依次类推。用#号结束输入。请填空。


# include < stdio . h >
# include < ctype . h >
 main ()
{
 int num [26]={0},i;
 char c ;
 while ((__________)!='#')
 if ( isupper ( c ))
 num [ c -' A ']+=_____________;
 for ( i =0; i <26; i ++)
 Printf ("% c :% d n ", i +' A ', num [ i ]);
}



原型: extern int isupper ( int c );
头文件: ctype . h 
功能:判断字符 c 是否为大写英文字母

说明:当参数 c 为大写英文字母( A - Z )时回非零值,否则返回零。
附加说明:此为宏定义,非真正函数。

定义函数 int islower ( int c )
函数说明:检查参数 c 是否为小写英文字
 

答案:1.c=getchar()     2.1
 


8.函数 func 功能:将一个整数 k 插入到长度为 n 的有序序列 x 中。

# include < stdio . h >
 void func ( int * x , int n , int k )
{
 int * p ;
 for (_________; p >= x ; p --)
{ 
 if (* p > k )
*( p +1)=* p ;
 else
break ;
}
_____________;
}
 void main ()
{
 int a [10]={22,33,44,55.66,70,77,88,99};
 int c , i ;
 scanf ("% d ",& c );
___________________
 for ( i =0; i <10; i ++)
 printf ("%3d", a [ i ]);
}


该算法是从数组的最后一个元素开始比较,如果比该数大就往后移,如果比该数小,结束循环,然后将该数插入

答案:1.p=x+n-2;     2.*(p+1)=k;     3.fun(a,10,c);


 


http://www.kler.cn/a/156136.html

相关文章:

  • 提取神经网络数学表达式
  • GIS空间分析案例---城市公共设施配置与服务评价
  • 【前端学习指南】Vue computed 计算属性 watch 监听器
  • 【mySql 语句使用】
  • 记录学习react的一些内容
  • 【小程序】封装网络请求request模块
  • 如何快速看懂市场行情?
  • 视频生成的发展史及其原理解析:从Gen2、Emu Video到PixelDance、SVD、Pika 1.0
  • 流媒体方案之Nginx——实现物联网视频监控项目
  • 软件理论——演进式架构设计
  • van-list的onload事件多次触发的问题
  • 2023年12月4日-12月10日(周一到周五osg,渲染等,周六日ue)
  • 音频处理关键知识点
  • 在内网开发中使用Nginx代理来访问钉钉新版服务端API
  • 数据结构 | 查漏补缺之ASL、
  • 项目demo —— GPT 聊天机器人
  • JavaWeb-XML
  • C++构造函数与析构函数介绍
  • 45 - 多线程性能优化常见问题
  • element ui 表格合计项合并
  • RK3568平台开发系列讲解(Linux系统篇)通过OF函数获取属性
  • [leetcode ~模版] 周赛模版
  • UE学习C++(1)创建actor
  • notepad++ 插件JSONView安装
  • 大数据技术学习笔记(七)—— Zookeeper
  • Leetcode—1423.可获得的最大点数【中等】