C语言 exam
jardownload
这个作者很懒,什么都没留下…
展开
-
求高于平均分的学生学号及成绩(学号和成绩人工输入)
double find(int total, int n) { int number, score, average; scanf(”%d”, &number); if(number != 0) { scanf(”%d”, &score); average = find(total+score, n+1); if...2010-08-12 16:46:51 · 1509 阅读 · 0 评论 -
求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
int GetSubString(char *strSource, char *strResult) { int iTmp=0, iHead=0, iMax=0; for(int Index=0, iLen=0; strSource[Index]; Index++) { if(strSource[Index] >= ‘0′ && strSource[Index] ...2010-08-12 16:46:53 · 167 阅读 · 0 评论 -
、组合问题(从M个不同字符中任取N个字符的所有组合)
void find(char *source, char *result, int n) { if(n==1) { while(*source) printf(”%s%c\n”, result, *source++); } else { int i, j; for(i=0; source[i] != ...2010-08-12 16:46:53 · 137 阅读 · 0 评论 -
不开辟用于交换数据的临时空间,如何完成字符串的逆序
不开辟用于交换数据的临时空间,如何完成字符串的逆序(在技术一轮面试中,有些面试官会这样问) #include “stdafx.h” void change(char *str) { for(int i=0,j=strlen(str)-1; i...2010-08-12 16:46:53 · 166 阅读 · 0 评论 -
C/Algorithm/Data Structure/Compiler Related Questions (1)
Q: All-time Most-Popular-Question: How to reverse a single link list? (Most companies ask!) A: At least 2 popular/elegant ways to do this without using additional memory: Non-Recursive & Recursiv...2010-08-12 16:46:52 · 75 阅读 · 0 评论 -
2005年11月金山笔试题
2005年11月金山笔试题。编码完成下面的处理函数。函数将字符串中的字符'*'移到串的前部分,前面的非'*'字符后移,但不能改变非'*'字符的先后顺序,函数返回串中字符'*'的数量。如原始串为:ab**cd**e*12,处理后为*****abcde12,函数并返回值为5。(要求使用尽量少的时间和辅助空间) int change(char *str) { /* 这个算法并不高效,从后向前搜索...2010-08-12 16:46:52 · 123 阅读 · 0 评论 -
大整数数相乘的问题。(这是2002年在一考研班上遇到的算法题)
void Multiple(char A[], char B[], char C[]) { int TMP, In=0, LenA=-1, LenB=-1; while(A[++LenA] != ‘\0′); while(B[++LenB] != ‘\0′); int Index, Start = LenA + LenB - 1; for(int i=Len...2010-08-12 16:46:52 · 102 阅读 · 0 评论 -
寻找迷宫的一条出路,o:通路; X:障碍
#define MAX_SIZE 8 int H[4] = {0, 1, 0, -1}; int V[4] = {-1, 0, 1, 0}; char Maze[MAX_SIZE][MAX_SIZE] = {{'X','X','X','X','X','X','X','X'}, {'o','o','o','o',...2010-08-12 16:46:52 · 124 阅读 · 0 评论 -
分解成质因数(如435234=251*17*17*3*2,据说是华为笔试题)
void prim(int m, int n) { if(m>n) { while(m%n != 0) n++; m /= n; prim(m, n); printf(”%d*”, n); } } int main(int argc, char* argv[]) { int n = 435234;...2010-08-12 16:46:52 · 294 阅读 · 0 评论 -
实现strstr功能,即在父串中寻找子串首次出现的位置。(笔试中常让面试者实现标准库中的一些函数)...
实现strstr功能,即在父串中寻找子串首次出现的位置。(笔试中常让面试者实现标准库中的一些函数) char * strstring(char *ParentString, char *SubString) { char *pSubString, *pPareString; for(char *pTmp=ParentString; *pTmp; pTmp++) { pSubString =...2010-08-12 16:46:52 · 185 阅读 · 0 评论 -
递归实现回文判断(如:abcdedbca就是回文,判断一个面试者对递归理解的简单程序)...
int find(char *str, int n) { if(n2010-08-12 16:46:51 · 172 阅读 · 0 评论 -
歌德巴赫猜想。任何一个偶数都可以分解为两个素数之和。(其实这是个C二级考试的模拟试题)...
#include “stdafx.h” #include “math.h” int main(int argc, char* argv[]) { int Even=78, Prime1, Prime2, Tmp1, Tmp2; for(Prime1=3; Prime12010-08-12 16:46:51 · 448 阅读 · 0 评论 -
C面试题(编程)
1) 读文件file1.txt的内容(例如): 12 34 56 输出到file2.txt: 56 34 12 (逆序) 2)输出和为一个给定整数的所有组合 例如n=5 5=1+4;5=2+3(相加的数不能重复) 则输出 1,4;2,3。 第一题,注意可增长数组的应用. #include #include int main(void) { int MAX = 10; in...2010-08-12 16:46:53 · 159 阅读 · 0 评论