[计算机类试卷]国家二级C语言机试(操作题)模拟试卷161及答案与解析.doc
-
资源ID:498081
资源大小:32KB
全文页数:6页
- 资源格式: DOC
下载积分:2000积分
快捷下载

账号登录下载
微信登录下载
下载资源需要2000积分(如需开发票,请勿充值!)
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷161及答案与解析.doc
1、国家二级 C语言机试(操作题)模拟试卷 161及答案与解析 一、程序填空题 1 给定程序中,函数 fun的功能是:有 NN矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为 0。例如,若 N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 计算结果为 1 0 0 6 5 0 10 14 9 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正 确的结果。 注意:源程序存放在考生文件夹下的 BLANKl C中。 不得增行或删行,也不得更改程序的结构 ! #include #define N 4 *found* void fun(int(*t) _1
2、_) int i, j; for(i=1; i #include typedef struct aa int data ; struct aa *next ; NODE ; NODE *Creatiink(int n, int m) NODE *h=NULL, *p, *s; int i; *found* p=(NODE)malloc(sizeof(NODE); h=p; p-next=NULL; for(i=1; idata=rand() m; s-next=p- next; p-next。 s; p=p-next; *found* return p; outlink(NODE *h) NO
3、DE *p; p=h-next; printf(“ n nTHE LIST: n n HEAD“); while(P) printf(“- d”, p-data); p=p-next; printf(“ n“); main() NODE *head; head=Creatlink(8, 22); outlink(head); 三、程序设计题 3 请编写一个函数 void fun(char*tt, int pp),统计在 tt所指字符串中 a到 z 26个小写字母各自出现的次数,并依次放在 pp所指数组中。 例如,当输入字符串: abcdefgabcdeabc后,程序的输出结果应该是: 3 3
4、3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 注意:部分源程序在文件 PROGl C中。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干 语句。 #include #include void fun(char*tt, int pp) main() char aa1000; int bb26, k; void NONO(); printf(“ nPlease enter a char string: “), scanf(“ s“, aa), fun(aa, bb); for(k=0; k=a *p=z)PP*p一 a +=1: p+; 【试题解析】 进入 fun函数,根据前面的分析: 首先,因为数组 pp的每一个元素都用作计数器,因此,需要使数组 pp的每一个元素都置初值 0,通过 “for(i=0; i26; i+)ppi=0; ”来实现。 然后,用指针依次指向字符串的每一个字符直到字符串结束标志。 最后,在循环中根据 *p的值不同,将累加器中的对应元素加 1。