网站备案需要多长时间,网站域名绑定,长沙精品网站制作,湖南云网站建设1
下列叙述中正确的是
A. 循环队列是队列的链式存储结构 B. 能采用顺序存储的必定是线性结构 C. 所有的线性结构都可以采用顺序存储结构 D. 具有两个以上指针的链表必定是非线性结构 正确答案#xff1a;C C的陈述是正确的。线性结构是一种基本的数据结构#xff0c;它包括…1
下列叙述中正确的是
A. 循环队列是队列的链式存储结构 B. 能采用顺序存储的必定是线性结构 C. 所有的线性结构都可以采用顺序存储结构 D. 具有两个以上指针的链表必定是非线性结构 正确答案C C的陈述是正确的。线性结构是一种基本的数据结构它包括数组、链表、栈、队列等。所有这些线性结构都可以用顺序存储结构数组来存储这是因为顺序存储结构的主要特点是逻辑上相邻的数据元素在物理位置上也是相邻的。 至于其他选项 A.循环队列不一定是队列的链式存储结构它可以是顺序存储结构。 B.能采用顺序存储的不一定是线性结构也可以是非线性结构例如树和图。 D.具有两个以上指针的链表并不一定是非线性结构。例如双向链表就是线性结构但它有两个指针一个指向前一个节点一个指向后一个节点。 2
对软件系统总体结构图下面描述中错误的是
A. 深度等于控制的层数 B. 扇入是一个模块直接调用的其他模块数 C. 扇出是一个模块直接调用的其他模块数 D. V一定是结构图中位于叶子结点的模块 正确答案B A. 深度等于控制的层数 - 这个描述是正确的。深度是指从根节点到最远叶子节点的最长路径上的边数它代表了控制的层数。 B. 扇入是一个模块直接调用的其他模块数 - 这个描述是错误的。扇入Fan In是指有多少个模块调用了一个特定的模块即一个模块被其他模块调用的次数。 C. 扇出是一个模块直接调用的其他模块数 - 这个描述是正确的。扇出Fan Out是指一个模块直接调用了多少个其他模块。 D.这个选项我没搞懂懂的同学可以到评论区留言哦 3
若变量已正确定义并赋值则以下符合C语言语法的表达式是 。
A. aa7; B. a7bc,a C. int(12.3%4) D. aa7cb 正确答案B A. aa7; 这是一个语句而不是表达式 在C中语句用结束处的一个分号标示。例如c3这只是一个表达式它可能是一个较大语句的一个部分而c3;则是一个语句 B. a7bc,a 这个表达式也是正确的。它是一个逗号表达式其中包含两个子表达式a7bc 和 a。逗号表达式的结果是最后一个子表达式的结果所以这里的结果是a。整个表达式首先计算a7bc然后将a的值加1。 C. int(12.3%4) 这个表达式是不正确的。首先12.3%4中的12.3是一个浮点数而取模运算符%通常用于整数之间。其次即使我们忽略类型不匹配的问题int()函数并不是C语言标准库的一部分因此这种用法是错误的。 D. aa7cb C语言的赋值运算符 是一个二元运算符它将右边的值赋给左边的变量。赋值表达式的结果是所赋的值本身。这意味着你可以这样写
a (b c); // 这是合法的链式赋值将c的值赋给b然后将b的新值赋给a但是你不能将赋值表达式的结果即赋值后得到的值用作另一个赋值的左操作数。也就是说你不能在赋值表达式的左边使用赋值运算符。 每个赋值操作必须有一个独立的左操作数这个操作数必须是一个可修改的存储位置比如一个变量 在表达式 a a 7 c b; 中你尝试做的事情实际上是 首先计算 a 7。 然后计算 c b。 尝试将 c b 的结果赋给 a 7这是不合法的因为 a 7 是一个表达式而不是一个变量。 综上所述只有选项B是正确的C语言表达式。 4
给定程序MODI1.C中函数fun的功能是将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中规定第一个字符放在第0位中。
例如字符串中的数据为AABBCCDDEEFF则输出应当是ABBCDDEFF。
请改正程序中的错误使它能得出正确结果。
注意不要改动main函数不得增行或删行也不得更改程序的结构。
给定源程序
#include stdio.h
#include string.h
#define N 80
void fun(char *s, char t[])
{int i, j0;for(i0; i(int)strlen(s); i)
/***********found**********/if(__1__)t[j]s[i];
/***********found**********/__2__;
}
main()
{char s[N], t[N];printf(\nPlease enter string s : ); gets(s);fun(s, t);printf(\nThe result is : %s\n,t);
}i%2 || s[i]%20 或 i%2!0 || s[i]%20t[j]\0 或 t[j]0
字符串不要忘了最后的终止符 5
请编写函数fun函数的功能是将M行N列的二维数组中的数据按列的顺序依次放到一维数组中。
例如二维数组中的数据为
33 33 33 3344 44 44 4455 55 55 55则一维数组中的内容应该是
33 44 55 33 44 55 33 44 55 33 44 55。注意部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容仅在函数fun的花括号中填入你编写的若干语句。
给定源程序
#include stdio.h
void fun(int s[][10], int b[], int *n, int mm, int nn)
{__1__;for(j0;jnn;j)for(__2__){b[*n]__3__;__4__;}
}
main()
{int w[10][10]{{33,33,33,33},{44,44,44,44},{55,55, 55,55}},i,j;int a[100]{0}, n0;void NONO ();printf(The matrix:\n);for(i0; i3; i){for(j0;j4; j)printf(%3d,w[i][j]);printf(\n);}fun(w,a,n,3,4);printf(The A array:\n);for(i0;in;i)printf(%3d,a[i]);printf(\n\n);NONO();
}
void NONO ()
{/* 请在此函数内打开文件输入测试数据调用 fun 函数输出数据关闭文件。 */FILE *rf, *wf ; int i, j, k ;int w[10][10], a[100], n 0, mm, nn ;rf fopen(in.dat,r);wf fopen(out.dat,w);for(k 0 ; k 5 ; k) {fscanf(rf, %d %d, mm, nn);for(i 0 ; i mm ; i)for(j 0 ; j nn ; j) fscanf(rf, %d, w[i][j]);fun(w, a, n, mm, nn);for(i 0 ; i n ; i) fprintf(wf, %3d, a[i]); fprintf(wf, \n);}fclose(rf); fclose(wf);
}int i,j i0;imm;i*(*(si)j) 或者 s[i][j]*n*n1 或者 (*n)