【习题5】

一、填空题

5.1 若有定义int a[3][5];则排列在数组中的第9个元素是( a[1][3] )。 5.2 strlen(\的值是( 12 )。 5.3 C语言中字符串结束的标志是( '\\0' )。

5.4 写出一个名为s的单精度实型一维数组,长度是6,所有元素初值均为0,其数组定义语句是( float s[6]={0}; )。

5.5 strcmp(\的值是( 32 或>0 )。 二、选择题

5.6 若有int s[4]={1,2,3,4};,则s[s[0]+2*s[2]-s[3]]的值是( D ) A.1 B.2 C.3 D.4 5.7 对数组的描述正确的是( B )。

A.数组一旦定义其大小是固定的,但数组元素的类型可以不同。 B.数组一旦定义其大小是固定的,但数组元素的类型必须相同。 C.数组一旦定义其大小是可变的,但数组元素的类型可以不同。 D.数组一旦定义其大小是可变的,但数组元素的类型必须相同。 5.8 对字符串\进行完整赋值的操作是( B )。 A.char s[3] = {'B','o','y'}; B. char s[] = \ C.char s[3] = {\ D.char s[3]; s=\

5.9在c语言中引用数组元素时,其数组下标的数据类型允许是( C )。 A.整型常量 B.整型表达式

C.整型常量或整型表达式 D.任何类型的表达式 5.10对以下说明语句的正确理解是( B )。 int a[10]={6,7,8,9,10};

A.将5个初值依次赋给a[1]至a[5] B.将5个初值依次赋给a[0]至a[4] C.将5个初值依次赋给a[6]至a[10]

D.因为数组长度与初值的个数不相同,所以此语句不正确 三、看程序写结果 5.11 main()

{int a[3][3] = {{1,0,2}, {2,2},{0,2}}, c[3][3],i,j; for(i=0; i<3; i++) {

for(j=0; j<3; j++) {

c[i][j] = a[a[i][j]][a[j][i]]; printf(\} }

printf(\}

运行结果为: 2 2 0 0 0 2 2 0 1

5.12当运行以下程序时,从键盘输入:Ah2MA A3ha,请写出输出结果。

8

main()

{ char s[80], c='a'; int i=0;

scanf(\ while(s[i++]!='\\0')

if(s[i] == c) s[i]=s[i]-32;

else if(s[i]==c-32) s[i]=s[i]+32; puts(s); }

运行结果为:AH2Ma 四、编程题

5.13 用数组方法定义一个矩阵,求其转置矩阵。

提示:已知a[3][2],转置后的结果存放在b[2][3]; 则b[j][i]=a[i][j];

5.15 从键盘输入9个不同的整数,组成三行三列的二元数组,找出每一列中的最大元素,

并输出其行、列下标。

提示:已知a[3][3],max,row,col分别用来存放一列的最大值,行下标和列下标。 5.15利用一个二维数组,打印出以下杨辉三角形,要求打印出10行。

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1 ∶ ∶

提示:定义一个10行10列的二维数组,并且通过两重循环对第1列所有元素赋值1,主对角线也赋值。根据a[i][j]=a[i-1][j]+a[i-1][j-1]求出其它元素的值。 5.16 从键盘上输入一串字符(长度小于50个字符),找出其中最前面的一个X和最后面的

一个X之间的子串,并输出子串的长度。

提示:定义一个长度为81的字符数组,从左边查找第一字符'X'的下标,从右边查找第一个字符'X'的下标。 5.17 矩阵A是一个3×3的矩阵,B是一个3×2的矩阵,编程求C=A?B。

提示:定义一个3X2的数组c[3][2],该数组的元素值由A数组的一行元素分别与B的一列元素相乘得到。譬如:c[0][0]=a[0][0]*b[0][0]+a[0][1]*b[1][0]+a[0][2]*b[2][0]。 5.18 把30个学生的学号和两门课程的成绩输入到一个二维数组中,求出的每个学生的两门

课程的总成绩也放于此数组中,请按学生总分的高低打印出成绩单(包括学号、两门课程成绩和总分)。

提示:定义一个30行4列的数组。为了先快速测试算法是否正确?可以定义一个3行4列的数组,并且通过赋初始值,减少调试程序时反复输入数据的麻烦,算法调试成功后在加上输入数据部分。实现从高到低打印出成绩可以通过排序(降序);也可以通过另外定义1个一维数组作为索引,再通过索引打印成绩。 5.19 不用现有的函数求计算字符串长度的程序。

提示:通过循环从前到后计算字符个数,遇到字符串结束标志'\\0'结束。 5.20 从键盘上输入一串字符,将其逆向显示。

9

提示:首先计算字符串的长度,在从右边逐一显示字符,直到下标等于0为止。

5.21 找出一个二位数组中的鞍点的位置,即该位置上的元素在该行上最大,在该列上最小。

如果有,输出其所在的行、列号,如果没有,则输出提示信息。 提示:先找出行的最大元素,根据列下标找出列的最大元素。

5.22 从键盘上输入一串字符,将字符串中的所有A去掉后组成新的字符串,并将两字符串

输出。

提示:简单的方法是通过定义两个一维数组,逐个读出原字符串的字符,如果不为'A',则存入目的数组。当然也可以只用一个一维数组实现,通过两个下标指示来实现。

10

【习题6】

一、填空题

6.1 C语言程序执行的开始处是 main函数 。

6.2 C程序中的一个函数由两部分组成,即 声明部分 和 执行部分 。 6.3为了保证被调用函数不返回任何值,其函数定义的类型应为 void 。

6.4若一个局部变量的存储类型是static,则该变量的值在 程序执行完成 时被释放。 6.5预处理命令#include的作用是 文件包含 。

6.6定义一个宏,功能是判断两个数是否相等,相等为1,不等为0。 #define EQU(a,b) (a)==(b)?1:0

6.7 变量的存储类别有 自动型 、 静态型 、 寄存器型 、和 外部类型 共4种,它们分别用 auto 、 static 、 register 、 extern 标识。 二、选择题 6.8下述函数定义形式正确的是(C)。 A. int f(int x; int y) B. int f(int x,y) C. int f(int x, int y) D. int f(x,y: int) 6.9 关于函数参数,说法正确的是(A)。

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

6.10 用数组名作为函数的实参时,传递给形参的是(A)。 A. 数组的首地址 B. 数组的第1个元素 C. 数组中的全部元素 D. 数组的元素个数 6.11复合语句中定义的变量的作用范围是(D)。 A. 整个源文件 B. 整个函数 C. 整个程序 D. 所定义的复合语句 6.12一个函数的返回值由( D )确定。 A. return语句中的表达式 B. 调用函数的类型

C. 系统默认的类型 D. 被调用函数的类型

6.13在一个C源文件中,若要定义一个只允许本源文件所有函数使用的全局变量,其他文件中不允许使用,则该变量需要使用的存储类别是(D)。 A. auto B. register C. extern D. static

三、判断题

6.14若定义的函数没有参数,则函数名后的圆括号可以省略。(?) 6.15函数的函数体可以是空语句(?)。 6.16只有main函数才能调用其他函数。(?)

6.17return语句中表达式的类型必须与函数定义的类型一致。(?) 6.18函数的实参和形参可以是相同的名字。(?)

6.19函数调用中,形参与实参的类型和个数必须保持一致。(?) 6.20外部类型的变量只能定义一次,但可在不同地方声明多次。(?) 6.21外部类型的变量作用范围大,编程中应多用外部变量。(?) 6.22预处理命令行必须以#开头,且最后要用分号结尾。(?) 6.23宏命令的处理占用编译时间,而不占用运行时间。(?) 四、看程序写结果

11

从键盘输入三行三列c语言,华南农业大学C语言试卷相关推荐

  1. C语言:任意从键盘输入一个三位整数,要求正确分离它的个位,十位和百位数,并分别在屏幕上输出。

    C语言:任意从键盘输入一个三位整数,要求正确分离它的个位,十位和百位数,并分别在屏幕上输出. #include <stdio.h> #include <math.h> void ...

  2. python输入一个三位数、输出它的逆序数值_c语言 从键盘输入一个三位数,输出该数的逆序数。c语言中从键盘输入一个三位整数...

    c语言 从键盘输入一个三位数,输出该数的逆序数. c语言中从键盘输入一个三位整数 www.zhiqu.org     时间: 2020-12-08 c语言中从键盘输入一个三位数,输出该数的逆序数,可以 ...

  3. 输入三角形的三c语言程序,请问c语言中 从键盘输入三角形的3边 调用三角形面积公式求面积 并输.,C语言编写程序,从键盘输入三角形三条边长(实数),计算并输出...

    导航:网站首页 > 请问c语言中 从键盘输入三角形的3边 调用三角形面积公式求面积 并输.,C语言编写程序,从键盘输入三角形三条边长(实数),计算并输出 请问c语言中 从键盘输入三角形的3边 调 ...

  4. c语言学习-在一个三行三列的矩阵中求出数值最大的元素及其行/列下标并打印输出

    在一个三行三列的矩阵中求出数值最大的元素及其行/列下标并打印输出 程序流程图: 代码: #include<stdio.h> void main() {int a[3][3]; int i= ...

  5. 6.19 C语言练习(编程判断以从键盘输入的三个数为边长,是否能构成三角形。)

    [练习] 题目要求:编程判断以从键盘输入的三个数为边长,是否能构成三角形. #include <stdio.h>int main() {float a,b,c;printf("请 ...

  6. HTML变列自适应布局三行,CSS三行三列DIV高度自适应的设置

    上一篇博客里引用了www.52css.com里的一篇关于使用脚本控制三行三列div高度自适应的设置方法,其实不必如此麻烦,只要给父div设置一个固定高度,比如10px,其子div的height:100 ...

  7. html列自动变高,HTML_CSS三行三列DIV高度自适应的设置,用脚本控制三行三列div高度自 - phpStudy...

    CSS三行三列DIV高度自适应的设置 用脚本控制三行三列div高度自适应的设置方法,其实不必如此麻烦,只要给父div设置一个固定高度,比如10px,其子div的height:100%就可实现高度自适应 ...

  8. Android Studio:如何使用网格布局将整个界面等比分为三行三列

    刚开始接触android开发,还在摸索基础控件.老师说解决了一个问题就要记录下来以防以后遗忘,所以这里小小记录一下碰到的问题. 课本上的一道题目:怎么将界面等比分为三行三列,显示一个红色的" ...

  9. java中从键盘输入的三种方法以及Console输入

    java中从键盘输入的三种方法: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre ...

  10. Java 键盘输入的三种方法

    Java 键盘输入的三种方法 1.System.in和System.out方法:从控制台接收一个字符,然后将其打印出来 虽然此方式实现了从键盘获取输入的字符,但是System.out.read()只能 ...

最新文章

  1. c# 拼接lambda表达式 (转载)
  2. PrimeFaces 5.0 DataTable列切换器
  3. windows查看系统版本号
  4. 误打误撞的模板字符串
  5. Keepalived时主备负载均衡器都有VIP的问题:VRRP协议问题
  6. java中abcd_java中请不要出现aBcd类似的变量名
  7. 【Unity Shaders】Lighting Models —— 灯型号Lit Sphere
  8. Spring Boot中@Autowired可以省略的情况
  9. 人工智能是计算机科学的一个分支下定义,阅读中有一篇叫人工智能什么,是说明文...
  10. javamail 发送、读取邮件
  11. 如何查看电脑里的隐藏文件?
  12. 从单一服务到多元化服务,智能机器人JIMI的架构改造及逐步开放的过程
  13. 太湖之光超级计算机诞生了,科技观察:神威·太湖之光超级计算机
  14. html论坛发帖案例
  15. 两台手机通过4g网络直接通讯_手机直播只准备了一部手机?难怪直播效果不好!...
  16. xshell、CRT上使用vbscript更高效连接定位到服务器以及目录、数据库
  17. Mac电脑环境变量设置方法及常见环境变量说明
  18. osgEarthSamples1.1运行事例
  19. IT业界新闻资讯网站推荐
  20. android dex 加固,Dex文件加固

热门文章

  1. 电子制造业产品质量管理常见问题及解决方法
  2. Boot固化部分API函数
  3. 顺序查找(数组,顺序表,单链表C语言实现)
  4. 如何0元撸个iPhone12?
  5. 你是否了解「软件复用理论在低代码平台中的体现」?本文带你捅破这层窗户纸
  6. 流媒体播放器EasyPlayer.js播放H.265视频,无法截取快照是什么原因?
  7. html的src引用七牛的连接,页面加载出现403
  8. could not read ok from ADB Server * failed to start daemon error: cannot connect to daemon
  9. 雨花台区金叶花园“四季农时-春耕”活动
  10. 金融并购大潮下如何保护数据信息?